diff --git a/flake.nix b/flake.nix index b434767c..ed64ef9b 100644 --- a/flake.nix +++ b/flake.nix @@ -253,10 +253,17 @@ cd /var/lib/microvms/${name} chown root:kvm . chmod 0775 . + + rm -f old + [ -e current ] && mv current old + nix build -L \ -o current \ ${self}#nixosConfigurations.${name}.config.microvm.declaredRunner echo '${selfRef}' > flake + + [ -e old ] && nix store diff-closures ./old ./current + systemctl restart microvm@${name}.service END ''; @@ -270,9 +277,15 @@ cd /var/lib/microvms/${name} chown root:kvm . chmod 0775 . - rm -f current + + rm -f old + [ -e current ] && mv current old + ln -s ${hostConfig.microvm.declaredRunner} current echo '${selfRef}' > flake + + [ -e old ] && nix store diff-closures ./old ./current + systemctl restart microvm@${name}.service END '';