30 lines
690 B
Bash
30 lines
690 B
Bash
![]() |
#!/usr/bin/env bash
|
||
|
set -uo pipefail
|
||
|
|
||
|
cd $(dirname "$0")
|
||
|
|
||
|
# setup defaults
|
||
|
config=${config:-jeremys-mbp}
|
||
|
extraOpts=()
|
||
|
# we need to select the correct configuration item via argument.
|
||
|
while [ $# -gt 0 ]; do
|
||
|
i=$1; shift 1
|
||
|
case $i in
|
||
|
--config)
|
||
|
if [ $# -lt 1 ]; then
|
||
|
echo "$0: '$i' requires an argument"
|
||
|
exit 1
|
||
|
fi
|
||
|
config="$1"; shift 1
|
||
|
;;
|
||
|
--show-trace)
|
||
|
extraOpts+=("$1")
|
||
|
esac
|
||
|
done
|
||
|
|
||
|
# Build the system configuration
|
||
|
nix --experimental-features "nix-command flakes" \
|
||
|
build --show-trace ./nix/darwin#darwinConfigurations.${config}.system
|
||
|
|
||
|
# move to profile and activate it
|
||
|
darwin-rebuild --show-trace build ./nix/darwin#${config}
|