60 lines
1.1 KiB
Bash
Executable File
60 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
set -Exo pipefail
|
|
|
|
err=0
|
|
|
|
set_error () {
|
|
err=1
|
|
}
|
|
|
|
trap set_error ERR
|
|
|
|
system="$(nix eval --impure --raw --expr 'builtins.currentSystem')"
|
|
|
|
|
|
run_builds () {
|
|
for i in "$@" ; do
|
|
# nix-fast-build --eval-workers 1 --no-nom --skip-cache --attic-cache main -f "$i"
|
|
# sure let's waste bandwidth becuase nix-fast-build uses an ungodly amount of memory for some reason
|
|
nix build --no-link "$i"
|
|
done
|
|
}
|
|
|
|
build_systems () {
|
|
case "$system" in
|
|
x86_64-linux) run_builds \
|
|
.\#nixosConfigurations.nullbox.config.system.build.toplevel \
|
|
.\#nixosConfigurations.slab.config.system.build.toplevel \
|
|
.\#nixosConfigurations.nixos-wsl.config.system.build.toplevel \
|
|
;;
|
|
|
|
aarch64-linux) run_builds \
|
|
.\#nixosConfigurations.rpi4.config.system.build.toplevel \
|
|
;;
|
|
esac
|
|
}
|
|
|
|
build_packages () {
|
|
run_builds .\#packages."${system}".redlib
|
|
}
|
|
|
|
|
|
if [[ "$#" -ne 0 ]] ; then
|
|
until [[ "$#" -le 0 ]]; do
|
|
case "$1" in
|
|
pkgs|packages) DO_PACKAGES=1;;
|
|
config) DO_CONFIG=1;;
|
|
esac
|
|
shift
|
|
done
|
|
else
|
|
DO_PACKAGES=1
|
|
DO_CONFIG=1
|
|
fi
|
|
|
|
if [[ -n "${DO_CONFIG:+x}" ]] ; then build_systems; fi
|
|
if [[ -n "${DO_PACKAGES:+x}" ]] ; then build_packages; fi
|
|
|
|
exit $err
|