refactor: complete rewrite
This commit is contained in:
		
							parent
							
								
									19a4bbda3c
								
							
						
					
					
						commit
						8e81943cf9
					
				
					 399 changed files with 3396 additions and 8042 deletions
				
			
		
							
								
								
									
										3
									
								
								modules/nixos/workstation/environment/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								modules/nixos/workstation/environment/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | |||
| { | ||||
|   imports = [./hyprland]; | ||||
| } | ||||
							
								
								
									
										67
									
								
								modules/nixos/workstation/environment/hyprland/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										67
									
								
								modules/nixos/workstation/environment/hyprland/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,67 @@ | |||
| { | ||||
|   inputs', | ||||
|   config, | ||||
|   lib, | ||||
|   pkgs, | ||||
|   ... | ||||
| }: let | ||||
|   inherit (lib) concatStringsSep getExe mkIf; | ||||
|   inherit (config.ooknet.workstation) environment; | ||||
|   inherit (inputs'.hyprland.packages) xdg-desktop-portal-hyprland hyprland; | ||||
| in { | ||||
|   config = mkIf (environment == "hyprland") { | ||||
|     programs.hyprland = { | ||||
|       enable = true; | ||||
|       package = hyprland; | ||||
|       portalPackage = xdg-desktop-portal-hyprland; | ||||
|     }; | ||||
| 
 | ||||
|     xdg.portal = { | ||||
|       enable = true; | ||||
|       extraPortals = [ | ||||
|         pkgs.xdg-desktop-portal-gtk | ||||
|         xdg-desktop-portal-hyprland | ||||
|       ]; | ||||
|       config.common = { | ||||
|         default = ["gtk"]; | ||||
|         "org.freedesktop.impl.portal.Screencast" = "hyprland"; | ||||
|         "org.freedesktop.impl.portal.Screenshot" = "hyprland"; | ||||
|       }; | ||||
|     }; | ||||
| 
 | ||||
|     # required for wayland screen lockers to work | ||||
|     security.pam.services.hyprlock.text = "auth include login"; | ||||
| 
 | ||||
|     services.greetd = { | ||||
|       enable = true; | ||||
|       vt = 2; | ||||
|       settings = { | ||||
|         default_session = { | ||||
|           command = concatStringsSep " " [ | ||||
|             (getExe pkgs.greetd.tuigreet) | ||||
|             "--time" | ||||
|             "--remember" | ||||
|             "--cmd" | ||||
|             (getExe hyprland) | ||||
|           ]; | ||||
|         }; | ||||
|       }; | ||||
|     }; | ||||
| 
 | ||||
|     systemd.services.greetd.serviceConfig = { | ||||
|       Type = "idle"; | ||||
|       StandardInput = "tty"; | ||||
|       StandardOutput = "tty"; | ||||
|       StandardError = "journal"; # Without this errors will spam on screen | ||||
|       # Without these bootlogs will spam on screen | ||||
|       TTYReset = true; | ||||
|       TTYVHangup = true; | ||||
|       TTYVTDisallocate = true; | ||||
|     }; | ||||
| 
 | ||||
|     nix.settings = { | ||||
|       substituters = ["https://hyprland.cachix.org"]; | ||||
|       trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue