nixos/nsswitch: add option to configure nssHosts

Enables adding or overriding the default nsswitch hosts in a generic
way for packages without a nixos module.
This commit is contained in:
Daiderd Jordan 2019-02-15 19:22:14 +01:00
parent c400bdaa49
commit 11cd761dbf
No known key found for this signature in database
GPG Key ID: D02435D05B810C96

View File

@ -61,6 +61,15 @@ in {
};
};
system.nssHosts = mkOption {
type = types.listOf types.str;
default = [];
example = [ "mdns" ];
description = ''
List of host entries to configure in <filename>/etc/nsswitch.conf</filename>.
'';
};
};
config = {
@ -85,7 +94,7 @@ in {
group: ${concatStringsSep " " passwdArray}
shadow: ${concatStringsSep " " shadowArray}
hosts: ${concatStringsSep " " hostArray}
hosts: ${concatStringsSep " " config.system.nssHosts}
networks: files
ethers: files
@ -94,6 +103,8 @@ in {
rpc: files
'';
system.nssHosts = hostArray;
# Systemd provides nss-myhostname to ensure that our hostname
# always resolves to a valid IP address. It returns all locally
# configured IP addresses, or ::1 and 127.0.0.2 as