!tCyGickeVqkHsYjWnh:nixos.org

NixOS Networking

893 Members
Declaratively manage your switching, routing, wireless, tunneling and more.261 Servers

Load older messages


SenderMessageTime
28 Jul 2025
@emilazy:matrix.orgemily ideally boot.initrd would mirror the top level hierarchy 19:20:04
@emilazy:matrix.orgemilybut alas :)19:20:07
@marcel:envs.netMarcel so boot.initrd.networking? ;D 19:20:22
@emilazy:matrix.orgemilyyeah, but it's probably too confusing to do that19:20:37
@marcel:envs.netMarcelyeah unserstand that19:20:42
@marcel:envs.netMarceli'll use networking19:20:49
@marcel:envs.netMarcel * 19:20:54
@marcel:envs.netMarcel

I've build an assertion like this:

IfState and networking.useDHCP cannot be used at the same time, as both configure the network. Please look into IfState hooks to integrate DHCP: https://codeberg.org/liske/ifstate/issues/111

The problem is that useDHCP is per default set to true. That means that every user first using ifstate gets this error, is this bad? Should ifstate set useDHCP to false?

20:25:45
@hexa:lossy.networkhexaplease bring ifstate upstream20:27:00
@hexa:lossy.networkhexait's one more thing we can point people to, to escape scripted networking20:27:10
@elvishjerricco:matrix.orgElvishJerricco hexa (clat on linux when): (that is what they're working on :P) 20:27:23
@hexa:lossy.networkhexaand e.g. if they require network namespaces20:27:24
@marcel:envs.netMarcel
In reply to @hexa:lossy.network
please bring ifstate upstream
I am currenlty in the process ;D
20:27:25
@hexa:lossy.networkhexawas only aware of the flake 🙂 20:27:33
@hexa:lossy.networkhexabacklog is hard20:27:40
@elvishjerricco:matrix.orgElvishJerricco the networkmanager module just sets it to false 20:28:05
@emilazy:matrix.orgemily tbh, I hate overriding useDHCP from another module like that, but it's what NM and connman do, so it's probably the way to go 20:28:06
@emilazy:matrix.orgemily (I guess, mostly I dislike networking.useDHCP being on by default) 20:28:21
@emilazy:matrix.orgemilyassertion is still good to have as a backstop20:28:31
@marcel:envs.netMarcel
In reply to @emilazy:matrix.org
assertion is still good to have as a backstop
i've also done them for networkd and all the others
20:28:46
@emilazy:matrix.orgemily networking.useNetworkd will likely be on by default as well soon, FWIW 20:29:10
@emilazy:matrix.orgemilythough it should be harmless if no interfaces are defined etc.20:29:16
@emilazy:matrix.orgemily I think systemd-networkd will ignore everything that isn't explicitly configured 20:29:28
@emilazy:matrix.orgemily networking.useDHCP and networking.networkmanager.enable are a bit different in that they look at "everything" 20:29:53
@emilazy:matrix.orgemilyshouldn't need to assert against networkd itself20:30:04
@marcel:envs.netMarcel https://github.com/MarcelCoding/nixpkgs/blob/ifstate/nixos/modules/services/networking/ifstate.nix#L115-L126
The problem is how do I enshure the user does not configure stuff in networkd?
20:30:47
@emilazy:matrix.orgemilyis it the end of the world if they do?20:31:05
@emilazy:matrix.orgemilyyou could imagine having a base networkd config used on all devices to get a basic uplink but then you have some fancy stuff using ifstate. dunno :)20:31:20
@emilazy:matrix.orgemilylike, you can also have both networkd and NM enabled, and it is fine as long as you do not try to configure the same interface with both20:31:43
@marcel:envs.netMarcelthey wonder why the changes do not apply and get overriden by ifstate, maybe even depeing on the order and between ifstate and networkd it could bing randomness demending which is faster20:31:49

Show newer messages


Back to Room ListRoom Version: 6