fix only first of multiple consecutive updates being applied
This commit is contained in:
parent
a44fd5e362
commit
173380598e
@ -18,11 +18,9 @@
|
|||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
''
|
''
|
||||||
#!/usr/bin/env bash
|
do_update() {
|
||||||
set -e
|
|
||||||
|
|
||||||
hostname=$(${hostname})
|
hostname=$(${hostname})
|
||||||
new_system=$(nix build --no-link --print-out-paths "${cfg.flake}#nixosConfigurations.''${hostname}.config.system.build.toplevel")
|
new_system=$(nix build --refresh --no-link --print-out-paths "${cfg.flake}#nixosConfigurations.''${hostname}.config.system.build.toplevel")
|
||||||
|
|
||||||
last_flake_update_time() {
|
last_flake_update_time() {
|
||||||
nix flake metadata --refresh --json "$1" | ${jq} .lastModified
|
nix flake metadata --refresh --json "$1" | ${jq} .lastModified
|
||||||
@ -106,7 +104,7 @@
|
|||||||
echo "last system update: $(${date} -d @"$system_update_time")"
|
echo "last system update: $(${date} -d @"$system_update_time")"
|
||||||
echo "last flake update: $(${date} -d @"$flake_update_time")"
|
echo "last flake update: $(${date} -d @"$flake_update_time")"
|
||||||
|
|
||||||
if [[ "$system_update_time" -gt "$flake_update_time" ]]
|
if [[ -z "$1" ]] && [[ "$system_update_time" -gt "$flake_update_time" ]]
|
||||||
then
|
then
|
||||||
echo ""
|
echo ""
|
||||||
echo "System is newer than remote!"
|
echo "System is newer than remote!"
|
||||||
@ -182,4 +180,11 @@
|
|||||||
fi
|
fi
|
||||||
"''${new_system}/bin/switch-to-configuration" "boot"
|
"''${new_system}/bin/switch-to-configuration" "boot"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ "$(last_flake_update_time "${cfg.flake}")" -gt "$flake_update_time" ]]
|
||||||
|
then
|
||||||
|
echo "flake was update after last update."
|
||||||
|
do_update force
|
||||||
|
fi
|
||||||
|
}
|
||||||
''
|
''
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user