1{ config, lib, pkgs, ... }:
2
3with lib;
4
5{
6
7 options = {
8
9 services.resolved.enable = mkOption {
10 default = false;
11 type = types.bool;
12 description = ''
13 Whether to enable the systemd DNS resolver daemon.
14 '';
15 };
16
17 };
18
19 config = mkIf config.services.resolved.enable {
20
21 systemd.additionalUpstreamSystemUnits = [ "systemd-resolved.service" ];
22
23 systemd.services.systemd-resolved = {
24 wantedBy = [ "multi-user.target" ];
25 restartTriggers = [ config.environment.etc."systemd/resolved.conf".source ];
26 };
27
28 environment.etc."systemd/resolved.conf".text = ''
29 [Resolve]
30 DNS=${concatStringsSep " " config.networking.nameservers}
31 '';
32
33 };
34
35}