Both projects live in the same Homebrew tap, so tapping it once covers Ghost, Lumen, and anything else the project ships later.
$ brew tap ghost-language/tapThe language itself: the interpreter, the REPL, and the standard library.
$ brew install --cask ghost-language/tap/ghostUpgrade later with brew upgrade --cask ghost. Read the docs.
The 2D game engine for Ghost. Ghost is built into it, so a game needs nothing else.
$ brew install --cask ghost-language/tap/lumenUpgrade later with brew upgrade --cask lumen. Read the docs.
Homebrew asks you to trust a tap outside its own before it will load anything from it. Trusting this one covers every cask in it, now and later:
$ brew trust --tap ghost-language/tapBoth are casks rather than formulae, because both ship pre-built binaries rather than building from source, which is what Homebrew asks a cask to be used for. Casks are macOS-only; on Linux and Windows, take the archives below.
Every build attached to the latest release, straight from GitHub. Your platform is picked for you where the browser will say what it is.
The language itself: the interpreter, the REPL, and the standard library.
Downloaded by hand rather than through Homebrew, the archive is quarantined by macOS and the first run is refused. Clear it with xattr -dr com.apple.quarantine ghost, or install the cask above, which does it for you.
Verify a download against checksums.txt.
The 2D game engine for Ghost. Ghost is built into it, so a game needs nothing else.
SDL2 travels inside the archive, so there is nothing else to install. Downloaded by hand rather than through Homebrew it is quarantined by macOS; clear it with xattr -dr com.apple.quarantine on the unpacked folder.
Verify a download against checksums.txt.
Ghost is a Go program, and builds with nothing but a Go toolchain.
$ go install ghostlang.org/x/ghostGhost builds with make. Lumen links SDL2 through cgo, so it needs the SDL development libraries first. See Lumen’s getting started guide.
$ git clone https://github.com/ghost-language/ghost$ cd ghost$ make