aboutsummaryrefslogtreecommitdiffstats
path: root/pkgs/by-name/fu/fupdate-sys
diff options
context:
space:
mode:
Diffstat (limited to '')
-rwxr-xr-xpkgs/by-name/fu/fupdate-sys/fupdate-sys.sh6
-rw-r--r--pkgs/by-name/fu/fupdate-sys/package.nix43
2 files changed, 30 insertions, 19 deletions
diff --git a/pkgs/by-name/fu/fupdate-sys/fupdate-sys.sh b/pkgs/by-name/fu/fupdate-sys/fupdate-sys.sh
index 4ec3e9e8..9cead603 100755
--- a/pkgs/by-name/fu/fupdate-sys/fupdate-sys.sh
+++ b/pkgs/by-name/fu/fupdate-sys/fupdate-sys.sh
@@ -151,7 +151,7 @@ msg2 "Updating git repository..."
git pull --rebase
# We use a tempfile, to make this truly async.
-default_branch=$(mktemp)
+default_branch=$(mktemp -t fupdate_flake_XXXX)
cleanup() {
rm "$default_branch"
}
@@ -163,6 +163,10 @@ msg2 "Updating system..."
nixos-rebuild "${MODE-switch}"
git switch "$(cat "$default_branch")" >/dev/null 2>&1 && msg2 "Switched to branch '$(cat "$default_branch")'"
+
+msg "Setting oneshot boot entry to new generation.."
+bootctl set-oneshot "$(bootctl list --json=short | jq 'map(if .sortKey == "lanza" then .id else empty end) | first' --raw-output)"
+
msg "Finished Update!"
# vim: ft=sh
diff --git a/pkgs/by-name/fu/fupdate-sys/package.nix b/pkgs/by-name/fu/fupdate-sys/package.nix
index 7fd4674b..9a48e32d 100644
--- a/pkgs/by-name/fu/fupdate-sys/package.nix
+++ b/pkgs/by-name/fu/fupdate-sys/package.nix
@@ -11,7 +11,7 @@
writeShellApplication,
# Dependencies
git,
- nixos-rebuild,
+ nixos-rebuild-ng,
sudo,
openssh,
coreutils,
@@ -19,20 +19,27 @@
gnugrep,
gnused,
systemd,
-}:
-writeShellApplication {
- name = "fupdate-sys";
- text = builtins.readFile ./fupdate-sys.sh;
- inheritPath = false;
- runtimeInputs = [
- git
- nixos-rebuild
- sudo
- openssh
- coreutils
- mktemp
- gnugrep
- gnused
- systemd
- ];
-}
+ lixPackageSets,
+ jq,
+}: let
+ nixos-rebuild-without-nix = nixos-rebuild-ng.override {
+ nix = lixPackageSets.latest.lix;
+ };
+in
+ writeShellApplication {
+ name = "fupdate-sys";
+ text = builtins.readFile ./fupdate-sys.sh;
+ inheritPath = false;
+ runtimeInputs = [
+ git
+ nixos-rebuild-without-nix
+ sudo
+ openssh
+ coreutils
+ mktemp
+ gnugrep
+ gnused
+ systemd
+ jq
+ ];
+ }