diff options
author | Soispha <soispha@vhack.eu> | 2023-04-15 14:24:06 +0200 |
---|---|---|
committer | Soispha <soispha@vhack.eu> | 2023-05-09 19:30:38 +0200 |
commit | 2ea7ba5c2b166c3f04caa30b578040865b4286d9 (patch) | |
tree | 2db55e6f87adea10c8c7d1c2a9623d705ce075c6 /home-manager/packages | |
parent | Fix(hm/conf/mail): Use correct smtp & imap domains (diff) | |
download | nixos-config-2ea7ba5c2b166c3f04caa30b578040865b4286d9.tar.gz nixos-config-2ea7ba5c2b166c3f04caa30b578040865b4286d9.zip |
Feat(hm/pkgs/scritps/update): Add branch selection
Diffstat (limited to '')
-rwxr-xr-x | home-manager/packages/scripts/small_functions/update | 37 |
1 files changed, 34 insertions, 3 deletions
diff --git a/home-manager/packages/scripts/small_functions/update b/home-manager/packages/scripts/small_functions/update index 858dae7c..7b7b2e01 100755 --- a/home-manager/packages/scripts/small_functions/update +++ b/home-manager/packages/scripts/small_functions/update @@ -3,8 +3,39 @@ # shellcheck source=/dev/null . %SHELL_LIBRARY_PATH -cd /etc/nixos -git pull --rebase -nixos-rebuild switch +help() { + cat << EOF + --branch | -b [branchname] select a branch to update from. + --help | -h output this help. +EOF + exit "$1"; +} + +BRANCH=""; +while [ "$#" -gt 0 ];do + case "$1" in + "--help" | "-h") + help 0; + ;; + "--branch" | "-b") + if [ -n "$2" ];then + BRANCH="$2"; + else + error "$1 requires an argument"; + help 1; + fi + shift 2; + ;; + *) + error "the option $1 does not exist!"; + help 1; + ;; + esac +done + +cd /etc/nixos || die "No /etc/nixos" +[ "$BRANCH" = "" ] || git switch "$BRANCH"; +git pull --rebase +nixos-rebuild switch |