| 29 Jun 2025 |
hexa | the configs we generate are basic enough that we should just generate the real thing and not the abstraction | 04:29:28 |
ElvishJerricco | useDHCP does not have a clean networkd implementation even though it is the sane default for a new thing | 04:29:28 |
emily | by a project with much more comparative expertise at that task compared to whatever random interface we accumulated since 2006 | 04:29:33 |
ElvishJerricco | I mean no, my whole point is that I don't want hardware-configuration.nix to contain any sort of ideas about how things should be implemented | 04:30:15 |
ElvishJerricco | because then it gets stale and we can't change it | 04:30:21 |
ElvishJerricco | for existing users | 04:30:25 |
emily | networking should probably not be part of hardware-configuration | 04:30:50 |
emily | at least that layer of it | 04:30:58 |
ElvishJerricco | e.g. useDHCP is implemented as Kind=!* IIRC and that's hopefully going to change one day so it would suck if that was baked into everyone's generated configs | 04:31:05 |
emily | anyway basic DHCP toggle or basic static IP is one thing, it's the more elaborate parts of networking.* that seem counterproductive to maintain forever | 04:31:40 |
emily | there's like five options that cover 90% of NixOS setups | 04:31:55 |
emily | anyone in the 10% can use networkd or NM directly | 04:32:12 |
ElvishJerricco | All I'm saying is that we shouldn't change nixos-generate-config. Whether we remove parts of the interface is another matter | 04:32:19 |
ElvishJerricco | We want hardware-configuration.nix to use abstractions | 04:32:27 |
ElvishJerricco | that's actively good for us as maintainers in the long run | 04:32:33 |
emily | it already does not really do a good job at that tbh | 04:33:42 |
emily | nixos-facter might achieve it more | 04:33:51 |
ElvishJerricco | I mean sure but we're not also going to tack that onto the todo list for this | 04:34:06 |
emily | I don't think it is really bad to expose people to networkd config. that is what they are expected to write on Arch etc. | 04:35:01 |
ElvishJerricco | That isn't the point | 04:35:10 |
ElvishJerricco | I don't care if users are exposed to it or not | 04:35:18 |
ElvishJerricco | I care that what we generated one day is something we can continue to maintain the next | 04:35:29 |
emily | NixOS can't be in the game of making its own complex abstraction layers for everything in the system | 04:35:32 |
ElvishJerricco | we can't make changes to generated configs | 04:35:33 |
ElvishJerricco | we can make changes to abstraction implementations | 04:35:38 |
emily | I still think hardware-configuration is a red herring here | 04:35:49 |
hexa | The users that use the unmaintained shit don't maintain the abstractions | 04:35:53 |
ElvishJerricco | it's literally the only thing nixos-generate-config is about? | 04:36:02 |
emily | "I want DHCP by default" is configuration.nix not hardware-configuration.nix teritory | 04:36:04 |
hexa | Whatever we give as a configuration.nix is mutable by default | 04:36:14 |