From 14422223df36d51b16bbeb64c9e0d81875728066 Mon Sep 17 00:00:00 2001 From: Alexandre Acebedo Date: Sun, 9 Jun 2024 08:53:08 +0200 Subject: [PATCH] playerctl: add daemon service --- nixos/modules/module-list.nix | 1 + .../modules/services/desktops/playerctld.nix | 32 +++++++++++++++++++ 2 files changed, 33 insertions(+) create mode 100644 nixos/modules/services/desktops/playerctld.nix diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix index 3cfdd943b35b..4d227916c499 100644 --- a/nixos/modules/module-list.nix +++ b/nixos/modules/module-list.nix @@ -487,6 +487,7 @@ ./services/desktops/espanso.nix ./services/desktops/flatpak.nix ./services/desktops/geoclue2.nix + ./services/desktops/playerctld.nix ./services/desktops/gnome/at-spi2-core.nix ./services/desktops/gnome/evolution-data-server.nix ./services/desktops/gnome/glib-networking.nix diff --git a/nixos/modules/services/desktops/playerctld.nix b/nixos/modules/services/desktops/playerctld.nix new file mode 100644 index 000000000000..ef4866d75715 --- /dev/null +++ b/nixos/modules/services/desktops/playerctld.nix @@ -0,0 +1,32 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + cfg = config.services.playerctld; +in +{ + options.services.playerctld = { + enable = lib.mkEnableOption "the playerctld daemon"; + + package = lib.mkPackageOption pkgs "playerctl" { }; + }; + + config = lib.mkIf cfg.enable { + environment.systemPackages = [ cfg.package ]; + systemd.user.services.playerctld = { + description = "Playerctld daemon to track media player activity"; + wantedBy = [ "default.target" ]; + + serviceConfig = { + Type = "exec"; + ExecStart = "${cfg.package}/bin/playerctld"; + }; + }; + }; + + meta.maintainers = with lib.maintainers; [ aacebedo ]; +}