Files
nixos/scripts/codex-setup.sh
T

37 lines
1.1 KiB
Bash

#!/usr/bin/env bash
set -euo pipefail
export NIX_CONFIG="${NIX_CONFIG:-}
experimental-features = nix-command flakes
accept-flake-config = false
warn-dirty = false
"
if ! command -v nix >/dev/null 2>&1; then
echo "Installing Nix in single-user mode..."
sh <(curl -L https://nixos.org/nix/install) --no-daemon
# shellcheck disable=SC1090
. "$HOME/.nix-profile/etc/profile.d/nix.sh"
fi
mkdir -p "$HOME/.config/nix"
cat > "$HOME/.config/nix/nix.conf" <<'EOF'
experimental-features = nix-command flakes
accept-flake-config = false
warn-dirty = false
EOF
echo "Nix version:"
nix --version
echo "Available NixOS hosts:"
nix eval --json --no-accept-flake-config .#nixosConfigurations --apply builtins.attrNames | jq -r '.[]'
echo "Evaluating all host toplevel derivations..."
for host in $(nix eval --json --no-accept-flake-config .#nixosConfigurations --apply builtins.attrNames | jq -r '.[]'); do
echo "==> Evaluating $host"
nix eval --raw --no-accept-flake-config ".#nixosConfigurations.${host}.config.system.build.toplevel.drvPath"
done
echo "Codex setup complete."