diff --git a/docs/installation.md b/docs/installation.md index 75573a89a..2e860f455 100644 --- a/docs/installation.md +++ b/docs/installation.md @@ -20,6 +20,69 @@ You can also spin up one of our pre-configured Cloud-based dev environments: Have a look at the [Lingua Franca playground](https://github.com/lf-lang/playground-lingua-franca) for more details. +## Compiler + +There are multiple options available for installing the Lingua Franca compiler and other command line tools, as listed below. See the [handbook](./tools/command-line-tools.mdx) for usage instructions. + +### Install Script + +Run the following command in your terminal to install the latest release (on Windows, use WSL): + +``` +curl -Ls https://install.lf-lang.org | bash -s cli +``` + +You can also install the nightly pre-release: + +``` +curl -Ls https://install.lf-lang.org | bash -s cli nightly +``` + +You can use the `--prefix=` argument to change the default install location. + +### AUR + +There are binary packages available in the Arch user repository, which you can install using your favorite AUR helper. For instance, with `yay`: + +``` +yay -S lf-cli-bin +``` + +or for the nightly pre-release: + +``` +yay -S lf-cli-nightly-bin +``` + +### Nixos + +LFC is packaged in [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-23.11/pkgs/development/compilers/lingua-franca/default.nix#L28) and is available via the binary cache. + +Run +``` + nix shell nixpkgs#lingua-franca +``` +to temporarily install lfc in your current shell environment. + +### Manual Download + +Regular and nightly release builds of the command line tools can be downloaded from the [Lingua Franca release page](https://github.com/lf-lang/lingua-franca/releases). Download the archive that matches your OS and architecture, and extract the contents. + +### From Source + +Please refer to the [Lingua Franca GitHub repository](https://github.com/lf-lang/lingua-franca) for build instructions. + +If you'd like to contribute to Lingua Franca, you can find details about the recommended developer setup here. + +## Lingo the Lingua-Franca Package-Manager + +Lingo is the package-manager and build tool of the lingua-franca ecosystem. + +``` + cargo install lingua-franca + PATH = $PATH:~/.cargo/bin +``` + ## Visual Studio Code Our Visual Studio Code extension can be installed via the Marketplace or built from source, as detailed below. See the [handbook](./tools/code-extension.mdx) for usage instructions. @@ -99,56 +162,86 @@ open -a Epoch.app Please refer to the [Epoch GitHub repository](https://github.com/lf-lang/epoch) for build instructions. -## CLI Tools -There are multiple options available for installing the Lingua Franca compiler and other command line tools, as listed below. See the [handbook](./tools/command-line-tools.mdx) for usage instructions. + + +## Visual Studio Code + +Our Visual Studio Code extension can be installed via the Marketplace or built from source, as detailed below. See the [handbook](./tools/code-extension.mdx) for usage instructions. + +### Marketplace + +The Lingua Franca extension is available on the [Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=lf-lang.vscode-lingua-franca) and the [VSX Registry](https://open-vsx.org/extension/lf-lang/vscode-lingua-franca). To install the extension, open VS Code, launch Quick Open (Ctrl + P) and enter: + +``` +ext install lf-lang.vscode-lingua-franca +``` + +Alternatively, you can run the following command in your terminal: + +``` +code --install-extension lf-lang.vscode-lingua-franca +``` + +To use the nightly pre-release of the extension instead of the latest release, find the Lingua Franca extension in the Extensions tab and click on the "Switch to Pre-Release Version" button. + +### From Source + +Please refer to the [Lingua Franca VS Code GitHub repository](https://github.com/lf-lang/vscode-lingua-franca) for build instructions. + +## Epoch IDE + +There are multiple options available for installing Epoch as listed below. See the handbook for usage instructions. ### Install Script Run the following command in your terminal to install the latest release (on Windows, use WSL): ``` -curl -Ls https://install.lf-lang.org | bash -s cli +curl -Ls https://install.lf-lang.org | bash -s epoch ``` You can also install the nightly pre-release: - ``` -curl -Ls https://install.lf-lang.org | bash -s cli nightly +curl -Ls https://install.lf-lang.org | bash -s epoch nightly ``` You can use the `--prefix=` argument to change the default install location. +The default prefix is `/usr/local/bin` on a Mac and `~/.local/bin` on Linux and WSL. You may not have write access to this directory by default, in which case, if you still want to use the default prefix, you can replace `sh` with `sudo sh` in the above commands. + ### AUR There are binary packages available in the Arch user repository, which you can install using your favorite AUR helper. For instance, with `yay`: ``` -yay -S lf-cli-bin +yay -S epoch-bin ``` or for the nightly pre-release: ``` -yay -S lf-cli-nightly-bin +yay -S epoch-nightly-bin ``` -### Nixos +### Manual Download -LFC is packaged in [nixpkgs](https://github.com/NixOS/nixpkgs/blob/nixos-23.11/pkgs/development/compilers/lingua-franca/default.nix#L28) and is available via the binary cache. +Regular and nightly release builds of Epoch can be downloaded from the [Epoch release page](https://github.com/lf-lang/epoch/releases). Download the archive that matches your OS and architecture, and extract the contents. + +MacOS requires extra steps before being able to execute the app: -Run ``` - nix shell nixpkgs#lingua-franca +xattr -cr Epoch.app ``` -to temporarily install lfc in your current shell environment. -### Manual Download +To install, drag the Epoch.app file to your Applications folder. You can then invoke the app as follows: -Regular and nightly release builds of the command line tools can be downloaded from the [Lingua Franca release page](https://github.com/lf-lang/lingua-franca/releases). Download the archive that matches your OS and architecture, and extract the contents. +``` +open -a Epoch.app +``` ### From Source -Please refer to the [Lingua Franca GitHub repository](https://github.com/lf-lang/lingua-franca) for build instructions. +Please refer to the [Epoch GitHub repository](https://github.com/lf-lang/epoch) for build instructions. + -If you'd like to contribute to Lingua Franca, you can find details about the recommended developer setup here.