This repository contains the Debian package to build Liquorix for both Debian and Ubuntu, and scripts for Debian, Ubuntu, and Arch Linux.
The following software must be installed.
- Docker
- GnuPG
GnuPG must be configured with a default-key line defined in ~/.gnupg/gpg.conf. Consult the GnuPG manual for more information if you're unsure what to put here. But if you're creating a temporary signing key for the purposes of building, follow these steps:
- Execute
gpg --full-gen-keyand follow prompts - Run
gpg --list-secret-keysto produce a list of keys you own the secrets to - Create
~/.gnupg/gpg.confand adddefault-key EXAMPLE1234..., where the example is your key from the previous output
Run make or make help to see all available targets and their current variable defaults:
makeVariables can be overridden on the command line:
PROCS— number of parallel jobs (default:nproc/2, minimum 2)BUILD— build number (default:1)DISTRO— distribution name (e.g.ubuntu,debian) — required for per-release targetsRELEASE— release codename (e.g.resolute,trixie) — required for per-release targets
Before any builds can be executed, the prepared Docker images must be bootstrapped. To bootstrap Debian images:
make bootstrap-debianFor Arch Linux:
make bootstrap-archSubsequent runs will update the existing images rather than performing a full build.
Build all Debian source packages:
make build-source-allBuild all Debian binary packages:
make build-binary-debianBuild the Arch Linux binary package:
make build-binary-archTo build for a single release, use the per-release targets with DISTRO and RELEASE:
make build-source DISTRO=ubuntu RELEASE=resolute
make build-binary DISTRO=ubuntu RELEASE=resoluteIf the build completes successfully, Debian packages will be found under artifacts/debian/<release>.
At this time, only AMD64 is supported and is the only architecture that will build successfully.
If you run into trouble with errors for signing or don't desire signed packages, look for instances in the scripts folder of dpkg-buildpackage and add the --no-sign flag to all lines.
If signing is desired, make sure to update the changelog with dch -i --auto-nmu and set the author to match your signing key you set up with GnuPG.
Remove all Liquorix Docker build images:
make cleanPRs accepted.