diff --git a/modules/nix-tools/rebuild.nix b/modules/nix-tools/rebuild.nix index 1b98904..7ce2735 100644 --- a/modules/nix-tools/rebuild.nix +++ b/modules/nix-tools/rebuild.nix @@ -3,7 +3,19 @@ flake.modules.homeManager.rebuild = { pkgs, lib, config, ... }: let + flakeDir = config.homeManagerFlakeDir; + echoCmd = lib.getExe' pkgs.coreutils "echo"; hostnameCmd = "$(${lib.getExe pkgs.hostname} -s)"; + nhms = (pkgs.writeShellScriptBin "nhms" '' + HOSTNAME=${hostnameCmd} + ${echoCmd} "Switching to the $HOSTNAME home-manager profile" + ${lib.getExe pkgs.home-manager} switch --impure --flake ${flakeDir}#$HOSTNAME + ''); + nfs = (pkgs.writeShellScriptBin "nfs" '' + HOSTNAME=${hostnameCmd} + ${echoCmd} "Switching to the $HOSTNAME nixos profile" + sudo ${lib.getExe pkgs.nixos-rebuild} switch --impure --flake ${flakeDir}#$HOSTNAME + ''); in { options = { @@ -21,11 +33,10 @@ config = let nixBin = lib.getExe pkgs.nix; - flakeDir = config.homeManagerFlakeDir; in { home.activation.printFlakeDir = lib.hm.dag.entryAfter ["writeBoundary"] '' - run echo "Home Manager flake directory: ${flakeDir}" + run ${echoCmd} "Home Manager flake directory: ${flakeDir}" ''; home.packages = with pkgs; [ @@ -34,9 +45,6 @@ # # Flake-Parts checks # - (writeShellScriptBin "flake-parts-test" '' - echo "Test ${flakeDir}" - '') (writeShellScriptBin "flake-parts-check" '' cd ${flakeDir} ${nixBin} run "${flakeDir}#write-flake" @@ -46,29 +54,20 @@ # # Home-Manager rebuilds # - (writeShellScriptBin "nhms" '' - HOSTNAME=${hostnameCmd} - echo "Switching to the $HOSTNAME home-manager profile" - ${lib.getExe home-manager} switch --impure --flake ${flakeDir}#$HOSTNAME - '') + nhms (writeShellScriptBin "nhmu" '' ${nixBin} flake update --flake ${flakeDir} - nhms + ${lib.getExe nhms} '') # # NixOS rebuilds # - (writeShellScriptBin "nfs" '' - HOSTNAME=${hostnameCmd} - echo "Switching to the $HOSTNAME nixos profile" - sudo ${lib.getExe nixos-rebuild} switch --impure --flake ${flakeDir}#$HOSTNAME - '') + nfs (writeShellScriptBin "nfsu" '' - HOSTNAME=${hostnameCmd} ${nixBin} flake update --impure --flake ${flakeDir} ${lib.getExe git} -C ${flakeDir} add ${flakeDir}/flake.lock > /dev/null 2>&1 - sudo ${lib.getExe nixos-rebuild} switch --impure --flake ${flakeDir}#$HOSTNAME + ${lib.getExe nfs} '') ]; };