-
Notifications
You must be signed in to change notification settings - Fork 0
Building
Ktisis uses Nix (the CI uses the Lix fork but Nix should work) for building itself and its Docker images.
All build dependencies are managed by Nix. The Nixpkgs repository that holds the dependencies is version pinned. To update this pin to the latest commit, run:
nix-shell --run "npins update"
in the source root directory. This will update the npins/sources.json
file.
If any NuGet packages are changed within the projects, the dependency lock file must be updated otherwise Nix builds will fail.
To update the lock file, run:
nix-build -A fetch-deps
./result
within the directory of the project where the dependencies were changed. This will update the projects deps.json
file.
Building the Processor and Receiver is as simple as:
nix-build Ktisis.Processor/docker.nix Ktisis.Receiver/docker.nix
This will create two symbolic links named result
and result-2
. These are symbolic links to the built Docker images which can be loaded into Docker with:
docker load < result
docker load < result-2