From dcb0c42857a2ada8754d4514d4b8c4c1d67ab3f5 Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 29 Aug 2022 11:45:19 +0200 Subject: reimplement disko using the nixos type system This should make the code cleaner, more robust and errors should be clearer. we also changed the configuration format a bit. --- example/zfs.nix | 53 +++++++++++++++++++++++++++++------------------------ 1 file changed, 29 insertions(+), 24 deletions(-) (limited to 'example/zfs.nix') diff --git a/example/zfs.nix b/example/zfs.nix index 60e4700..16da367 100644 --- a/example/zfs.nix +++ b/example/zfs.nix @@ -1,14 +1,23 @@ { - type = "devices"; - content = { + disk = { vdb = { - type = "zfs"; - pool = "zroot"; + type = "disk"; + device = "/dev/vdb"; + content = { + type = "zfs"; + pool = "zroot"; + }; }; vdc = { - type = "zfs"; - pool = "zroot"; + type = "disk"; + device = "/dev/vdc"; + content = { + type = "zfs"; + pool = "zroot"; + }; }; + }; + zpool = { zroot = { type = "zpool"; mode = "mirror"; @@ -18,35 +27,31 @@ }; mountpoint = "/"; - datasets = [ - { - type = "zfs_filesystem"; - name = "zfs_fs"; + datasets = { + zfs_fs = { + zfs_type = "filesystem"; mountpoint = "/zfs_fs"; options."com.sun:auto-snapshot" = "true"; - } - { - type = "zfs_filesystem"; - name = "zfs_unmounted_fs"; + }; + zfs_unmounted_fs = { + zfs_type = "filesystem"; options.mountpoint = "none"; - } - { - type = "zfs_filesystem"; - name = "zfs_legacy_fs"; + }; + zfs_legacy_fs = { + zfs_type = "filesystem"; options.mountpoint = "legacy"; mountpoint = "/zfs_legacy_fs"; - } - { - type = "zfs_volume"; - name = "zfs_testvolume"; + }; + zfs_testvolume = { + zfs_type = "volume"; size = "10M"; content = { type = "filesystem"; format = "ext4"; mountpoint = "/ext4onzfs"; }; - } - ]; + }; + }; }; }; } -- cgit v1.2.3