A shortcoming of the Arroyo Systems Management data model is that I can't have modules in the same file with different roles: If I were to install Syncthing's tray files in the Syncthing page, it pulls in a whole Qt and KDE Plasma environment on to my server! So I define it here. open threads
So this is the tray module for Syncthing which is installed in My NixOS configuration for endpoints.
{ lib, pkgs, ... }:
{
services.syncthing.tray.enable = true;
services.syncthing.tray.package = pkgs.syncthingtray;
home.packages = [ pkgs.syncthingtray ];
}I modify the systemd configuration to wait for the Plasma tray to become available since there is no tray.target which the default configuration relies on.