!tCyGickeVqkHsYjWnh:nixos.org

NixOS Networking

914 Members
Declaratively manage your switching, routing, wireless, tunneling and more.265 Servers

Load older messages


SenderMessageTime
17 Jun 2025
@charles:computer.surgeryCharlesi'm reminded of this article i just saw like 10 minutes ago https://hackaday.com/2025/06/16/an-open-source-justification-for-usb-cable-paranoia/17:07:14
@raitobezarius:matrix.orgraitobezarius
In reply to @charles:computer.surgery
i'm reminded of this article i just saw like 10 minutes ago https://hackaday.com/2025/06/16/an-open-source-justification-for-usb-cable-paranoia/
https://shop.hak5.org/
18:02:30
@autiboy:matrix.mautiweb.netAutiboyHas anyone used NixOS to provision mikrotik routers?18:04:09
@zenware:matrix.orgzenware
In reply to @zhaofeng:zhaofeng.li
so you can add some latency that mysteriously appears every other Saturday at 1am? 😈 apart from that, one actually useful thing I can think of is running tailscale on it to provide resilient OOB access to the switches/server IPMI/etc
At best it provides side-band access, out-of-band requires different communication infrastructure. e.g. Wireline/POTS, Radio, ... Such that if your SFP failed, you would still be able to access that system. While, it is kind of cool, by running inside the SFP you're practically more "in-band" than just a cable itself.
19:39:01
@plantfan27:matrix.orgplantfan27 joined the room.21:38:05
18 Jun 2025
@zeromute:matrix.org@zeromute:matrix.org joined the room.00:52:32
@hexa:lossy.networkhexa
diff --git a/nixos/modules/config/resolvconf.nix b/nixos/modules/config/resolvconf.nix
index f9c9d04b3fbe..79d3b2043148 100644
--- a/nixos/modules/config/resolvconf.nix
+++ b/nixos/modules/config/resolvconf.nix
@@ -158,6 +158,10 @@ in
 
   config = lib.mkMerge [
     {
+      warnings = lib.optionals (!cfg.enable && cfg.useLocalResolver) ''
+        The resolvconf module was instructed to configure the local resolver (127.0.0.1, ::1) in /etc/resolv.conf, but resolvconf was disabled.
+      '';
+
       environment.etc."resolvconf.conf".text =
         if !cfg.enable then
           # Force-stop any attempts to use resolvconf
06:40:23
@hexa:lossy.networkhexa emily: roast me 06:40:27
@hexa:lossy.networkhexa(while I take a nap)06:40:32
@emilazy:matrix.orgemily
In reply to @hexa:lossy.network
emily: roast me
do we have precedent for this kind of thing? I feel like it's normal for modules to configure defaults for other modules that might not be enabled (and in general to expect that you can set foo.X harmlessly if !foo.enable). I feel like it would be better for the resolver service modules to either get out of the game of setting the local resolver entirely or to explicitly turn on resolvconf to cause an explicit conflict
13:43:19
@emilazy:matrix.orgemily(or we could move the setting out of resolvconf and have the resolved module respect it but that might be tricky)13:43:44
@alina:kescher.at@alina:kescher.atcan someone please give me some feedback for how to deal with unbound's broken upstream? https://github.com/NixOS/nixpkgs/pull/41791717:49:03
@alina:kescher.at@alina:kescher.atand my technically this is also my first nixpkgs PR because i have the tendency to rather not submit things that aren't entirely perfect, which i want to get rid off - i have like 10 different projects that are all 90% finished that i still want to upstream17:49:04
@alina:kescher.at@alina:kescher.at* and technically this is also my first nixpkgs PR because i have the tendency to rather not submit things that aren't entirely perfect, which i want to get rid off - i have like 10 different projects that are all 90% finished that i still want to upstream17:49:12
@qyliss:fairydust.spaceAlyssa Ross
In reply to @alina:kescher.at
can someone please give me some feedback for how to deal with unbound's broken upstream?
https://github.com/NixOS/nixpkgs/pull/417917
Contacting them is best. Looking at what other distros that try to stay up to date (like Fedora) do can also be helpful. You can find links to other distros' package builds using Repology.
17:51:15
@qyliss:fairydust.spaceAlyssa RossHave you checked whether unbound HEAD still needs this old version?17:52:07
@qyliss:fairydust.spaceAlyssa RossSometimes we can just backport a change that makes it compatible with new versions.17:52:30
@alina:kescher.at@alina:kescher.ati assume so, since that feature was only introduced in 1.22.0 while we are now at 1.23.018:22:17
@alina:kescher.at@alina:kescher.atbut i'm having a hard time making sense of that huge autoconfigure mess18:22:36
@alina:kescher.at@alina:kescher.atthis is so fun, though i'm still a bit scared of messing up regarding social conventions around contributing to open source projects18:37:50
@hexa:lossy.networkhexaI think it is a super reasonable use case to use a full-blown resolver locally, so I'm opposed to removing them from the default resolver list18:48:08
@hexa:lossy.networkhexaand colocating resolved with one of these should make some noise, because I don't believe people set those up together intentionally.18:49:40
19 Jun 2025
@emilazy:matrix.orgemily

right, I am just not sure if services.foo.enable is the place to make the decision about the local resolver, since there are reasons you could want to run unbound or whatever without using it as the local resolver. (and indeed services.unbound.resolveLocalQueries is its own separate toggle albeit on by default)

but I think that if we want to keep that behaviour, then the modules should set networking.resolvconf.enable = mkDefault true; in addition to the current networking.resolvconf.useLocalResolver = mkDefault true;, and then we should ensure that there's an explicit conflict between networking.resolvconf.enable and services.resolved.enable. then you still have an escape hatch but they explicitly express that they expect to be used with resolvconf and we'd get a proper conflict error without the weirdness of looking at networking.resolvconf.useLocalResolver even when the module is turning itself off.

(TBH, I find the !(config.environment.etc ? "resolv.conf") default for networking.resolvconf.enable questionable in general, it's a bit magical/implicit for my tastes.)

(FWIW I don't think that having systemd-resolved front a local resolver is that weird or bad though, so it seems like it would also be fine to lift it to networking.useLocalResolver and add support to the resolved module. like I grant that systemd-resolved is not necessarily great software, but I don't think "run a local recursive resolver, but I do also want mDNS domains to work and my normal-DNS resolver doesn't handle that" is that weird a use case – that kind of thing is why systemd-resolved runs a stub listener at all. I agree that we don't want situations where people expect systemd-resolved to be disabled but it isn't, though)

10:29:11
@emilazy:matrix.orgemily the question is just whether the recursive resolver modules are expressing the preference "by default, this should be the default resolver for the system" or "if you're using resolvconf, this should be the default resolver for the system" 10:29:55
@emilazy:matrix.orgemily * the question is just whether the recursive resolver modules are expressing the preference "by default, this should be the default resolver for the system, configured by resolvconf" or "if you're using resolvconf, this should be the default resolver for the system" 10:30:12
@emilazy:matrix.orgemily currently by omitting networking.resolvconf.enable they're expressing the latter, which might not be a thing that makes sense to express and led to your surprise 10:30:33
@lgcl:lgcl.delgcl (she/they) changed their display name from lgcl (they/them) to lgcl (she/they).18:08:53
@zhaofeng:zhaofeng.liZhaofeng Li

I am just not sure if services.foo.enable is the place to make the decision about the local resolver, since there are reasons you could want to run unbound or whatever without using it as the local resolver

Same energy as caddy trying to install the self-signed CA into the local trust store by default if it's enabled - I was surprised and a bit annoyed by the behavior

19:16:07
@louis2747:matrix.org@louis2747:matrix.org left the room.23:21:06
20 Jun 2025
@skorpy:entropia.deskorpy (she/her) changed their display name from skorpy 🏳️‍⚧️ to skorpy (she/her or none) 🏳️‍⚧️.14:19:09

Show newer messages


Back to Room ListRoom Version: 6