From f93908c43fc0d67ac42fb37793004f694f9051ff Mon Sep 17 00:00:00 2001 From: Greg Hellings Date: Tue, 10 Jun 2025 14:56:59 -0500 Subject: [PATCH] Devolve home-manager separately --- darwin/baseline.nix | 4 ++++ home/default.nix | 2 +- hosts/genesis/networking/dhcp.nix | 2 +- pkgs/hms/hms.sh | 37 ++++++++++++++++++++++++++----- 4 files changed, 37 insertions(+), 8 deletions(-) diff --git a/darwin/baseline.nix b/darwin/baseline.nix index 330d4be..e6bb11e 100644 --- a/darwin/baseline.nix +++ b/darwin/baseline.nix @@ -4,6 +4,10 @@ ... }: { + environment.systemPackages = with pkgs; [ + hms + ]; + fonts.packages = with pkgs; [ dejavu_fonts nerd-fonts.hack diff --git a/home/default.nix b/home/default.nix index 6595fdf..cc4db7b 100644 --- a/home/default.nix +++ b/home/default.nix @@ -34,5 +34,5 @@ let }; in { - inherit ivr; + "MacBook-Pro.local" = ivr; } diff --git a/hosts/genesis/networking/dhcp.nix b/hosts/genesis/networking/dhcp.nix index 630f4ec..63bb46f 100644 --- a/hosts/genesis/networking/dhcp.nix +++ b/hosts/genesis/networking/dhcp.nix @@ -103,7 +103,7 @@ } { hw-address = "c8:4b:d6:ca:20:8f"; - ip-address = "10.42.1.10"; # Jude - but maybe through the monitor? + ip-address = "10.42.1.10"; # The monitor } { hw-address = "04:7c:16:d5:60:6f"; diff --git a/pkgs/hms/hms.sh b/pkgs/hms/hms.sh index f1787de..41086a6 100644 --- a/pkgs/hms/hms.sh +++ b/pkgs/hms/hms.sh @@ -1,13 +1,38 @@ # vim: set ft=bash: -# Build different targets with GUI or not + +set -ex -o pipefail # Build and switch -user="$(whoami)" -src="${HOME}/.config/nix" -echo "Building ${user}" +system="$(uname -s)" + +# Determine where the Flake is +if [ "$system" == "Darwin" ]; then + try_src="/etc/nix-darwin" +else + try_src="/etc/nixos" +fi +if [ -d "$try_src" ]; then + src="$try_src" + target="$(hostname)" +else + src="$HOME/.config/nix" + target="$(whoami)" +fi + +# Find the hostname +echo "Building user for ${target}" + +# Build the system dest=$(mktemp -d) +trap cleanup 1 2 3 6 15 + +function cleanup { + echo "Cleaning up" + rm -r "${dest}" + exit +} + pushd "${dest}" > /dev/null -nom build "${src}#homeConfigurations.\"${user}\".activationPackage" +nom build "${src}#homeConfigurations.\"${target}\".activationPackage" ./result/activate popd > /dev/null -rm -r "${dest}"