| 29 Jul 2025 |
ElvishJerricco | Well if you want to give it a try, it shouldn't be too hard to swap makeInitrdNG for makeInitrd and start slashing away | 17:50:32 |
ElvishJerricco | (oof, a stock systemd initrd is 21M. not great, but acceptable) | 17:52:20 |
emily | yeah I might | 18:04:03 |
emily | even just looking at the diff of the closure would probably make it obvious where to start | 18:04:16 |
emily | (I thought makeInitrd screws up the store paths or something though) | 18:05:04 |
ElvishJerricco | no, makeInitrd just does plain ole closures | 18:05:41 |
ElvishJerricco | it's the extraUtils derivation that does the screwing with binaries so the closure is small | 18:05:58 |
emily | ah | 18:07:49 |
Marcel | Is this a crime?
storePaths =
let
closure = pkgs.closureInfo { rootPaths = [ initrdCfg.package ]; };
closurePaths = lib.filter (path: path != "") (lib.splitString "\n" (builtins.readFile "${closure}/store-paths")) ;
in
closurePaths ++
[
config.environment.etc."ifstate/config.initrd.yml".source
];
now i only have to work on reducing the closure size.
| 19:57:37 |
Marcel | * Is this a crime?
storePaths =
let
closure = pkgs.closureInfo { rootPaths = [ initrdCfg.package ]; };
closurePaths = lib.filter (path: path != "") (lib.splitString "\n" (builtins.readFile "${closure}/store-paths")) ;
in
closurePaths ++
[
config.environment.etc."ifstate/config.initrd.yml".source
];
now i only have to work on reducing the closure size.
| 19:58:08 |
emily | IFD | 19:58:51 |
emily | so criminal we have a name and a flag for the specific type of crime :) | 19:59:17 |
emily | it would break on Hydra | 19:59:19 |