| 24 Mar 2025 |
@elvishjerricco:matrix.org | what's wrong with doing it the way the ISO does it already? | 18:55:15 |
p14 | I guess one difference there is that / is tmpfs | 18:55:19 |
p14 | I don't want / as tmpfs | 18:55:22 |
@elvishjerricco:matrix.org | that doesn't really matter | 18:55:29 |
p14 | Well, OK, but then if I try to do what I perceive to be the obvious thing, I end up with this weird thing which doesn't quite work properly | 18:55:50 |
@elvishjerricco:matrix.org | can you share the code you tried and what you observed going wrong? | 18:56:24 |
p14 | I also had difficulty getting the debug shell to work with my VM since I can't switch to VT9, though I did just discover rd.systemd.default_debug_tty, so once I can figure out what the friendly tty is called, I can probably get a debug shell | 18:56:27 |
p14 | Something like:
fileSystems = {
"/" = {
device = "/dev/disk/by-partlabel/nixos-rw";
fsType = "btrfs";
options = [ "x-systemd.growfs" ];
autoResize = true;
neededForBoot = true;
};
"/nix/rostore" = {
device = "/dev/disk/by-partlabel/nixos";
fsType = "squashfs";
neededForBoot = true;
};
"/nix/store" = {
fsType = "overlay";
device = "overlay";
overlay = {
lowerdir = ["/nix/rostore/nix/store"];
upperdir = "/nix/store";
workdir = "/nix/ovfs-work";
};
};
};
| 18:59:16 |
p14 | Awkwardly my rostore has the nix store at /nix/store within it | 18:59:41 |
@elvishjerricco:matrix.org | p14: You don't want the upper dir to be /nix/store | 19:01:47 |
@elvishjerricco:matrix.org | That should be a separate directory | 19:01:53 |
p14 | Ah, that'd probably be it. I was operating under the belief that this would be the upperdir from before this one was mounted, not so, eh? | 19:05:35 |
p14 | Looks like did the trick ElvishJerricco , thank you for rescuing me from my own insanity <3 | 19:10:50 |
@elvishjerricco:matrix.org | it would be if you were just running mount manually. But the overlay module in nixos creates systemd dependencies on the file systems for the upper/work/lower dirs, so I think you were creating a cyclic dependency of /nix/store on itself which probably blew something up | 19:12:18 |
@elvishjerricco:matrix.org | i.e. I think it probably resulted in an fstab line like overlay /nix/store overlay ...,x-systemd.requires-mounts-for=/nix/store | 19:13:12 |
@elvishjerricco:matrix.org | I guess it would work if you didn't use the nixos overlay module and instead just manually wrote the options | 19:13:54 |
p14 | Well it didn't work great when I did that either. At least having the writable stuff go to a different place is working well enough | 19:14:48 |
p14 | Now for my next challenge, make my x86 image also legacy bootable 🤦. I'd love to use the systemd-repart image builder for this but maybe that is too much to ask. | 19:15:52 |