mirror of
https://github.com/callumio/nixfiles.git
synced 2025-12-17 03:29:20 +00:00
overhaul hypr, waybar, add trayscale, etc
This commit is contained in:
parent
af5a73e5df
commit
9bb638131b
12 changed files with 189 additions and 47 deletions
40
modules/trayscale.nix
Normal file
40
modules/trayscale.nix
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
with lib; let
|
||||
cfg = config.services.trayscale;
|
||||
in {
|
||||
options.services.trayscale = {
|
||||
enable =
|
||||
mkEnableOption
|
||||
"An unofficial GUI wrapper around the Tailscale CLI client.";
|
||||
package = mkPackageOption pkgs "trayscale" {};
|
||||
hideWindow = mkOption {
|
||||
description = "Whether to hide the trayscale window on startup.";
|
||||
type = types.bool;
|
||||
default = true;
|
||||
};
|
||||
};
|
||||
|
||||
config = mkIf cfg.enable {
|
||||
assertions = [
|
||||
(hm.assertions.assertPlatform "services.trayscale" pkgs platforms.linux)
|
||||
];
|
||||
|
||||
systemd.user.services.trayscale = {
|
||||
Unit = {
|
||||
Description = "An unofficial GUI wrapper around the Tailscale CLI client";
|
||||
Requires = ["tray.target"];
|
||||
After = ["graphical-session-pre.target" "tray.target"];
|
||||
PartOf = ["graphical-session.target"];
|
||||
};
|
||||
Install = {WantedBy = ["graphical-session.target"];};
|
||||
Service.ExecStart =
|
||||
toString (["${cfg.package}/bin/trayscale"]
|
||||
++ optional cfg.hideWindow "--hide-window");
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue