home-manager/modules/services/taffybar.nix

50 lines
1.1 KiB
Nix
Raw Normal View History

2017-01-07 18:16:26 +00:00
{ config, lib, pkgs, ... }:
with lib;
let
cfg = config.services.taffybar;
2020-02-01 23:39:17 +00:00
in {
meta.maintainers = [ maintainers.rycee ];
2017-01-07 18:16:26 +00:00
options = {
services.taffybar = {
enable = mkEnableOption "Taffybar";
package = mkOption {
default = pkgs.taffybar;
defaultText = literalExpression "pkgs.taffybar";
2017-01-07 18:16:26 +00:00
type = types.package;
example = literalExpression "pkgs.taffybar";
2017-01-07 18:16:26 +00:00
description = "The package to use for the Taffybar binary.";
};
};
};
config = mkIf config.services.taffybar.enable {
2022-04-24 14:25:54 +00:00
assertions = [
(hm.assertions.assertPlatform "services.taffybar" pkgs platforms.linux)
];
2017-01-07 18:16:26 +00:00
systemd.user.services.taffybar = {
2018-09-20 22:51:23 +00:00
Unit = {
Description = "Taffybar desktop bar";
PartOf = [ "tray.target" ];
2018-09-20 22:51:23 +00:00
};
Service = {
Type = "dbus";
BusName = "org.taffybar.Bar";
2018-09-20 22:51:23 +00:00
ExecStart = "${cfg.package}/bin/taffybar";
Restart = "on-failure";
2018-09-20 22:51:23 +00:00
};
Install = { WantedBy = [ "tray.target" ]; };
2017-01-07 18:16:26 +00:00
};
xsession.importedVariables = [ "GDK_PIXBUF_MODULE_FILE" ];
2017-01-07 18:16:26 +00:00
};
}