67 lines
1.4 KiB
Nix
67 lines
1.4 KiB
Nix
{
|
|
config,
|
|
pkgs,
|
|
lib,
|
|
inputs,
|
|
...
|
|
}:
|
|
|
|
let
|
|
generate-colors =
|
|
colors: with colors; ''
|
|
$base00: #${base00};
|
|
$base01: #${base01};
|
|
$base02: #${base02};
|
|
$base03: #${base03};
|
|
$base04: #${base04};
|
|
$base05: #${base05};
|
|
$base06: #${base06};
|
|
$base07: #${base07};
|
|
$base08: #${base08};
|
|
$base09: #${base09};
|
|
$base0A: #${base0A};
|
|
$base0B: #${base0B};
|
|
$base0C: #${base0C};
|
|
$base0D: #${base0D};
|
|
$base0E: #${base0E};
|
|
$base0F: #${base0F};
|
|
'';
|
|
in
|
|
{
|
|
options.modules.ags = {
|
|
enable = lib.mkEnableOption "Aylur's GTK Shell with optional Stylix support";
|
|
full = lib.mkOption {
|
|
type = lib.types.bool;
|
|
default = false;
|
|
description = "Enable all components (AstalBattery, AstalPowerProfiles etc.)";
|
|
};
|
|
};
|
|
|
|
config = lib.mkIf config.modules.ags.enable {
|
|
programs.ags = {
|
|
enable = true;
|
|
extraPackages =
|
|
if config.modules.ags.full then
|
|
with inputs.ags.packages.${pkgs.system};
|
|
[
|
|
apps
|
|
battery
|
|
bluetooth
|
|
greet
|
|
hyprland
|
|
mpris
|
|
network
|
|
notifd
|
|
powerprofiles
|
|
tray
|
|
wireplumber
|
|
]
|
|
else
|
|
[ ];
|
|
};
|
|
|
|
home.file.".config/theme_colors.scss".text =
|
|
if config.modules.stylix.enable then generate-colors config.lib.stylix.colors else null;
|
|
};
|
|
}
|