summaryrefslogtreecommitdiff
path: root/hosts/disk-config/zfs-impermanence.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/disk-config/zfs-impermanence.nix')
-rw-r--r--hosts/disk-config/zfs-impermanence.nix80
1 files changed, 0 insertions, 80 deletions
diff --git a/hosts/disk-config/zfs-impermanence.nix b/hosts/disk-config/zfs-impermanence.nix
deleted file mode 100644
index 9087825..0000000
--- a/hosts/disk-config/zfs-impermanence.nix
+++ /dev/null
@@ -1,80 +0,0 @@
-# USAGE in your configuration.nix.
-# Update devices to match your hardware.
-# {
-# imports = [ ./disko-config.nix ];
-# disko.devices.disk.main.device = "/dev/sda";
-# }
-{
- disko.devices = {
- disk = {
- main = {
- type = "disk";
- content = {
- type = "gpt";
- partitions = {
- ESP = {
- size = "1G";
- type = "EF00";
- content = {
- type = "filesystem";
- format = "vfat";
- mountpoint = "/boot";
- mountOptions = [ "umask=0077" ];
- };
- };
- zfs = {
- size = "100%";
- content = {
- type = "zfs";
- pool = "zroot";
- };
- };
- };
- };
- };
- };
- zpool = {
- zroot = {
- type = "zpool";
- rootFsOptions = {
- # https://wiki.archlinux.org/title/Install_Arch_Linux_on_ZFS
- acltype = "posixacl";
- atime = "off";
- compression = "zstd";
- mountpoint = "none";
- xattr = "sa";
- };
- options.ashift = "12";
-
- datasets = {
- "local" = {
- type = "zfs_fs";
- options.mountpoint = "none";
- };
- "local/home" = {
- type = "zfs_fs";
- mountpoint = "/home";
- # Used by services.zfs.autoSnapshot options.
- options."com.sun:auto-snapshot" = "true";
- };
- "local/nix" = {
- type = "zfs_fs";
- mountpoint = "/nix";
- options."com.sun:auto-snapshot" = "false";
- };
- "local/persist" = {
- type = "zfs_fs";
- mountpoint = "/persist";
- options."com.sun:auto-snapshot" = "false";
- };
- "local/root" = {
- type = "zfs_fs";
- mountpoint = "/";
- options."com.sun:auto-snapshot" = "false";
- postCreateHook = "zfs list -t snapshot -H -o name | grep -E '^zroot/local/root@blank$' || zfs snapshot zroot/local/root@blank";
- };
- };
- };
- };
- };
-}