!oNSIfazDqEcwhcOjSL:matrix.org

disko

367 Members
disko - declarative disk partitioning - https://github.com/nix-community/disko92 Servers

Load older messages


SenderMessageTime
1 Feb 2026
@sigmasquadron:matrix.orgFernando Rodrigues changed their display name from SigmaSquadron to Fernando Rodrigues.10:43:23
@zimward:zimward.moezimward changed their display name from zimward @fosdem to zimward.20:36:07
3 Feb 2026
@jbornhold:matrix.orgJohannes Bornhold joined the room.07:56:03
@blitz:chat.x86.lol@blitz:chat.x86.lol left the room.08:49:08
4 Feb 2026
@crony:cronyakatsuki.xyzCrony Akatsuki joined the room.09:05:34
6 Feb 2026
@kaigravy:matrix.orgKai joined the room.06:00:26
@sinan:sinanmohd.comsinan changed their profile picture.09:28:23
@sinan:sinanmohd.comsinan changed their profile picture.09:29:01
@sinan:sinanmohd.comsinan changed their profile picture.09:29:59
@sinan:sinanmohd.comsinan changed their profile picture.09:30:11
@sinan:sinanmohd.comsinan changed their profile picture.09:31:53
@sinan:sinanmohd.comsinan 09:31:55
@sinan:sinanmohd.comsinan 09:31:57
@sinan:sinanmohd.comsinan 09:32:00
@sinan:sinanmohd.comsinan 09:32:04
7 Feb 2026
@disco_stick:matrix.orgAgentic changed their display name from The Jia Tan of Datasets to Agentic.04:34:11
@louib:matrix.orglouib joined the room.17:16:01
@neochaotics:matrix.orgSKREE changed their profile picture.17:16:58
@neochaotics:matrix.orgSKREE changed their profile picture.17:17:05
@neochaotics:matrix.orgSKREE changed their profile picture.17:19:46
@neochaotics:matrix.orgSKREE changed their profile picture.17:20:19
@neochaotics:matrix.orgSKREE changed their profile picture.17:20:52
@neochaotics:matrix.orgSKREE changed their display name from Doopa to SKREE.17:21:19
@neochaotics:matrix.orgSKREE changed their profile picture.17:22:29
@neochaotics:matrix.orgSKREE changed their profile picture.17:23:27
8 Feb 2026
@alphakeks:matrix.orgAlphaKeks joined the room.19:32:31
@alphakeks:matrix.orgAlphaKeks

Hey, I'm experiencing an issue with postMountHook. I have a zfs pool that looks roughly like this:

{
  type = "zpool";

  options = {
    ashift = "12";
  };

  rootFsOptions = {
    acltype = "posix";
    compression = "on";
    mountpoint = "none";
    overlay = "off";
    xattr = "sa";
  };

  datasets =
    let
      mkDataset = lib.attrsets.recursiveUpdate {
        type = "zfs_fs";
      };
    in
    {
      "rootfs" = mkDataset {
        mountpoint = "/";
      };

      "home" = mkDataset {
        mountpoint = "/home";
      };

      "home/user" = mkDataset {
        name = "home/${config.custom.username}";
        mountpoint = "/home/${config.custom.username}";

        options = {
          mountpoint = "/home/${config.custom.username}";
          encryption = "on";
          keyformat = "passphrase";
          keylocation = "prompt";
          "com.sun:auto-snapshot" = "true";
        };

        postMountHook = ''
          # ...
        '';
      };
    };
}

(other datasets omitted for the sake of brevity)

Initially I did not specify options.mountpoint, and ran into the problem that my dataset was not mounted by the time postMountHook got executed. I saw the zfs example in the disko repo using both mountpoint and options.mountpoint, so I figured I'd give it a shot. Now the problem is that it remains mounted when the main disko script tries to mount the rest, which then fails because /mnt is not empty... The error message:

+ findmnt nixos/rootfs /mnt/
+ mount nixos/rootfs /mnt/ -o X-mount.mkdir -o defaults -o zfsutil -t zfs
zfs_mount_at() failed: directory is not empty+ rm -rf /tmp/tmp.aSJMo4rNbE

I don't know if I'm doing something wrong or if the script generation is just broken?

20:01:15
@alphakeks:matrix.orgAlphaKeks *

Hey, I'm experiencing an issue with postMountHook. I have a zfs pool that looks roughly like this:

{
  type = "zpool";

  options = {
    ashift = "12";
  };

  rootFsOptions = {
    acltype = "posix";
    compression = "on";
    mountpoint = "none";
    overlay = "off";
    xattr = "sa";
  };

  datasets =
    let
      mkDataset = lib.attrsets.recursiveUpdate {
        type = "zfs_fs";
      };
    in
    {
      "rootfs" = mkDataset {
        mountpoint = "/";
      };

      "home" = mkDataset {
        mountpoint = "/home";
      };

      "home/${config.custom.username}" = mkDataset {
        mountpoint = "/home/${config.custom.username}";

        options = {
          mountpoint = "/home/${config.custom.username}";
          encryption = "on";
          keyformat = "passphrase";
          keylocation = "prompt";
          "com.sun:auto-snapshot" = "true";
        };

        postMountHook = ''
          # ...
        '';
      };
    };
}

(other datasets omitted for the sake of brevity)

Initially I did not specify options.mountpoint, and ran into the problem that my dataset was not mounted by the time postMountHook got executed. I saw the zfs example in the disko repo using both mountpoint and options.mountpoint, so I figured I'd give it a shot. Now the problem is that it remains mounted when the main disko script tries to mount the rest, which then fails because /mnt is not empty... The error message:

+ findmnt nixos/rootfs /mnt/
+ mount nixos/rootfs /mnt/ -o X-mount.mkdir -o defaults -o zfsutil -t zfs
zfs_mount_at() failed: directory is not empty+ rm -rf /tmp/tmp.aSJMo4rNbE

I don't know if I'm doing something wrong or if the script generation is just broken?

20:02:03
@knowledgeless:unredacted.orgknowledgeless joined the room.21:06:33
9 Feb 2026
@tumble1999:matrix.orgTumble does disko just use nixosModule.config.disko.devices
im thinking i probably dont need to make a lib function and maybe just make a nixos config
17:59:26

There are no newer messages yet.


Back to Room ListRoom Version: 10