Guidelines for how this repo is done
README.md |
Guidelines
- Scripts must use
set -euo pipefail
- All work should be done in a temporary directory (
mktemp -d
) - Currently, only amd64 will be supported
- Must exit if the program is already up-to-date
Building
- The directory for built programs is specified with the
COMPILED_DIR
environment variable, falling back to/compiled
- Built programs should be
.tar.zst
files placed in$COMPILED_DIR/[package name]/
- The archives should not contain a parent directory.
- Built programs should be
- Programs should be built on Debian, unless there's a specific reason not to.
- There should be a
build
branch for building the program. - Versions
- Old versions of the package should be removed
- A file at
$COMPILED_DIR/[package name]/version
should contain the current version - There should be a symlink from
[package name].tar.zst
to the current version
Packaging
- The directory for built packages is specified with the
PACKAGES_DIR
environment variable, falling back to/packages
- They should be placed in
$PACKAGES_DIR/[package name]/
- They should be placed in
- Packages should be built on the distro they're for, unless there's a specific reason not to.
- There should be a branch named after a distro for each distro it's for, e.g.
fedora
for Fedora.
For an example, see polycat.