56 lines
1.2 KiB
Nix
56 lines
1.2 KiB
Nix
{
|
|
user ? throw "user argument is required",
|
|
home ? throw "home argument is required",
|
|
}:
|
|
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
inputs,
|
|
system,
|
|
...
|
|
}:
|
|
let
|
|
hmConfig = config.home-manager.users.${user};
|
|
in
|
|
{
|
|
home-manager.users.${user} = {
|
|
imports = [ inputs.ags.homeManagerModules.default ];
|
|
|
|
programs.ags = {
|
|
enable = true;
|
|
configDir = ./config;
|
|
systemd.enable = true;
|
|
|
|
extraPackages = with pkgs; [
|
|
inputs.ags.packages.${system}.hyprland
|
|
inputs.ags.packages.${system}.tray
|
|
inputs.ags.packages.${system}.battery
|
|
sassc
|
|
hyprland
|
|
nixos-icons
|
|
(import ../cliphist/rofi.nix {
|
|
rofi = hmConfig.programs.rofi.finalPackage;
|
|
inherit lib pkgs;
|
|
})
|
|
];
|
|
};
|
|
|
|
theme.template.".config/astal/theme.sass".source = ./theme.sass;
|
|
|
|
systemd.user = {
|
|
services.ags.Unit.After = [ "graphical-session.target" ];
|
|
|
|
targets.tray.Unit = {
|
|
BindsTo = [ "ags.service" ];
|
|
After = [
|
|
"graphical-session.target"
|
|
"ags.service"
|
|
];
|
|
};
|
|
};
|
|
|
|
wayland.windowManager.hyprland.onMonitorChange.services = [ "ags.service" ];
|
|
};
|
|
}
|