about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlyssa Ross <hi@alyssa.is>2022-01-20 18:21:56 +0000
committerAlyssa Ross <hi@alyssa.is>2022-03-06 11:47:29 +0000
commit70d3697f8c913b25e4632cb483834031c25fd1a1 (patch)
tree071ad55daf69e1b379c3beadb4a0b42cad098ad8
parent8f176cfe2c775dbb9959e8767eb856e0d3018f88 (diff)
downloadnixlib-70d3697f8c913b25e4632cb483834031c25fd1a1.tar
nixlib-70d3697f8c913b25e4632cb483834031c25fd1a1.tar.gz
nixlib-70d3697f8c913b25e4632cb483834031c25fd1a1.tar.bz2
nixlib-70d3697f8c913b25e4632cb483834031c25fd1a1.tar.lz
nixlib-70d3697f8c913b25e4632cb483834031c25fd1a1.tar.xz
nixlib-70d3697f8c913b25e4632cb483834031c25fd1a1.tar.zst
nixlib-70d3697f8c913b25e4632cb483834031c25fd1a1.zip
nixos/resolvconf: allow disabling
For systems without internet connections, it doesn't make sense to
require the existence of an /etc/resolv.conf file to disable
resolvconf, so let's expose networking.resolveconf.enable as a public
option that can be set to false.
-rw-r--r--nixos/modules/config/resolvconf.nix6
1 files changed, 2 insertions, 4 deletions
diff --git a/nixos/modules/config/resolvconf.nix b/nixos/modules/config/resolvconf.nix
index cd0ed491383c..4499481811fd 100644
--- a/nixos/modules/config/resolvconf.nix
+++ b/nixos/modules/config/resolvconf.nix
@@ -47,8 +47,8 @@ in
 
       enable = mkOption {
         type = types.bool;
-        default = false;
-        internal = true;
+        default = !(config.environment.etc ? "resolv.conf");
+        defaultText = literalExpression ''!(config.environment.etc ? "resolv.conf")'';
         description = ''
           DNS configuration is managed by resolvconf.
         '';
@@ -110,8 +110,6 @@ in
 
   config = mkMerge [
     {
-      networking.resolvconf.enable = !(config.environment.etc ? "resolv.conf");
-
       environment.etc."resolvconf.conf".text =
         if !cfg.enable then
           # Force-stop any attempts to use resolvconf