49 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			49 lines
		
	
	
	
		
			1.2 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 = {
 | |
|         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";
 | |
|       };
 | |
|   };
 | |
| }
 |