Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make nixos-firewall-tool dependency configurable #345861

Open
b2ag opened this issue Oct 2, 2024 · 3 comments
Open

Make nixos-firewall-tool dependency configurable #345861

b2ag opened this issue Oct 2, 2024 · 3 comments

Comments

@b2ag
Copy link

b2ag commented Oct 2, 2024

Issue description

The nixos/firewall for iptables depends on nixos-firewall-tool. Not by default as commit linked below says, but mandatory as it's not possible/recommended to remove packages from systemPackages.

Doesn't sound like a big deal until you need to cross-compile two extra versions of LLVM because of that. I didn't even new this tool existed before tracking down exzessiv LLVM compile times. I'm good with using iptables directly.

Feature request

Make nixos-firewall-tool dependency configurable for nixos/firewall for iptables.

Technical details

fa9cdc8

It's not obvious to me why it depends on LLVM in this way, but it's something like ShellCheck -> two versions of ghc -> two versions of LLVM.

@ThinkChaos
Copy link
Contributor

Ping @Janik-Haag

@skeuchel
Copy link
Contributor

The other option is to replace writeShellApplication with writeShellScriptBin in

to remove the build dependency on shellcheck, and rely on something like #353490 instead. It would not remove the dependency, just make it cheaper to build. Also not clear why it would build shellcheck even in a cross-compile scenario. It should come from the nativeBuildInputs.

@b2ag
Copy link
Author

b2ag commented Nov 14, 2024

I went with the QEMU "my system looks like it speaks ARM even if x86" route. So the whole build process runs through QEMU I guess.

https://nixos.wiki/wiki/NixOS_on_ARM#Compiling_through_binfmt_QEMU

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants