toltecmk
is a Python tool used to build software packages for the Toltec repository from PKGBUILD-like build recipes.
It automates common tasks such as fetching sources, building artifacts in a reproducible environment, and creating Opkg-compatible archives.
Disclaimer: This is beta-quality software. The recipe format may change at any time in future releases. If you use toltecmk
in other projects, it is advised to pin to a specific version.
toltecmk
is available as a Python package on PyPI.
pip install toltecmk
There are a few system requirements to use this tool:
- Linux-based operating system
- Python ⩾ 3.11
- Docker
To build a recipe located in the current directory, simply run:
toltecmk
This will process the recipe in a subfolder called build
(which can be adjusted using the --work-dir
flag) and generate packages in a subfolder called dist
(--dist-dir
flag).
- Tutorials and resources
- Reference
Many other build tools exist today for creating software packages, each major distribution having invented its own recipe and package formats.
Some important ones are listed below.
toltecmk
itself uses an Arch Linux-style recipe format to build Debian-style packages.
Name | Used by | Recipe format | Package format |
---|---|---|---|
Debian-style | |||
debhelper | Debian, Ubuntu, and others | Source packages (Makefiles) | deb |
OpenWrt SDK | OpenWrt, Entware | Source packages (Makefiles) | ipk |
Fedora-style | |||
rpmbuild | Fedora, openSUSE, and others | spec (DSL) | rpm |
Arch Linux-style | |||
makepkg | Arch Linux and others | PKGBUILD (Bash scripts) | pkg.tar.zst |
abuild | Alpine Linux | APKBUILD (Bash scripts) | apk |
Others | |||
nix-build | NixOS | Expressions (DSL) | nar |
ebuild | Gentoo | ebuild (Bash scripts) | tbz2 |