| 22 Apr 2023 |
@elvishjerricco:matrix.org | we kinda technically have a stage 3 | 13:54:00 |
@elvishjerricco:matrix.org | it's just exceptionally simple | 13:54:08 |
@elvishjerricco:matrix.org | It's just the systemd-shutdown binary going on a merciless killing spree and then eventually dumbly running some executable hooks without any sort of logical ordering | 13:54:52 |
@elvishjerricco:matrix.org | ok seriously wtf I cannot figure out why that assertion isn't triggering | 13:57:38 |
@elvishjerricco:matrix.org | oh, I derped and forgot to have boot.initrd.systemd.enable = true | 14:02:34 |
@elvishjerricco:matrix.org | And I took for granted that if nixosTests.installer-systemd-stage-1.zfsroot evaluated, that meant it would succeed. But I'm testing that now and I expect it won't | 14:03:14 |
@elvishjerricco:matrix.org | Because it's not the initial machine config that has systemd stage 1 enabled. It's the installed machine. So it'll fail when the installer tries to install it | 14:03:54 |
@elvishjerricco:matrix.org | and yep there it goes | 14:04:04 |
@aktaboot:tchncs.de | is stage-1 ran automatically by giving the script to the initrd/ramfs ? or rather to the bootloader that will call it in the initramfs ? | 14:17:22 |
@elvishjerricco:matrix.org | The boot loader loads the initrd image from the disk and the kernel unpacks it into memory and runs /init | 14:17:53 |
@aktaboot:tchncs.de | I could not find where printing the <<< NixOS Stage 1 >>> string happens 🤔 | 14:20:19 |
@elvishjerricco:matrix.org | I think that's just in stage-1-init.sh isn't it? Which is only for the scripted initrd, not systemd initrd | 14:20:52 |
@aktaboot:tchncs.de | yep thanks :)\ | 14:21:36 |
@aktaboot:tchncs.de | * yep thanks :) | 14:21:38 |
@aktaboot:tchncs.de | huh, I thought that that would be /init in the initrd | 14:22:43 |
@elvishjerricco:matrix.org | aktaboot: It is | 14:25:50 |
@elvishjerricco:matrix.org | for scripted initrd anyway | 14:26:08 |
@aktaboot:tchncs.de | so there are 2 initrds in the boot process ?
in my boot entry, the init script is the one that prints <<< NixOS Stage 2 >>> so that got me confused | 14:29:42 |
@elvishjerricco:matrix.org | aktaboot: We have two completely independent implementations of stage 1. Which one your system uses depends on if you've set boot.initrd.systemd.enable = true; | 14:30:42 |
@elvishjerricco:matrix.org | The old one is what I call the "scripted initrd", and the new one is "systemd initrd" | 14:30:56 |
@elvishjerricco:matrix.org | systemd initrd is opt-in | 14:31:01 |
@elvishjerricco:matrix.org | and does not use a lot of stuff from scripted initrd, like stage-1-init.sh | 14:31:12 |
@elvishjerricco:matrix.org | * and does not use a lot of stuff from scripted initrd, like stage-1-init.sh | 14:31:17 |
@elvishjerricco:matrix.org | https://github.com/NixOS/nixpkgs/pull/227623 | 14:31:31 |
@elvishjerricco:matrix.org | Lily Foster Arian We should probably get this in as quickly as possible | 14:31:58 |
@elvishjerricco:matrix.org | We can do the right fixes next | 14:32:07 |
@aktaboot:tchncs.de | I see, thanks, so that means the systemd initrd does not print <<< NixOS Stage 1 >>> ? | 14:32:11 |
@elvishjerricco:matrix.org | right | 14:32:18 |
@aktaboot:tchncs.de | okay that was my confusion, thanks :) | 14:32:34 |
@elvishjerricco:matrix.org | https://github.com/NixOS/nixpkgs/pull/227633 | 15:05:59 |