diff options
author | Nikolay Amiantov <ab@fmap.me> | 2019-06-10 18:29:13 +0300 |
---|---|---|
committer | Nikolay Amiantov <ab@fmap.me> | 2019-06-10 18:54:32 +0300 |
commit | 33b7e5f6c7d82c3447e4dd9aea235fca27bd5cc0 (patch) | |
tree | 7ff3b8c181b1f23fc405ff9c5f2dc2a7c81e8ecf /nixos | |
parent | 68de116eb49de02813d7f6d34e6c5f2b69729a69 (diff) | |
download | nixpkgs-33b7e5f6c7d82c3447e4dd9aea235fca27bd5cc0.tar nixpkgs-33b7e5f6c7d82c3447e4dd9aea235fca27bd5cc0.tar.gz nixpkgs-33b7e5f6c7d82c3447e4dd9aea235fca27bd5cc0.tar.bz2 nixpkgs-33b7e5f6c7d82c3447e4dd9aea235fca27bd5cc0.tar.lz nixpkgs-33b7e5f6c7d82c3447e4dd9aea235fca27bd5cc0.tar.xz nixpkgs-33b7e5f6c7d82c3447e4dd9aea235fca27bd5cc0.tar.zst nixpkgs-33b7e5f6c7d82c3447e4dd9aea235fca27bd5cc0.zip |
networkmanager service: fix simultaneous append and insert of nameservers
Before only one of them could work at the same time.
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/modules/services/networking/networkmanager.nix | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/nixos/modules/services/networking/networkmanager.nix b/nixos/modules/services/networking/networkmanager.nix index 5edcaa45fce..dcae09c532b 100644 --- a/nixos/modules/services/networking/networkmanager.nix +++ b/nixos/modules/services/networking/networkmanager.nix @@ -64,19 +64,19 @@ let }); ''; - ns = xs: writeText "nameservers" ( + ns = xs: pkgs.writeText "nameservers" ( concatStrings (map (s: "nameserver ${s}\n") xs) ); - overrideNameserversScript = writeScript "02overridedns" '' + overrideNameserversScript = pkgs.writeScript "02overridedns" '' #!/bin/sh - tmp=`${coreutils}/bin/mktemp` - ${gnused}/bin/sed '/nameserver /d' /etc/resolv.conf > $tmp - ${gnugrep}/bin/grep 'nameserver ' /etc/resolv.conf | \ - ${gnugrep}/bin/grep -vf ${ns (cfg.appendNameservers ++ cfg.insertNameservers)} > $tmp.ns - ${optionalString (cfg.appendNameservers != []) "${coreutils}/bin/cat $tmp $tmp.ns ${ns cfg.appendNameservers} > /etc/resolv.conf"} - ${optionalString (cfg.insertNameservers != []) "${coreutils}/bin/cat $tmp ${ns cfg.insertNameservers} $tmp.ns > /etc/resolv.conf"} - ${coreutils}/bin/rm -f $tmp $tmp.ns + PATH=${with pkgs; makeBinPath [ gnused gnugrep coreutils ]} + tmp=`mktemp` + sed '/nameserver /d' /etc/resolv.conf > $tmp + grep 'nameserver ' /etc/resolv.conf | \ + grep -vf ${ns (cfg.appendNameservers ++ cfg.insertNameservers)} > $tmp.ns + cat $tmp ${ns cfg.insertNameservers} $tmp.ns ${ns cfg.appendNameservers} > /etc/resolv.conf + rm -f $tmp $tmp.ns ''; dispatcherTypesSubdirMap = { |