eyJhb changed the topic of #nixos-on-your-router to: NixOS on your Router || https://logs.nix.samueldr.com/nixos-on-your-router
qyliss has quit [Quit: bye]
qyliss has joined #nixos-on-your-router
night has quit [Read error: Connection reset by peer]
NightA has joined #nixos-on-your-router
NightA is now known as night
teto has joined #nixos-on-your-router
<andi-> mdlayher: at this point I'd like to discuss creating a proper network configuration daemon for linux :D
<q3k> yeah that would be nice
<q3k> honestly my best experience so far was with gentoo's network configuration system
<q3k> it was all a bunch of shell scripts but they just worked, and worked without surprises
<mdlayher> andi-: I'm curious, what do you have in mind?
<andi-> mdlayher: I am a bit sick of networkd and the lack of testability and how the entire code has grown. I would like to discuss what it would take to have something with a similar declarative configuration but a newer architecture.
<andi-> Like my latest issue is not being able to declare orders or have a proper introspection. Adding that to the C code base is kinda annoying.
<mdlayher> Gotcha! Sounds interesting. I think my only concern is that projects like NM and networkd are so far ahead and have tons of developers working on them as is, so it'd take a lot of effort to even begin to create a viable alternative
teto has quit [Ping timeout: 272 seconds]
<andi-> mdlayher: that is true but same was said when networkd started out ;)
<andi-> Like for my use-cases that I encounter most of the time I need: VLANs, bonding, wireguard, ip address configuration, all those need matches on pci path, mac address and/or device name.
<andi-> I wouldn't even port VRF, ip rules, NAT support, …
<andi-> obviously DHCP and DHCPv6 support ist a must-have
<andi-> right now my networkd spents ~2 minutes on DNS timeouts before it configures the uplink interface *IF* if it started with socket activation..
superherointj has joined #nixos-on-your-router
ottidmes has quit [Ping timeout: 258 seconds]
ottidmes has joined #nixos-on-your-router
teto has joined #nixos-on-your-router
<NinjaTrappeur> :/
night has quit [Read error: Connection reset by peer]
NightA has joined #nixos-on-your-router
NightA is now known as night
teto has quit [Ping timeout: 272 seconds]
<hexa-> can we maybe tackle declarative virtual machines on nixos first?
<cransom> that's against the rules here at #nixos-on-your-router
<hexa-> not if I want to virtualize my router(s)!
<cransom> sure, but that just gives you N broken routers rather than 1
<hexa-> doesn't that sound appealing?
<aranea> oh, absolutely
<aranea> N times the opportunities to hunt bizarre bugs
<aranea> hmm, actually, that probably goes up superlinearily
<q3k> yeah, declarative VMs would be neato
<q3k> i wonder if there's a big hurdle to do that that i'm not aware of
<q3k> or just nobody really bothered
<hexa-> what andi- describes sounds like they hit a bug honestly
<q3k> that's my general experience with systemd
<q3k> bleh
<q3k> systemd-networkd.
<hexa-> i maintain some legacy systems with debian and ifupdown
<hexa-> systemd-network is pretty dope compared to that
<andi-> It is most likely a bug and a very odd one.. I'm trying to get some time to debug this but $RL and $dayjob don't help there
<andi-> we should probably default to networkd soon to uncover all the bugs and make it critical for all companies running NixOS...
<andi-> evil master plan 🤔
<aleph-> Heh
<cransom> if we could work in some kind of kickback from systemd, that would be ideal.
<andi-> :D
aleph- has quit [Quit: WeeChat info:version]
aleph- has joined #nixos-on-your-router
<aleph-> andi-: So what does networkd get me?
* aleph- doesn't really care too much as long as he doesn't have to edit his router config too much
<andi-> aleph-: warm fuzzy declarative feeling
<andi-> No more racy scripts that run some time during boot.
<andi-> It also gets you the best dhcpv6 client experience I have seen in open source systems so far. It gets a lot right.
<NinjaTrappeur> heeeh, I wouldn't go that far as "no racy shennanigans anymore". Definitely a step on the right direction though :) It makes the DHCP and v6 RA config much simpler in my experience as well.
<andi-> The racy shit I saw with several thousand VLANs is fixed in the latest stable version.
<andi-> I want more introspection / a Prometheus endpoint next
<NinjaTrappeur> What kind of prometheus data?
<NinjaTrappeur> s/prometheus/metric/g
<andi-> Mostly for dhcpv6: Lease lifetimes, retries, timeouts, next hop reachability
<andi-> Also I would like networkd to write somewhere (public) what prefixes it currently manages on each interface and what the routes learned from next hop are. Reality often doesn't match with what is configured.
<andi-> And once that is done maybe a dhcpv6 server in networkd.
<andi-> So give it another 3 years.
<andi-> If anyone is hiring to work on networkd: I am in!
<NinjaTrappeur> Nice.
<NinjaTrappeur> I sadly do not own a business, can't do that.
<andi-> NinjaTrappeur: come on! Just trade a few kidneys ;-)
<NinjaTrappeur> :P
NinjaTrappeur has quit [Quit: WeeChat 2.8]
NinjaTrappeur has joined #nixos-on-your-router
superherointj_ has joined #nixos-on-your-router
superherointj_ has quit [Client Quit]
superherointj has quit [Quit: Leaving]