64 lines
1.4 KiB
Nix
64 lines
1.4 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}: let
|
|
inherit (lib) filterAttrs hasPrefix optionals;
|
|
|
|
inherit (import ./setupMonitors.nix {inherit config pkgs;}) setupMonitors;
|
|
|
|
cfg = config.roles.desktop;
|
|
|
|
# Nix stuff
|
|
cfgHypr =
|
|
config
|
|
.home-manager
|
|
.users
|
|
.${cfg.user}
|
|
.wayland
|
|
.windowManager
|
|
.hyprland;
|
|
|
|
devices = filterAttrs (n: v: hasPrefix "device:" n) cfgHypr.settings;
|
|
in {
|
|
home-manager.users.greeter = {
|
|
wayland.windowManager.hyprland = {
|
|
enable = true;
|
|
package = cfgHypr.finalPackage;
|
|
systemd.enable = false;
|
|
|
|
settings =
|
|
{
|
|
inherit (cfgHypr.settings) cursor input misc monitor;
|
|
|
|
envd =
|
|
(optionals (config.nvidia.enable) [
|
|
"LIBVA_DRIVER_NAME, nvidia"
|
|
"NVD_BACKEND, direct"
|
|
"XDG_SESSION_TYPE, wayland"
|
|
"GBM_BACKEND, nvidia-drm"
|
|
"__GLX_VENDOR_LIBRARY_NAME, nvidia"
|
|
])
|
|
++ [
|
|
"XCURSOR_SIZE,24"
|
|
];
|
|
|
|
general.border_size = 0;
|
|
|
|
decoration = {
|
|
blur.enabled = false;
|
|
drop_shadow = false;
|
|
};
|
|
|
|
exec-once = [
|
|
"hyprctl setcursor Dracula-cursors 24"
|
|
|
|
setupMonitors
|
|
"astal -b greeter &> /tmp/astal.log; hyprctl dispatch exit"
|
|
];
|
|
}
|
|
// devices;
|
|
};
|
|
};
|
|
}
|