From 90d02af7f72862b2656c035479a8a763e4702bfb Mon Sep 17 00:00:00 2001 From: Minijackson Date: Fri, 28 May 2021 19:05:58 +0200 Subject: zfs: init --- flake.nix | 7 +++++++ usecases/server/zfs.nix | 17 +++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 usecases/server/zfs.nix diff --git a/flake.nix b/flake.nix index 1242f21..6abace9 100644 --- a/flake.nix +++ b/flake.nix @@ -74,6 +74,7 @@ fail2ban = (import ./usecases/server/fail2ban.nix inputs); monitoringTarget = (import ./usecases/server/monitoring-target.nix inputs); smartd = (import ./usecases/server/smartd.nix inputs); + zfs = (import ./usecases/server/zfs.nix inputs); }; profiles = { @@ -162,6 +163,12 @@ imports = [ self.nixosModules.test self.nixosModules.profiles.server + self.nixosModules.usecases.server.zfs + + { + # Needed for ZFS + networking.hostId = "4e98920d"; + } ]; }; testScript = '' diff --git a/usecases/server/zfs.nix b/usecases/server/zfs.nix new file mode 100644 index 0000000..58f4df8 --- /dev/null +++ b/usecases/server/zfs.nix @@ -0,0 +1,17 @@ +inputs: + +{ ... }: + +{ + boot.supportedFilesystems = [ "zfs" ]; + + services.zfs = { + autoScrub.enable = true; + + # To be enabled on a dataset by dataset basis with: + # + # zfs set com.sun:auto-snapshot=true / + # + autoSnapshot.enable = true; + }; +} -- cgit v1.2.3