!oNSIfazDqEcwhcOjSL:matrix.org

disko

363 Members
disko - declarative disk partitioning - https://github.com/nix-community/disko93 Servers

Load older messages


SenderMessageTime
6 Jun 2025
@francesco:zanini.mefrancesco joined the room.07:06:03
@pink_rocky:tchncs.derocky ((Ī»šŸ’.šŸ’)šŸ’) (she/they; ask before DM please)@shelvacu Thank you for the help! I will give you that info later07:35:28
@francesco:zanini.mefrancesco

Hey folks, quick question: I'm trying to setup a bind mount that points to a file system part of a disk managed by disko. I am unable to build the disk image because the order of operation is wrong:

  1. disks and filesystems created
  2. (a file-system irrelevant to this issue is mounted)
  3. bind mount tried, but source fs not mounted
  4. (I assume here it would mount the source fs)

Is there anything I can do to influence the order? I tried messing around with _meta.deviceDependencies but without much success.

11:59:29
@s:consortium.chatshelvacuyou should be able to look at the script produced by disko and confirm #412:01:32
@s:consortium.chatshelvacuwhich would be good to check since its a very different issue if its mounted nowhere12:02:08
@francesco:zanini.mefrancescoThanks let me check that.12:03:07
@francesco:zanini.mefrancescoMy assumption was correct: the issue starts here: https://github.com/nix-community/disko/blob/17d08c65c241b1d65b3ddf79e3fac1ddc870b0f6/lib/default.nix#L970 Basically I have root (tmpfs), a writable partition at /system, and a bind mount /nix -> /system/nix.12:06:37
@francesco:zanini.mefrancesco

the mount order is currently:

  • root
  • /nix (bind)
  • /system/nix

I guess a possible work-around would be to call system anything that is lexicographically before nix?

12:08:00
@s:consortium.chatshelvacu
In reply to @francesco:zanini.me
My assumption was correct: the issue starts here: https://github.com/nix-community/disko/blob/17d08c65c241b1d65b3ddf79e3fac1ddc870b0f6/lib/default.nix#L970

Basically I have root (tmpfs), a writable partition at /system, and a bind mount /nix -> /system/nix.
im not super familiar with disko but it seems youve found proof that mount ordering simply isnt implemented (other than /a before /a/b because alphabetical)
12:09:44
@s:consortium.chatshelvacuif its any help, once disko configures fileSystems.* in a nixos config it should all just work12:10:41
@francesco:zanini.mefrancesco I'm wondering if it would make sense to implement fileSystem.<name>.depends also from within disko? By doing so, disko can use this information for ordering, as well as populate the entry in nixos. Alternatively, adapt disko to do something similar to what nixos does without extra config (figure out fs dependencies automatically, by looking at their mountpoints) 12:12:52
@s:consortium.chatshelvacuthat would be neat imo12:13:31
@francesco:zanini.mefrancesco

I just opened two PRs about the above:

  • https://github.com/nix-community/disko/pull/1056
  • https://github.com/nix-community/disko/pull/1057
15:42:53
@fynn:thewatcherpi.deFynn joined the room.16:32:16
@fynn:thewatcherpi.deFynnHi! I'm currently trying to set up a machine with encrypted ZFS on root following the example: https://github.com/nix-community/disko/blob/master/example/zfs-encrypted-root.nix Now I am a bit confused on how I can set the encryption passphrase, since I am not prompted during the disko run. There is keylocation commented out in the file, can I use the for the nixos installer and switch to the prompt afterward?16:35:33
@fynn:thewatcherpi.deFynn Alright turns out it does prompt, but to encrypt the pool I have to use rootFsOptions instead of options :) 16:49:47
7 Jun 2025
@s:consortium.chatshelvacu
In reply to @fynn:thewatcherpi.de
Alright turns out it does prompt, but to encrypt the pool I have to use rootFsOptions instead of options :)
im surprised it doesn't error the other way around. it should tell you encryption is an invalid pool option, or similar
04:20:47
@fynn:thewatcherpi.deFynnI only saw, that it was not able to mount the datasets. When I changed the keylocation to a file, it said that it was an invalid option. Could be that I overlooked it on the first run though.07:39:52
@musicmatze:beyermatthi.asmusicmatzeIs Disko able to add to my existing zfs datasets?18:16:57
@musicmatze:beyermatthi.asmusicmatzeSo if I create a new dataset in the config, will it generate it upon nixos-rebuild?18:17:19
@sandro:supersandro.deSandro 🐧I don't think so18:25:38
@sandro:supersandro.deSandro 🐧at least I have been always manually reconciling that 18:25:43
@lassulus:lassul.uslassulustheoretically you can run the format part of the script again19:22:28
@lassulus:lassul.uslassulusbut better check what it would run beforehand :)19:22:37
@musicmatze:beyermatthi.asmusicmatze So if I add Disko as a module to my configuration, and add another dataset there, it does not get automatically created?
What is the expected way to do it then? Create the dataset by hand and then add it to fileSystems?
19:24:52
@lassulus:lassul.uslassulus no, add it to the disko config and either create it manually or run what is in config.system.build.format 19:27:22
@musicmatze:beyermatthi.asmusicmatzeThat sounds much better šŸ˜‰19:30:47
@deeok:matrix.org@deeok:matrix.org changed their display name from deeok to matrixrooms.info mod bot (does NOT read/send messages and/or invites; used for checking reported rooms).22:11:25
@deeok:matrix.org@deeok:matrix.org left the room.23:16:28
8 Jun 2025
@pink_rocky:tchncs.derocky ((Ī»šŸ’.šŸ’)šŸ’) (she/they; ask before DM please) No, I’m using the command I saw in the README:
sudo nix --experimental-features "nix-command flakes" run github:nix-community/disko/latest -- --mode destroy,format,mount ./etc/nixos/disk-config.nix, which I run inside /mnt with my configurations
00:26:16

Show newer messages


Back to Room ListRoom Version: 10