2024-04-05 18:06:32 +00:00
|
|
|
{
|
2024-06-09 20:40:50 +00:00
|
|
|
osConfig,
|
|
|
|
pkgs,
|
|
|
|
lib,
|
|
|
|
...
|
|
|
|
}: let
|
|
|
|
inherit (lib) mkIf;
|
|
|
|
|
2024-07-26 23:07:07 +00:00
|
|
|
hyprPkgs = import ./packages {inherit pkgs;};
|
2024-06-09 20:40:50 +00:00
|
|
|
|
2024-06-22 12:15:25 +00:00
|
|
|
# TODO: Switch to flake
|
|
|
|
hyprlandPkg = pkgs.hyprland;
|
|
|
|
xdgDesktopPortalHyprlandPkg = pkgs.xdg-desktop-portal-hyprland;
|
|
|
|
|
2024-06-09 20:40:50 +00:00
|
|
|
cfg = osConfig.myOptions.home-manager.wms.hyprland;
|
|
|
|
in {
|
|
|
|
imports = [
|
2024-07-26 23:07:07 +00:00
|
|
|
./config
|
2024-06-09 20:40:50 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
config = mkIf cfg.enable {
|
2024-06-10 13:11:49 +00:00
|
|
|
home.packages = [
|
|
|
|
hyprPkgs.hyprland-move-window
|
2024-06-21 10:19:03 +00:00
|
|
|
hyprPkgs.hyprland-screenshot
|
2024-06-21 13:59:11 +00:00
|
|
|
hyprPkgs.quick-record
|
2024-06-21 14:13:23 +00:00
|
|
|
hyprPkgs.toggle-fake-fullscreen
|
2024-06-21 14:19:55 +00:00
|
|
|
hyprPkgs.toggle-notifications
|
2024-06-22 04:56:38 +00:00
|
|
|
hyprPkgs.toggle-idle
|
2024-06-21 14:13:23 +00:00
|
|
|
hyprPkgs.brightness
|
2024-06-10 13:11:49 +00:00
|
|
|
pkgs.brightnessctl
|
2024-06-21 10:19:03 +00:00
|
|
|
pkgs.hyprpicker
|
2024-06-09 20:40:50 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
wayland.windowManager.hyprland = {
|
2024-04-05 18:06:32 +00:00
|
|
|
enable = true;
|
2024-06-09 20:40:50 +00:00
|
|
|
xwayland.enable = true;
|
2024-06-22 12:15:25 +00:00
|
|
|
package = hyprlandPkg;
|
2024-06-09 20:40:50 +00:00
|
|
|
systemd = {
|
|
|
|
enable = true;
|
|
|
|
variables = ["--all"];
|
|
|
|
};
|
2024-04-05 18:06:32 +00:00
|
|
|
};
|
2024-06-22 12:15:25 +00:00
|
|
|
|
|
|
|
xdg.portal = {
|
|
|
|
enable = true;
|
|
|
|
configPackages = [hyprlandPkg];
|
|
|
|
extraPortals = [
|
|
|
|
xdgDesktopPortalHyprlandPkg
|
|
|
|
];
|
|
|
|
};
|
2024-04-05 18:06:32 +00:00
|
|
|
};
|
2024-03-23 22:06:58 +00:00
|
|
|
}
|