zola/docs/content/documentation/getting-started/installation.md

76 lines
1.7 KiB
Markdown
Raw Normal View History

2017-09-12 07:13:26 +00:00
+++
title = "Installation"
weight = 1
2017-09-12 07:13:26 +00:00
+++
2018-10-18 21:09:32 +00:00
Zola provides pre-built binaries for MacOS, Linux and Windows on the
[GitHub release page](https://github.com/getzola/zola/releases).
2018-11-19 22:46:49 +00:00
### macOS
2018-11-19 22:46:49 +00:00
Zola is available on [Brew](https://brew.sh):
2017-10-16 13:22:47 +00:00
```bash
2018-11-19 22:46:49 +00:00
$ brew install zola
```
### Arch Linux
Use your favourite AUR helper to install the `zola-bin` package.
2017-10-16 13:22:47 +00:00
2017-10-21 07:48:29 +00:00
```bash
2018-11-19 16:27:15 +00:00
$ yay -S zola-bin
2017-10-21 07:48:29 +00:00
```
### Snapcraft
Zola is available on snapcraft:
2017-10-16 13:22:47 +00:00
```bash
$ snap install --edge zola
2017-10-16 13:22:47 +00:00
```
## Windows
Zola is available on [Scoop](http://scoop.sh):
```bash
$ scoop install zola
```
And [Chocolatey](https://chocolatey.org/):
2018-09-18 10:13:00 +00:00
```bash
$ choco install zola
```
## From source
To build it from source, you will need to have Git, [Rust (at least 1.30) and Cargo](https://www.rust-lang.org/)
installed. You will also need additional dependencies to compile [libsass](https://github.com/sass/libsass):
- OSX, Linux and other Unix: `make` (`gmake` on BSDs), `g++`, `libssl-dev`
- NixOS: Create a `shell.nix` file in the root of the cloned project with the following contents:
```nix
with import <nixpkgs> {};
pkgs.mkShell {
buildInputs = [
libsass
openssl
pkgconfig
];
}
```
- Then invoke `nix-shell`. This opens a shell with the above dependencies. You then run `cargo build --release` to build the project.
- Windows (a bit trickier): updated `MSVC` and overall updated VS installation
From a terminal, you can now run the following command:
```bash
$ cargo build --release
```
The binary will be available in the `target/release` folder. You can move it in your `$PATH` to have the
`zola` command available globally or in a directory if you want for example to have the binary in the
same repository as the site.