| 31 Oct 2025 |
raboof | yeah you shared that before... I'm a bit torn on it as I essentially don't care about mac 😆, but from a holistic point of view it's probably the wise thing to do. | 17:30:17 |
emily | it's also relevant for e.g. Linux builds inside environments that can't use the sandbox, although those situations are pretty cursed | 17:45:45 |
emily | (some rootless container environments, for instance) | 17:45:54 |
emily | since those already cannot enforce a coherent build directory | 17:46:07 |
dish [Fox/It/She] | I'm wondering if it would be reasonable to disable the checkPhase in writeShellApplication for pre-switch-checks, which is the only user of haskell in the default system closure. While having shellcheck is a good idea, system.preSwitchChecks is only used in two repos outside of nixpkgs(according to a quick sourcegraph search), and I feel like if this is something you're using, you're generally better at shell scripting and don't need to worry as much about shellcheck. Just a thought though, and would allow us to cut off the entire ghc repro issue for minmal isos | 19:00:34 |
dish [Fox/It/She] | I'm wondering if it would be reasonable to disable the checkPhase in writeShellApplication for pre-switch-checks, which is the only user of haskell in the default system closure. While having shellcheck is a good idea, system.preSwitchChecks is only used in two repos outside of nixpkgs(according to a quick sourcegraph search), and I feel like if this is something you're using, you're generally better at shell scripting and don't need to worry as much about shellcheck. Just a thought though, and would allow us to cut off the entire ghc/haskell repro issue for minmal isos | 19:00:40 |
emily | how much would that shrink the minimal ISO? | 22:26:25 |
Grimmauld (any/all) | it would save me annoying ghc compiles on my minimalism adventures, i approve | 22:26:55 |
emily | I am frankly not sure we need preSwitchChecks at all | 22:27:23 |
Grimmauld (any/all) | Do we use buildShellApplication outside systemd.enableStrictShellChecks = true in the default closure? | 22:27:57 |
Grimmauld (any/all) | actually wait no that is false by default huh | 22:28:25 |
emily | --set PRE_SWITCH_CHECK ${lib.escapeShellArg config.system.preSwitchChecksScript} \
| 22:29:56 |
emily | I think we actually just need to conditionalize this on config.system.preSwitchChecks… | 22:30:19 |
emily | the same way it is in nixos/modules/system/activation/top-level.nix | 22:30:24 |
emily | pretty funny if this pulled GHC into the build closure of every switchable system and nobody noticed, though that sounds too good to be true | 22:31:01 |
Grimmauld (any/all) | no, that sounds about reasonable | 22:31:18 |
raboof | In reply to @emilazy:matrix.org how much would that shrink the minimal ISO? Afaics not, it's just a build-time dependency right? | 22:31:24 |
emily | right | 22:31:30 |
emily | still seems good to avoid. | 22:31:46 |
emily | it's a one-liner fix | 22:31:52 |
raboof | Yeah. I thought it was used in more places though, but afk now | 22:33:04 |
Grimmauld (any/all) | looking at my musl experiments, it is literally JUST pre-switch-checks depending on ghc | 22:33:42 |
Grimmauld (any/all) | https://termbin.com/hala
nix why-depends --derivation --all .#nixosConfigurations.grimm-musl.config.system.build.toplevel .#nixosConfigurations.grimm-musl.pkgs.ghc | 22:34:41 |
Grimmauld (any/all) | i didn't check whether there might be more ghc on the way to qemu, but toplevel is what counts | 22:35:25 |
Grimmauld (any/all) | this is minimal+perlless+musl+some bashless, but it is a graphical switchable system | 22:35:58 |
Grimmauld (any/all) | * this is minimal+perlless+musl+some bash reduction, but it is a graphical switchable system | 22:36:11 |
emily | what we really want is a passthru.tests for NixOS configs | 22:37:38 |
emily | that can do all the ShellCheck stuff | 22:37:46 |
Grimmauld (any/all) | and udev checks too! | 22:38:32 |
| ElvishJerricco joined the room. | 22:46:56 |