import { Callout } from 'nextra/components' # Installation The preferred way of installing Lune is using [Aftman](https://github.com/lpghatguy/aftman). Install Aftman, and run this command in your terminal to add `lune` to an `aftman.toml` file in the current directory, or create one if it does not exist: ```sh copy filename="Bash" aftman add lune-org/lune ``` ## Other Installation Options
Using GitHub Releases You can download pre-built binaries for most systems directly from the [GitHub Releases](https://github.com/lune-org/lune/releases) page.
There are many tools that can install binaries directly from releases, and it is up to you to choose what tool to use when installing here.
Community-maintained ### Scoop Windows users can use [Scoop](https://scoop.sh) to install Lune. ```ps copy filename="PowerShell" # Add the bucket scoop bucket add lune https://github.com/CompeyDev/lune-packaging.git # Install the package scoop install lune ``` ### Homebrew macOS and Linux users can use [Homebrew](https://brew.sh) to install Lune. ```sh copy filename="Bash" # Installs latest stable precompiled binary brew install lune ``` ***or*** ```sh copy filename="Bash" # Builds from latest stable source brew install lune --build-from-source ``` ### APT APT is a package manager for Debian-based Linux distributions that uses `dpkg` to install packages.
Follow the instructions at the unofficial [lune-packaging](https://github.com/CompeyDev/lune-packaging#apt) repository to install Lune using APT. The APT repository is hosted by the community and is not endorsed by or affiliated with Lune. ### AppImage AppImages are platform independent sandboxed binaries that work out of the box.
Go to the [GitHub Actions Page](https://github.com/CompeyDev/lune-packaging/actions/workflows/appimage.yaml), and download the artifact suitable for your architecture from the build artifacts. ### AUR (Arch User Repository) There are a number of packages available on the AUR: - `lune` - Builds from the latest stable release source. - `lune-git` - Builds from the latest commit in the repo; unstable. - `lune-bin` - Installs a precompiled binary from GitHub Release artifacts. These can be installed with your preferred AUR package manager as such: ```sh copy filename="Bash" paru -S [PACKAGE_NAME] ``` ***or*** ```sh copy filename="Bash" yay -S [PACKAGE_NAME] ``` Only one of these AUR packages must be installed at a time in order to prevent conflicts. ### Nix macOS* and Linux users can use [Nix](https://nixos.org/) to install Lune. *the macOS build is currently broken. Help is wanted debugging [it](https://github.com/NixOS/nixpkgs/blob/36f9963ac7ea0a471c1d408e90edec093a819d83/pkgs/development/interpreters/lune/default.nix).
Imperatively
**NixOS** ```sh copy filename="Bash" nix-env -iA nixos.lune ``` **Non NixOS** ```sh copy filename="Bash" nix-env -iA nixpkgs.lune # If you are using flakes nix profile install nixpkgs#lune ```
Declaratively
**With [home-manager](https://github.com/nix-community/home-manager)** ```nix copy filename="nix" home.packages = with pkgs; [ lune ]; ``` **system-wide NixOS configuration** ```nix copy filename="nix" enviroment.systemPackages = with pkgs; [ lune ]; ```
Temporarily
You can temporarily use Lune in your shell. You can use this to try out Lune before deciding to permanently install it. ```sh copy filename="Bash" nix-shell -p lune ```
crates.io ### Building from source Building and installing from source requires the latest version of [Rust & Cargo](https://doc.rust-lang.org/cargo/getting-started/installation.html) to be installed on your system.
Once installed, run the following command in your terminal: ```sh copy filename="Bash" cargo install lune --locked ``` ### Binstall [`cargo binstall`](https://github.com/cargo-bins/cargo-binstall) provides a simple mechanism for installing rust binaries from crates.io, without compiling from source unlike `cargo install`. Lune is packaged in a `binstall` compatible way. With `binstall` installed and in your path, run: ```sh copy filename="Bash" cargo binstall lune ```
## Next Steps Congratulations! You've installed Lune and are now ready to write your first script. - If you want to write standalone scripts, head over to the [Introduction](./2-introduction/1-hello-lune.md) section. - If you want to write Lune scripts specifically for Roblox, check out the [Roblox](../roblox/1-introduction.md) section.