diff options
author | Bjørn Forsman <bjorn.forsman@gmail.com> | 2017-01-01 16:44:32 +0100 |
---|---|---|
committer | Bjørn Forsman <bjorn.forsman@gmail.com> | 2017-01-02 19:14:06 +0100 |
commit | cb9195b7bcde7ec8a2d5fa99df0a93afacd5c537 (patch) | |
tree | 6a6f3698c34bc92aacf816442fae1ce44420416c /nixos/modules/tasks/network-interfaces.nix | |
parent | 49d444416cf88dad03da0ec71573cd9747245581 (diff) |
nixos: provide /etc/hostname
/etc/hostname is the file used by hostnamectl(1) and the
org.freedesktop.hostname1 dbus service (both provided by systemd) to get
the "static hostname". Better provide it so that users of those
tools/services get a proper hostname.
An example of an issue created by the lack of /etc/hostname is that the
bluetooth stack on NixOS identifies itself to peers as "BlueZ $VERSION"
instead of the hostname.
References:
https://www.freedesktop.org/software/systemd/man/hostname.html
Changes v1 -> v2:
* ensure /etc/hostname ends with a newline
Diffstat (limited to 'nixos/modules/tasks/network-interfaces.nix')
-rw-r--r-- | nixos/modules/tasks/network-interfaces.nix | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/nixos/modules/tasks/network-interfaces.nix b/nixos/modules/tasks/network-interfaces.nix index 74f7e5fcc2c3..83d9854d3517 100644 --- a/nixos/modules/tasks/network-interfaces.nix +++ b/nixos/modules/tasks/network-interfaces.nix @@ -921,6 +921,13 @@ in ''; }; + # static hostname configuration needed for hostnamectl and the + # org.freedesktop.hostname1 dbus service (both provided by systemd) + environment.etc."hostname" = mkIf (cfg.hostName != "") + { + text = cfg.hostName + "\n"; + }; + environment.systemPackages = [ pkgs.host pkgs.iproute |