nixdots/home/programs/graphical/wms/hyprland/default.nix

53 lines
1 KiB
Nix
Raw Normal View History

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
# 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
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;
package = hyprlandPkg;
2024-06-09 20:40:50 +00:00
systemd = {
enable = true;
variables = ["--all"];
};
2024-04-05 18:06:32 +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
}