!tCyGickeVqkHsYjWnh:nixos.org

NixOS Networking

889 Members
Declaratively manage your switching, routing, wireless, tunneling and more.260 Servers

Load older messages


SenderMessageTime
29 Jul 2025
@emilazy:matrix.orgemily looks like IfState needs jsonschema, pyroute2, pyyaml, setproctitle, and pyroute2 has no further deps… I think plausible it'll work with python3Minimal since it is systems programmy and presumably has no use for a TLS library or such 14:36:43
@emilazy:matrix.orgemily please, this PR exists because of a conversation I had with DavHau and mweinelt in the staging room about using python3Minimal for stdenv hooks… 14:37:09
@emilazy:matrix.orgemilyand it says that's the motivation in the description14:37:12
@emilazy:matrix.orgemilyI'm not just making up that being the plan :P14:37:34
@sandro:supersandro.deSandro 🐧as long as you don't leak them in nix-shell 14:37:40
@sandro:supersandro.deSandro 🐧* as long as you don't leak it in nix-shell 14:37:46
@emilazy:matrix.orgemilywe had regressions from overfancy Bash optimizations and agreed that slimming down Python to allow its use in hooks would be better14:37:52
@emilazy:matrix.orgemilythe hooks can just be Bash stubs that call out to a wrapped Python14:38:02
@emilazy:matrix.orgemily(and that can be abstracted)14:38:10
@emilazy:matrix.orgemilyshouldn't be any leak14:38:11
@emilazy:matrix.orgemily I wouldn't want to use python3Minimal for a random stage 2 application but I think "not bloating initrd by 100 MiB" is a fair use case if it works 14:38:35
@sandro:supersandro.deSandro 🐧lucky, those deps are pretty minimal and don't do import *14:39:04
@sandro:supersandro.deSandro 🐧yeah, exactly 14:39:27
@emilazy:matrix.orgemily (looks like pyroute2 does have Netlink-over-TLS support but uh, I hope IfState isn't using that) 14:39:40
@emilazy:matrix.orgemily (it would need an import ssl making conditional I suppose, so not zero effort) 14:39:53
@hexa:lossy.networkhexawhen would you use Netlink-over-TLS?14:40:13
@emilazy:matrix.orgemily0.1.4 netlink: remote netlink access netlink: SSL/TLS server/client auth support netlink: tcp and unix transports 14:40:24
@hexa:lossy.networkhexathat sounds like exposing it cross host or something weird14:40:25
@emilazy:matrix.orgemilyI mean I guess it's just a protocol…14:40:27
@emilazy:matrix.orgemilynothing's stopping you14:40:30
@emilazy:matrix.orgemilyif you're nuts14:40:32
@emilazy:matrix.orgemilyI bet some HPC cluster is doing crimes like that14:40:48
@sandro:supersandro.deSandro 🐧but do you then want to run the normal ifstate also with python3Minimal? You kinda want to do that as otherwise you have bugs that only exist in initrd and then we have a random application in userland running python3Minimal which we don't really want to 😅14:40:52
@emilazy:matrix.orgemilyit's like the management port on DSA switches!14:40:56
@hexa:lossy.networkhexaas long as it doesn't require any features not covered by it, why not14:41:13
@emilazy:matrix.orgemily stage 1 environment is already moderately different tbf, but yeah I'm not sure. I wouldn't be super mad about python3Minimal in stage 2 for something core like this 14:41:22
@hexa:lossy.networkhexathe use case of having it in initrd makes it preferable14:41:25
@emilazy:matrix.orgemilyI mean really the answer is don't use Python for this layer of the stack14:41:28
@emilazy:matrix.orgemilybut sounds like upstream already knows/is working on that14:41:32
@sandro:supersandro.deSandro 🐧python has nothing for such inbuilt things, so we also need to run all tests and everything with python3Minimal as otherwise we might sneak some bug by14:41:45

Show newer messages


Back to Room ListRoom Version: 6