oizys/modules/desktop/window-managers/hyprland.nix

83 lines
1.5 KiB
Nix
Raw Normal View History

2024-01-23 11:51:13 -06:00
{
2024-12-12 16:38:33 -06:00
inputs,
2024-01-23 11:51:13 -06:00
pkgs,
2024-01-23 15:50:42 -06:00
config,
2024-12-12 16:38:33 -06:00
lib,
# mkOizysModule,
2024-04-28 09:12:56 -05:00
enabled,
flake,
2024-01-23 11:51:13 -06:00
...
2024-04-28 09:12:56 -05:00
}:
2024-12-12 16:38:33 -06:00
let
inherit (lib) mkEnableOption mkIf;
cfg = config.oizys.hyprland;
in
{
imports = [
inputs.hyprland.nixosModules.default
];
2024-04-28 09:12:56 -05:00
2024-12-12 16:38:33 -06:00
options.oizys.hyprland.enable = mkEnableOption "hyprland";
2024-05-31 14:53:26 -05:00
2024-12-12 16:38:33 -06:00
config = mkIf cfg.enable {
programs.hyprland = enabled;
security.pam.services.swaylock = { };
# Optional, hint electron apps to use wayland:
environment.sessionVariables.NIXOS_OZONE_WL = "1";
2024-05-31 14:53:26 -05:00
2024-12-12 16:38:33 -06:00
environment.systemPackages =
(with pkgs; [
wl-mirror
wlr-randr
kanshi
2024-05-31 14:53:26 -05:00
2024-12-12 16:38:33 -06:00
brightnessctl
udiskie
eww
2024-05-31 14:53:26 -05:00
2024-12-12 16:38:33 -06:00
# notifications
libnotify
mako
2024-05-31 14:53:26 -05:00
2024-12-12 16:38:33 -06:00
# utils
grimblast
ksnip
wl-clipboard
rofi-wayland
pwvucontrol
2024-08-08 10:34:15 -05:00
2024-12-12 16:38:33 -06:00
#hypr ecosystem
hyprlock
hypridle
2024-11-18 14:56:24 -06:00
2024-12-12 16:38:33 -06:00
catppuccin-cursors.mochaDark
2024-07-01 10:43:42 -05:00
2024-12-12 16:38:33 -06:00
# not even clear why I need to add this but ¯\_(ツ)_/¯
kdePackages.qtwayland
2024-10-19 18:07:25 -05:00
2024-12-12 16:38:33 -06:00
])
++ [
(flake.pkg "hyprman")
]
2024-08-13 10:34:23 -05:00
2024-12-12 16:38:33 -06:00
# swww-git is broken
++ (with (flake.pkgs "nixpkgs-wayland"); [
mako
eww
wlr-randr
swww
]);
2024-10-20 12:03:33 -05:00
2024-12-12 16:38:33 -06:00
nixpkgs.overlays = [
(flake.overlay "hyprland-contrib")
# (overlayFrom "nixpkgs-wayland")
# (overlayFrom "hyprland")
];
2024-08-08 14:29:38 -05:00
2024-12-12 16:38:33 -06:00
services.getty = {
extraArgs = [ "--skip-login" ];
loginOptions = "-p -- ${config.oizys.user}";
};
};
2024-04-28 09:12:56 -05:00
}