nixconf/packages/sysupdate/default.nix
2024-01-22 23:05:30 -05:00

29 lines
597 B
Nix

{
pkgs,
...
}:
pkgs.writeShellApplication {
name = "sysupdate";
runtimeInputs = with pkgs; [
nix-output-monitor nixos-rebuild home-manager
];
text = ''
NIXCONF="''${NIXCONF:-/etc/nixos}"
echo Building config from flake at: "$NIXCONF" 1>&2
if [[ "''${1:-}" == "home" ]]; then
home-manager switch -L --flake "$NIXCONF" |& nom
exit $?
fi
if [ "$EUID" -ne 0 ]; then
echo Please rerun as root. 1>&2
exit 1
else
nixos-rebuild switch --log-format internal-json -v --flake "$NIXCONF" |& nom --json && \
exit $?
fi
'';
}