SourceBuild
An overview on building from source is available in the Documentation page. This page contains a more detailed and considered approach for those interested.
Source builds are tested on both Debian and Alpine, meaning en should compile and run on both glibc and musl systems.
Dependencies
A Rust toolchain is required to build en itself and can be installed through rustup.
For compiling en dependencies, you will also need a C toolchain: a compiler and a libc (e.g. gcc + glibc or clang + musl), which may already be installed on your system.
For the two tested systems, all you need are the following packages:
| Distribution | Needed packages |
|---|---|
| Debian | gcc libc6-dev |
| Alpine | clang |
You may also need curl, git and ca-certificates depending on how you will fetch the source code.
Building from a Git clone
Aside from the cargo install approach described in Documentation, you can alternatively fetch the code yourself using Git, which allows you to inspect and change it before compiling:
git clone -b v0.4.0-alpha --single-branch https://codeberg.org/jutty/en cd en cargo build --locked --release
In this case, the en binary will be in target/release/en.
Runnable examples
You can find the exact commands used to test installation on both systems in the containers directory of the en source repository.