CentOS Alternative AlmaLinux Open Sources Its Build System ALBS
CentOS Alternative AlmaLinux Open Sources Its Build System ALBS.
AlmaLinux has open sourced its build system ALBS (AlmaLinux Build System), which is used to build the recently released AlmaLinux 8.6 and AlmaLinux 9.0, supporting all architectures, including x86_64, aarch64 and ppc64le .
AlmaLinux is an open source, community-driven project compiled from the source code of Red Hat Enterprise Linux (RHEL).
AlmaLinux is fully binary compatible with RHEL 8, built by the creators of CloudLinux OS.
The AlmaLinux team promises to provide the AlmaLinux operating system for free forever, and the project will be permanently open source without any restrictions or charges, and will be supported until 2029.
The AlmaLinux team said that open-sourcing its build system is to increase the transparency of the project and let the public know more details about building packages, as well as what is currently being built, build logs, and more.
In addition, AlmaLinux developers hope that open source ALBS will drive greater collaboration and contribution from the community.
The following diagram shows the ALBS workflow:
- The Master Service of Build System interacts with UI & CLI tools through API interface.
- The Build Node sends requests to the Master Service and receives Build Tasks, which then build the package. After the build is complete, these packages are saved to Artifact Storage .
- The Test System sends requests and receives Test Tasks (builds) to test buildpacks from Artefact Storage. The Test System tests packages through Test Nodes (such as Docker or OpenNebula with different architectures) and sends test artifacts or test logs and reports back to Artifact Storage.
- The signing server sends requests and receives signing tasks to sign packages with PGP keys.
- Release System sends requests and receives release tasks to upload signed packages to public repositories.
- The Git server sends updates to the Master Service via the API. It is done with the help of two services: gitea-listener and git-cacher.
AlmaLinux has hosted the ALBS code on GitHub , and has also opened up a build system that supports anonymous, read-only access to their actual deployment: https://build.almalinux.org/
The AlmaLinux team also announced that they are working to add SBOM support to package builds through CodeNotary integration and the RBAC system, giving more maintainers and contributors access to their build systems to build packages.
The AlmaLinux team hopes to complete both in July. Meanwhile, outside of AlmaLinux’s ALBS, they are working on COPR support, automated VM and container image build/release, and organization/SIG namespaces in the build system.