ooknet/modules/home/workstation/hyprland/default.nix

49 lines
1.3 KiB
Nix

{
inputs',
lib,
osConfig,
...
}: let
inherit (osConfig.ooknet.workstation) environment;
inherit (osConfig.ooknet.hardware) gpu;
inherit (lib) mkIf;
in {
imports = [
./settings
./components
];
config = mkIf (environment == "hyprland") {
wayland.windowManager.hyprland = {
enable = true;
package = inputs'.hyprland.packages.hyprland;
xwayland.enable = true;
systemd = mkIf (!osConfig.programs.uwsm.enable) {
enable = true;
variables = ["--all"];
};
};
home.sessionVariables =
{
CLUTTER_BACKEND = "wayland";
NIXOS_OZONE_WL = "1";
GDK_BACKEND = "wayland";
QT_QPA_PLATFORM = "wayland";
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
DISABLE_QT5_COMPAT = "0";
QT_AUTO_SCREEN_SCALE_FACTOR = "1";
MOZ_ENABLE_WAYLAND = "1";
MOZ_DBUS_REMOTE = "1";
XDG_SESSION_TYPE = "wayland";
SDL_VIDEODRIVER = "wayland";
XDG_SESSION_DESKTOP = "Hyprland";
XDG_CURRENT_DESKTOP = "Hyprland";
}
// mkIf (gpu.type == "nvidia") {
LIBVA_DRIVER_NAME = "nvidia";
GBM_BACKEND = "nvidia-drm";
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
WLR_NO_HARDWARE_CURSORS = "1";
};
};
}