Uses new Rust 2021
|0.1.6||Oct 20, 2022|
|0.1.5||Oct 5, 2022|
|0.1.1||Sep 30, 2022|
#132 in Build Utils
Andaman is a package build toolchain written in Rust. It is designed to simplify building various types of packages.
It is inspired by
umpkg and aims to be a more modern and flexible alternative. It is also designed for monorepos in mind, so you can define multiple projects with multiple package formats in a single repository.
How it works
Andaman is simply a meta-build system that calls upon other build systems to build and distribute packages. It works by reading a project manifest in
anda.hcl and then calling the appropriate build system to build the package.
- Building RPMs
- Building Docker/Podman/OCI images
- Building Flatpak packages
How we use it at Fyra Labs
We use Andaman to quickly build packages for our distributions, Ultramarine Linux and tauOS. The artifacts generated by Andaman are then sent to Subatomic, our compose and repository manager.
The Andaman project has gone through many forms. We initially wrote Andaman as a custom RPM frontend as an alternative to DNF that is similar to that of an AUR helper. However, there were issues with rust and RPM support and we decided to move to a more general CI server based on BuildKit. This however turned into a massive feature creep of projects and so we decided to simply write a build system that can build artifacts for various package formats.