From 89ecd03131603978784cd28bb531e5d727f7cda8 Mon Sep 17 00:00:00 2001 From: Philipp Schuster Date: Fri, 4 Oct 2024 09:37:00 +0200 Subject: [PATCH 1/3] teamviewer: format file Streamline the formatting to match other files. --- .../modules/services/monitoring/teamviewer.nix | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/nixos/modules/services/monitoring/teamviewer.nix b/nixos/modules/services/monitoring/teamviewer.nix index 360cdd1c6b6a..d10aa953800a 100644 --- a/nixos/modules/services/monitoring/teamviewer.nix +++ b/nixos/modules/services/monitoring/teamviewer.nix @@ -3,25 +3,14 @@ with lib; let - cfg = config.services.teamviewer; - in - { - - ###### interface - options = { - services.teamviewer.enable = mkEnableOption "TeamViewer daemon"; - }; - ###### implementation - config = mkIf (cfg.enable) { - environment.systemPackages = [ pkgs.teamviewer ]; services.dbus.packages = [ pkgs.teamviewer ]; @@ -31,7 +20,11 @@ in wantedBy = [ "multi-user.target" ]; wants = [ "network-online.target" ]; - after = [ "network-online.target" "network.target" "dbus.service" ]; + after = [ + "network-online.target" + "network.target" + "dbus.service" + ]; requires = [ "dbus.service" ]; preStart = "mkdir -pv /var/lib/teamviewer /var/log/teamviewer"; @@ -46,5 +39,4 @@ in }; }; }; - } From 2928912a7c743763ac790aa69f3759b70f20b5cc Mon Sep 17 00:00:00 2001 From: Philipp Schuster Date: Fri, 4 Oct 2024 09:37:33 +0200 Subject: [PATCH 2/3] teamviewer: remove "with lib;" --- nixos/modules/services/monitoring/teamviewer.nix | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/monitoring/teamviewer.nix b/nixos/modules/services/monitoring/teamviewer.nix index d10aa953800a..05212f2c0c66 100644 --- a/nixos/modules/services/monitoring/teamviewer.nix +++ b/nixos/modules/services/monitoring/teamviewer.nix @@ -1,16 +1,14 @@ { config, lib, pkgs, ... }: -with lib; - let cfg = config.services.teamviewer; in { options = { - services.teamviewer.enable = mkEnableOption "TeamViewer daemon"; + services.teamviewer.enable = lib.mkEnableOption "TeamViewer daemon"; }; - config = mkIf (cfg.enable) { + config = lib.mkIf (cfg.enable) { environment.systemPackages = [ pkgs.teamviewer ]; services.dbus.packages = [ pkgs.teamviewer ]; From 04dbbd4365155613fbacd3c9f1ef79230c7e721a Mon Sep 17 00:00:00 2001 From: Philipp Schuster Date: Fri, 4 Oct 2024 09:41:05 +0200 Subject: [PATCH 3/3] teamviewer: introduce services.teamviewer.package option Teamviewer only works with its daemon. Therefore, having programs.teamviewer.enable is not the design currently chosen to add teamviewer. Instead, the servies.teamviewer.enable option enables both the daemon and the system package. --- nixos/modules/services/monitoring/teamviewer.nix | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/nixos/modules/services/monitoring/teamviewer.nix b/nixos/modules/services/monitoring/teamviewer.nix index 05212f2c0c66..45bb45a53c1b 100644 --- a/nixos/modules/services/monitoring/teamviewer.nix +++ b/nixos/modules/services/monitoring/teamviewer.nix @@ -5,13 +5,16 @@ let in { options = { - services.teamviewer.enable = lib.mkEnableOption "TeamViewer daemon"; + services.teamviewer = { + enable = lib.mkEnableOption "TeamViewer daemon & system package"; + package = lib.mkPackageOption pkgs "teamviewer" { }; + }; }; config = lib.mkIf (cfg.enable) { - environment.systemPackages = [ pkgs.teamviewer ]; + environment.systemPackages = [ cfg.package ]; - services.dbus.packages = [ pkgs.teamviewer ]; + services.dbus.packages = [ cfg.package ]; systemd.services.teamviewerd = { description = "TeamViewer remote control daemon"; @@ -30,7 +33,7 @@ in startLimitBurst = 10; serviceConfig = { Type = "simple"; - ExecStart = "${pkgs.teamviewer}/bin/teamviewerd -f"; + ExecStart = "${cfg.package}/bin/teamviewerd -f"; PIDFile = "/run/teamviewerd.pid"; ExecReload = "${pkgs.coreutils}/bin/kill -HUP $MAINPID"; Restart = "on-abort";