| 29 Jun 2025 |
ElvishJerricco | look, more reasons it shouldn't be decoupled from nixos-generate-config... | 05:49:49 |
@emma:rory.gay |
Enlightenment's preferred network manager is ConnMan which can be installed from the connman package. Follow the instructions on ConnMan to do the configuration.
| 05:49:49 |
hexa (clat on linux when) | https://github.com/search?q=repo%3ANixOS%2Fcalamares-nixos-extensions%20usedhcp&type=code | 05:50:10 |
hexa (clat on linux when) | so good that you are testing for usedhcp 😛 | 05:50:17 |
ElvishJerricco | (I'm gonna test real quick to make sure the graphical installer enables networkmanager; it wouldn't be the first time the code seemed to say one thing and it did another) | 05:52:03 |
ElvishJerricco | indeed it does | 05:59:14 |
hexa (clat on linux when) |  Download image.png | 06:02:57 |
hexa (clat on linux when) | 🐌 | 06:03:07 |
hexa (clat on linux when) | "quickly" testing the minimal installer | 06:03:47 |
hexa (clat on linux when) |  Download image.png | 06:20:00 |
hexa (clat on linux when) | that implies that gpg-agent requires a suid wrapper, no? 😄 | 06:20:17 |
@emma:rory.gay | mtr is above that, no? | 06:22:31 |
hexa (clat on linux when) | yes, but it is grouped with mtr | 06:22:41 |
@emma:rory.gay | in this case it feels like the suid wrapper thing applies to the former while the other 2 things are where gnupg comes in to demo | 06:23:29 |
emily | 💯 | 12:02:58 |
emily | would :1000: if I could | 12:03:00 |
emily | most projects that don't languish grow more than fast enough to be challenging without any explicit effort | 12:03:38 |
emily | and NixOS in particular is basically incapable of being everything to everyone, there's very little reason for anyone who doesn't want to program their distro to use it (directly; it could of course be a good backend to an end-user-focused distribution) | 12:07:35 |
emily | for something like 15 years now my standard response to people who come in to a space like "convince me why I should use your language/distro/…" has been "shrug probably you shouldn't if you don't want to?" | 12:08:33 |
emily | anyway after sleeping (badly) on it the NM by default plan makes sense. my remaining concerns are twofold
- "NixOS is declarative, right? I want to make my IP static (or whatever). let's search how to do that. hm, apparently it's
networking.*" – now you're mixing NM and scripted networking
- when we switch to networkd by default, risks of potential conflicts between NM and networkd when people do want to declare parts of their networking config
for the former, we can probably solve that by useNetworkd by default + deprecation notices in the networking.* docs + gradually getting rid of stuff. I assume that if we're not relying on useDHCP any more then ElvishJerricco's qualms with the interface simplicity don't apply and we're okay with making people learn systemd.network.networks."40-foo" = { name = "enp1s0"; networkConfig.Address = "1.2.3.4/24"; ); rather than networking.interfaces.enp1s0.ipv4.addresses = [ { address = "1.2.3.4"; prefixLength = 24; } ];, which is both shorter and also will make it explicitly clear to people when they are mixing networkd and NM.
I haven't tried doing the latter myself but I guess it's probably a well-trodden enough path that it works fine as long as you're not explicitly configuring conflicting things?
| 12:15:39 |
emily | NM in initrd when? | 12:16:31 |
emily | oh I missed this part, it was precisely Haskell that taught me this lesson :) | 12:55:39 |
emily | FWIW, the intended parse is "avoid (success at all costs)", not "(avoid success) at all costs", though the ambiguity may be a deliberate joke | 12:56:00 |
emily | the former is timeless advice for any innovative project but I'm sympathetic to the latter too :p | 12:56:54 |
hexa (clat on linux when) |
works fine as long as you're not explicitly configuring conflicting things?
Exactly that.
| 12:58:19 |
emily | seems fine then | 12:59:46 |
emily | I agree we should definitely gradually deprecate all the scripted networking.* stuff if we're not relying on it as a new user on-ramp then | 13:00:24 |
emily | maybe keeping a small subset of the most basic parts of the networkd shim around as deprecated-but-works indefinitely | 13:01:00 |
antifuchs | hey folks, sorry for kicking off such a wild discussion with (what I thought was) an innocent question... I don't want to pile more work on top of y | 14:35:09 |
emily | it's an important discussion to have | 14:35:23 |