Remove networking.hostConf option
This PR is part of the networking.* namespace cleanup. We feel that networking.hostConf is rarely used and provides little value compared to using environment.etc."host.conf" directly. Provide sensible default: multi on
This commit is contained in:
parent
724133984f
commit
918c2ca01a
@ -41,19 +41,6 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
networking.hostConf = lib.mkOption {
|
|
||||||
type = types.lines;
|
|
||||||
default = "multi on";
|
|
||||||
example = ''
|
|
||||||
multi on
|
|
||||||
reorder on
|
|
||||||
trim lan
|
|
||||||
'';
|
|
||||||
description = ''
|
|
||||||
The contents of <filename>/etc/host.conf</filename>. See also <citerefentry><refentrytitle>host.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
networking.timeServers = mkOption {
|
networking.timeServers = mkOption {
|
||||||
default = [
|
default = [
|
||||||
"0.nixos.pool.ntp.org"
|
"0.nixos.pool.ntp.org"
|
||||||
@ -186,7 +173,9 @@ in
|
|||||||
'';
|
'';
|
||||||
|
|
||||||
# /etc/host.conf: resolver configuration file
|
# /etc/host.conf: resolver configuration file
|
||||||
"host.conf".text = cfg.hostConf;
|
"host.conf".text = ''
|
||||||
|
multi on
|
||||||
|
'';
|
||||||
|
|
||||||
} // optionalAttrs (pkgs.stdenv.hostPlatform.libc == "glibc") {
|
} // optionalAttrs (pkgs.stdenv.hostPlatform.libc == "glibc") {
|
||||||
# /etc/rpc: RPC program numbers.
|
# /etc/rpc: RPC program numbers.
|
||||||
|
@ -239,6 +239,7 @@ with lib;
|
|||||||
(mkRemovedOptionModule [ "systemd" "generator-packages" ] "Use systemd.packages instead.")
|
(mkRemovedOptionModule [ "systemd" "generator-packages" ] "Use systemd.packages instead.")
|
||||||
(mkRemovedOptionModule [ "fonts" "enableCoreFonts" ] "Use fonts.fonts = [ pkgs.corefonts ]; instead.")
|
(mkRemovedOptionModule [ "fonts" "enableCoreFonts" ] "Use fonts.fonts = [ pkgs.corefonts ]; instead.")
|
||||||
(mkRemovedOptionModule [ "networking" "vpnc" ] "Use environment.etc.\"vpnc/service.conf\" instead.")
|
(mkRemovedOptionModule [ "networking" "vpnc" ] "Use environment.etc.\"vpnc/service.conf\" instead.")
|
||||||
|
(mkRemovedOptionModule [ "networking" "hostConf" ] "Use environment.etc.\"host.conf\" instead.")
|
||||||
|
|
||||||
# ZSH
|
# ZSH
|
||||||
(mkRenamedOptionModule [ "programs" "zsh" "enableSyntaxHighlighting" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
|
(mkRenamedOptionModule [ "programs" "zsh" "enableSyntaxHighlighting" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
|
||||||
|
77
nixos/tests/resolv.nix
Normal file
77
nixos/tests/resolv.nix
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
# Test whether DNS resolving returns multiple records and all address families.
|
||||||
|
import ./make-test-python.nix ({ pkgs, ... } : {
|
||||||
|
name = "resolv";
|
||||||
|
meta = with pkgs.stdenv.lib.maintainers; {
|
||||||
|
maintainers = [ ckauhaus ];
|
||||||
|
};
|
||||||
|
|
||||||
|
nodes.resolv = { ... }: {
|
||||||
|
networking.extraHosts = ''
|
||||||
|
# IPv4 only
|
||||||
|
192.0.2.1 host-ipv4.example.net
|
||||||
|
192.0.2.2 host-ipv4.example.net
|
||||||
|
# IP6 only
|
||||||
|
2001:db8::2:1 host-ipv6.example.net
|
||||||
|
2001:db8::2:2 host-ipv6.example.net
|
||||||
|
# dual stack
|
||||||
|
192.0.2.1 host-dual.example.net
|
||||||
|
192.0.2.2 host-dual.example.net
|
||||||
|
2001:db8::2:1 host-dual.example.net
|
||||||
|
2001:db8::2:2 host-dual.example.net
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
testScript = let
|
||||||
|
getaddrinfo_py = pkgs.writeScript "getaddrinfo.py" ''
|
||||||
|
import socket
|
||||||
|
import sys
|
||||||
|
|
||||||
|
result = set()
|
||||||
|
for gai in socket.getaddrinfo(sys.argv[1], 0):
|
||||||
|
result.add(gai[4][0])
|
||||||
|
|
||||||
|
print(' '.join(sorted(list(result))))
|
||||||
|
'';
|
||||||
|
|
||||||
|
getaddrinfo = "${pkgs.python3.interpreter} ${getaddrinfo_py}";
|
||||||
|
|
||||||
|
in
|
||||||
|
''
|
||||||
|
def compare(test, should, is_):
|
||||||
|
should = should.strip()
|
||||||
|
is_ = is_.strip()
|
||||||
|
resolv.log("{}: expected '{}', actual '{}'".format(test, should, is_))
|
||||||
|
if should == is_:
|
||||||
|
resolv.log("* OK")
|
||||||
|
return True
|
||||||
|
else:
|
||||||
|
resolv.log("* FAILED")
|
||||||
|
return False
|
||||||
|
|
||||||
|
|
||||||
|
start_all()
|
||||||
|
resolv.wait_for_unit("nscd")
|
||||||
|
res = []
|
||||||
|
|
||||||
|
out = resolv.succeed(
|
||||||
|
"${getaddrinfo} host-ipv4.example.net"
|
||||||
|
)
|
||||||
|
res.append(compare("resolve IPv4", "192.0.2.1 192.0.2.2", out))
|
||||||
|
|
||||||
|
out = resolv.succeed(
|
||||||
|
"${getaddrinfo} host-ipv6.example.net"
|
||||||
|
)
|
||||||
|
res.append(compare("resolve IPv6", "2001:db8::2:1 2001:db8::2:2", out))
|
||||||
|
|
||||||
|
out = resolv.succeed(
|
||||||
|
"${getaddrinfo} host-dual.example.net"
|
||||||
|
)
|
||||||
|
res.append(
|
||||||
|
compare(
|
||||||
|
"resolve dual stack", "192.0.2.1 192.0.2.2 2001:db8::2:1 2001:db8::2:2", out
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
|
assert all(res) is True
|
||||||
|
'';
|
||||||
|
})
|
Loading…
Reference in New Issue
Block a user