89 lines
2.1 KiB
Nix
89 lines
2.1 KiB
Nix
#
|
|
# Hyprland Configuration
|
|
# Enable with "hyprland.enable = true;"
|
|
#
|
|
{
|
|
config,
|
|
lib,
|
|
system,
|
|
pkgs,
|
|
unstable,
|
|
hyprland,
|
|
vars,
|
|
host,
|
|
...
|
|
}:
|
|
with lib;
|
|
with host; {
|
|
options = {
|
|
hyprland = {
|
|
enable = mkOption {
|
|
type = types.bool;
|
|
default = false;
|
|
};
|
|
};
|
|
};
|
|
|
|
config = mkIf (config.hyprland.enable) {
|
|
#wlwm.enable = true; # Wayland Window Manager
|
|
|
|
environment = {
|
|
# variables = {
|
|
# #WLR_NO_HARDWARE_CURSORS="1"; # Needed for VM
|
|
# #WLR_RENDERER_ALLOW_SOFTWARE="1";
|
|
# XDG_CURRENT_DESKTOP = "Hyprland";
|
|
# XDG_SESSION_TYPE = "wayland";
|
|
# XDG_SESSION_DESKTOP = "Hyprland";
|
|
# };
|
|
# sessionVariables =
|
|
# if hostName == "desktop"
|
|
# then {
|
|
# GBM_BACKEND = "nvidia-drm";
|
|
# #__GL_GSYNC_ALLOWED = "0";
|
|
# #__GL_VRR_ALLOWED = "0";
|
|
# #WLR_DRM_NO_ATOMIC = "1";
|
|
# __GLX_VENDOR_LIBRARY_NAME = "nvidia";
|
|
# #_JAVA_AWT_WM_NONREPARENTING = "1";
|
|
#
|
|
# QT_QPA_PLATFORM = "wayland";
|
|
# QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
|
#
|
|
# GDK_BACKEND = "wayland";
|
|
# WLR_NO_HARDWARE_CURSORS = "1";
|
|
# MOZ_ENABLE_WAYLAND = "1";
|
|
# NIXOS_OZONE_WL = "1";
|
|
# }
|
|
# else {
|
|
# QT_QPA_PLATFORM = "wayland";
|
|
# QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
|
|
#
|
|
# GDK_BACKEND = "wayland";
|
|
# WLR_NO_HARDWARE_CURSORS = "1";
|
|
# MOZ_ENABLE_WAYLAND = "1";
|
|
# };
|
|
systemPackages = with pkgs; [
|
|
grim # Grab Images
|
|
slurp # Region Selector
|
|
wl-clipboard # Clipboard
|
|
wlr-randr # Monitor Settings
|
|
];
|
|
};
|
|
|
|
programs = {
|
|
hyprland = {
|
|
# Window Manager
|
|
enable = true;
|
|
package = hyprland.packages.${pkgs.system}.hyprland;
|
|
nvidiaPatches =
|
|
if hostName == "desktop"
|
|
then true
|
|
else false;
|
|
};
|
|
};
|
|
|
|
nix.settings = {
|
|
substituters = ["https://hyprland.cachix.org"];
|
|
trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="];
|
|
}; # Cache
|
|
};
|
|
}
|