From 50925651bb58db3232a5c64b60a0faac880d6954 Mon Sep 17 00:00:00 2001 From: Will Fancher Date: Sun, 24 Apr 2022 14:49:45 -0400 Subject: [PATCH] zfs: Sync pools on shutdown. --- nixos/modules/tasks/filesystems/zfs.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/nixos/modules/tasks/filesystems/zfs.nix b/nixos/modules/tasks/filesystems/zfs.nix index fbfc61177d38..5eca68798d5d 100644 --- a/nixos/modules/tasks/filesystems/zfs.nix +++ b/nixos/modules/tasks/filesystems/zfs.nix @@ -466,6 +466,11 @@ in '') rootPools)); }; + systemd.shutdownRamfs.contents."/etc/systemd/system-shutdown/zpool".source = pkgs.writeShellScript "zpool-sync-shutdown" '' + exec ${cfgZfs.package}/bin/zpool sync + ''; + systemd.shutdownRamfs.storePaths = ["${cfgZfs.package}/bin/zpool"]; + # TODO FIXME See https://github.com/NixOS/nixpkgs/pull/99386#issuecomment-798813567. To not break people's bootloader and as probably not everybody would read release notes that thoroughly add inSystem. boot.loader.grub = mkIf (inInitrd || inSystem) { zfsSupport = true;