init new repo
This commit is contained in:
Executable
+49
@@ -0,0 +1,49 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
CONFIG="rhemawavekiosk-rpi"
|
||||
VARIANT=""
|
||||
|
||||
for arg in "$@"; do
|
||||
case "$arg" in
|
||||
--dev) CONFIG="rhemawavekiosk-rpi-dev"; VARIANT="-dev" ;;
|
||||
*) echo "Unknown arg: $arg"; exit 1 ;;
|
||||
esac
|
||||
done
|
||||
|
||||
TIMESTAMP=$(date +"%m%d%Y-%H%M")
|
||||
FILENAME="radiantwave-kiosk-rpi${VARIANT}_${TIMESTAMP}.img.zst"
|
||||
REPO="$(pwd)"
|
||||
NIX_STORE="kiosk-nix-store"
|
||||
|
||||
echo "==> Building ${CONFIG}..."
|
||||
echo "==> Output: ${REPO}/${FILENAME}"
|
||||
echo ""
|
||||
|
||||
podman volume create "${NIX_STORE}" 2>/dev/null || true
|
||||
|
||||
podman run --rm \
|
||||
-v "${REPO}:/repo" \
|
||||
-v "${NIX_STORE}:/nix/store" \
|
||||
-w /repo \
|
||||
nixos/nix:latest \
|
||||
sh -c '
|
||||
set -ex
|
||||
mkdir -p /etc/nix
|
||||
echo "experimental-features = nix-command flakes" > /etc/nix/nix.conf
|
||||
echo "accept-flake-config = true" >> /etc/nix/nix.conf
|
||||
echo "extra-substituters = https://cache.nixos.org https://nixos-raspberrypi.cachix.org" >> /etc/nix/nix.conf
|
||||
echo "extra-trusted-public-keys = nixos-raspberrypi.cachix.org-1:4iMO9LXa8BqhU+Rpg6LQKiGa2lsNh/j2oiYLNOQ5sPI=" >> /etc/nix/nix.conf
|
||||
echo "max-jobs = 4" >> /etc/nix/nix.conf
|
||||
|
||||
echo "==> Building sdImage (first run slow, cached after)..."
|
||||
nix --accept-flake-config build \
|
||||
.#nixosConfigurations.'${CONFIG}'.config.system.build.sdImage \
|
||||
--fallback \
|
||||
--print-build-logs
|
||||
|
||||
echo "==> Build complete, copying..."
|
||||
cp result/sd-image/*.img* /repo/'${FILENAME}'
|
||||
echo "==> Done: ${FILENAME}"
|
||||
ls -lh /repo/'${FILENAME}'
|
||||
'
|
||||
Reference in New Issue
Block a user