| 30 Jul 2022 |
@linus:schreibt.jetzt | ElvishJerricco: only at build time though? | 11:36:23 |
K900 | And then wherever it's invoked we just make-initrd-ng --strip=${binutils.targetPrefix}strip | 11:36:40 |
@elvishjerricco:matrix.org | K900: Minimal system should have a cross make-initrd-ng, which should have a cross-built binutils, not a cross binutils | 11:36:46 |
@linus:schreibt.jetzt | In reply to @elvishjerricco:matrix.org Yea, binutils is in a minimal system lol only since the introduction of the shutdown ramfs | 11:37:07 |
K900 | Is it time to also add clap | 11:37:09 |
K900 | Since we're doing deps | 11:37:12 |
@elvishjerricco:matrix.org | In reply to @linus:schreibt.jetzt lol only since the introduction of the shutdown ramfs oh really? | 11:37:16 |
@elvishjerricco:matrix.org | oof | 11:37:20 |
@linus:schreibt.jetzt | at least that's the only path through which nix-build '<nixpkgs/nixos>' --arg configuration '{ boot.isContainer = true; }' -A config.system.build.toplevel depends on a binutils on my nixpkgs version | 11:37:43 |
@linus:schreibt.jetzt | (and containers probably shouldn't have a shutdown ramfs anyway?) | 11:37:55 |
@linus:schreibt.jetzt | In reply to @linus:schreibt.jetzt at least that's the only path through which nix-build '<nixpkgs/nixos>' --arg configuration '{ boot.isContainer = true; }' -A config.system.build.toplevel depends on a binutils on my nixpkgs version likewise for { boot.loader.grub.enable = false; fileSystems."/".device = "dummy"; } | 11:39:51 |
@elvishjerricco:matrix.org | hm. what'd'ya'know. That's unfortunate | 11:40:51 |
@linus:schreibt.jetzt | oof and that's like 32MiB | 11:41:01 |
@elvishjerricco:matrix.org | K900: Ok, so yea, a command line argument for strip would be good. If it's not provided, do not strip | 11:41:12 |
@elvishjerricco:matrix.org | that way the minimal closure doesn't need it? | 11:41:21 |
K900 | If it's not provided, just bail? | 11:41:28 |
@elvishjerricco:matrix.org | ugh but users still need it to build their initrds | 11:41:36 |
K900 | Also, why is make-initrd-ng even in the minimal closure | 11:41:44 |
K900 | I feel like that's the better question | 11:41:49 |
@linus:schreibt.jetzt | a shutdown ramfs isn't actually saved, right? It only ever lives in RAM? So who cares if the binaries there are a bit bigger? | 11:42:11 |
@elvishjerricco:matrix.org | K900: Well, two things. For one, you're going to have it on your system anyway, because you'll be building your initrds. Second, we have the shutdown ramfs now | 11:42:13 |
K900 | The shutdown ramfs shouldn't be in the minimal closure either though | 11:42:34 |
@elvishjerricco:matrix.org | it's enabled by default now | 11:42:42 |
K900 | Maybe we should disable it for isContainer = true at least | 11:42:55 |
@elvishjerricco:matrix.org | yea probably | 11:43:01 |
K900 | But yeah I guess for shutdown ramfs we can just not strip | 11:43:27 |
@elvishjerricco:matrix.org | But I think it's important to point out that "needed to build your next initrd" is nearly the same thing as "in the minimal closure" | 11:43:29 |
@linus:schreibt.jetzt | make-initrd-ng itself is only 500K, so I don't think it's nearly as big a deal as binutils | 11:43:32 |
K900 | Which will also save time | 11:43:36 |
@linus:schreibt.jetzt | In reply to @elvishjerricco:matrix.org But I think it's important to point out that "needed to build your next initrd" is nearly the same thing as "in the minimal closure" Only if you're building on the same host that you're running on. Which doesn't apply to quite a large number of deployments. | 11:43:55 |