2024-08-09 20:23:44 -04:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}: let
|
|
|
|
cfg = config.ar.home;
|
|
|
|
in {
|
|
|
|
config = lib.mkIf cfg.services.swayosd.enable {
|
|
|
|
home.packages = with pkgs; [
|
|
|
|
swayosd
|
|
|
|
];
|
|
|
|
|
|
|
|
services.swayosd = {
|
|
|
|
enable = lib.mkDefault true;
|
|
|
|
stylePath = "${config.xdg.configHome}/swayosd/style.css";
|
|
|
|
};
|
|
|
|
|
|
|
|
systemd.user.services.swayosd = {
|
2024-08-12 10:17:21 -04:00
|
|
|
Install.WantedBy = lib.mkForce (lib.optional (cfg.desktop.hyprland.enable) "hyprland-session.target" ++ lib.optional (cfg.desktop.sway.enable) "sway-session.target");
|
2024-08-11 23:43:48 -04:00
|
|
|
Service.Restart = lib.mkForce "no";
|
2024-08-12 10:17:21 -04:00
|
|
|
Unit.BindsTo = lib.optional (cfg.desktop.hyprland.enable) "hyprland-session.target" ++ lib.optional (cfg.desktop.sway.enable) "sway-session.target";
|
2024-08-09 20:23:44 -04:00
|
|
|
};
|
|
|
|
|
|
|
|
xdg.configFile."swayosd/style.css" = {
|
|
|
|
text = ''
|
|
|
|
window#osd {
|
|
|
|
padding: 12px 20px;
|
|
|
|
border-radius: ${toString cfg.theme.borderRadius}px;
|
|
|
|
border: 4px solid alpha(${cfg.theme.colors.primary}, 0.8);
|
|
|
|
background: alpha(${cfg.theme.colors.background}, 0.8);
|
|
|
|
}
|
|
|
|
|
|
|
|
window#osd #container {
|
|
|
|
margin: 16px;
|
|
|
|
}
|
|
|
|
|
|
|
|
window#osd image,
|
|
|
|
window#osd label {
|
|
|
|
color: ${cfg.theme.colors.secondary};
|
|
|
|
}
|
|
|
|
|
|
|
|
window#osd progressbar:disabled,
|
|
|
|
window#osd image:disabled {
|
|
|
|
opacity: 0.5;
|
|
|
|
}
|
|
|
|
|
|
|
|
window#osd progressbar {
|
|
|
|
min-height: 6px;
|
|
|
|
border-radius: 999px;
|
|
|
|
background: transparent;
|
|
|
|
border: none;
|
|
|
|
}
|
|
|
|
|
|
|
|
window#osd trough {
|
|
|
|
min-height: inherit;
|
|
|
|
border-radius: inherit;
|
|
|
|
border: none;
|
|
|
|
background: alpha(${cfg.theme.colors.secondary}, 0.5);
|
|
|
|
}
|
|
|
|
|
|
|
|
window#osd progress {
|
|
|
|
min-height: inherit;
|
|
|
|
border-radius: inherit;
|
|
|
|
border: none;
|
|
|
|
background: ${cfg.theme.colors.secondary};
|
|
|
|
}
|
|
|
|
'';
|
|
|
|
|
|
|
|
onChange = ''
|
|
|
|
${lib.getExe' pkgs.systemd "systemctl"} restart --user swayosd
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|