mirror of
				https://github.com/Jokiller230/puzzlevision.git
				synced 2025-10-31 05:40:05 +00:00 
			
		
		
		
	[general] further improve immutability of KDE config
feat: add resources directory feat: update KDE config refactor: remove unused files
This commit is contained in:
		
							parent
							
								
									bbe6ab62c4
								
							
						
					
					
						commit
						cff1ca5701
					
				
					 13 changed files with 105 additions and 80 deletions
				
			
		
							
								
								
									
										56
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										56
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							|  | @ -1,18 +1,23 @@ | |||
| { | ||||
|   "nodes": { | ||||
|     "flake-compat": { | ||||
|       "flake": false, | ||||
|     "haumea": { | ||||
|       "inputs": { | ||||
|         "nixpkgs": [ | ||||
|           "nixpkgs" | ||||
|         ] | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1688025799, | ||||
|         "narHash": "sha256-ktpB4dRtnksm9F5WawoIkEneh1nrEvuxb5lJFt1iOyw=", | ||||
|         "lastModified": 1685133229, | ||||
|         "narHash": "sha256-FePm/Gi9PBSNwiDFq3N+DWdfxFq0UKsVVTJS3cQPn94=", | ||||
|         "owner": "nix-community", | ||||
|         "repo": "flake-compat", | ||||
|         "rev": "8bf105319d44f6b9f0d764efa4fdef9f1cc9ba1c", | ||||
|         "repo": "haumea", | ||||
|         "rev": "34dd58385092a23018748b50f9b23de6266dffc2", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "nix-community", | ||||
|         "repo": "flake-compat", | ||||
|         "ref": "v0.2.2", | ||||
|         "repo": "haumea", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|  | @ -37,40 +42,7 @@ | |||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "nixos-cosmic": { | ||||
|       "inputs": { | ||||
|         "flake-compat": "flake-compat", | ||||
|         "nixpkgs": "nixpkgs" | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1715262380, | ||||
|         "narHash": "sha256-jz4zg7xz14PTkrTiH96tVDvCxftpDVp6vRxnO7OVReA=", | ||||
|         "path": "/nix/store/gz6hf4bgagrqvkl7p7gxpznnlqgvyyjy-source", | ||||
|         "rev": "1914ef3d3bbbf79892b48e9162b47f64ff99bcd5", | ||||
|         "type": "path" | ||||
|       }, | ||||
|       "original": { | ||||
|         "id": "nixos-cosmic", | ||||
|         "type": "indirect" | ||||
|       } | ||||
|     }, | ||||
|     "nixpkgs": { | ||||
|       "locked": { | ||||
|         "lastModified": 1715266358, | ||||
|         "narHash": "sha256-doPgfj+7FFe9rfzWo1siAV2mVCasW+Bh8I1cToAXEE4=", | ||||
|         "owner": "NixOS", | ||||
|         "repo": "nixpkgs", | ||||
|         "rev": "f1010e0469db743d14519a1efd37e23f8513d714", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "NixOS", | ||||
|         "ref": "nixos-unstable", | ||||
|         "repo": "nixpkgs", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "nixpkgs_2": { | ||||
|       "locked": { | ||||
|         "lastModified": 1715087517, | ||||
|         "narHash": "sha256-CLU5Tsg24Ke4+7sH8azHWXKd0CFd4mhLWfhYgUiDBpQ=", | ||||
|  | @ -111,9 +83,9 @@ | |||
|     }, | ||||
|     "root": { | ||||
|       "inputs": { | ||||
|         "haumea": "haumea", | ||||
|         "home-manager": "home-manager", | ||||
|         "nixos-cosmic": "nixos-cosmic", | ||||
|         "nixpkgs": "nixpkgs_2", | ||||
|         "nixpkgs": "nixpkgs", | ||||
|         "plasma-manager": "plasma-manager" | ||||
|       } | ||||
|     } | ||||
|  |  | |||
							
								
								
									
										21
									
								
								flake.nix
									
										
									
									
									
								
							
							
						
						
									
										21
									
								
								flake.nix
									
										
									
									
									
								
							|  | @ -17,9 +17,15 @@ | |||
|       inputs.nixpkgs.follows = "nixpkgs"; | ||||
|       inputs.home-manager.follows = "home-manager"; | ||||
|     }; | ||||
| 
 | ||||
|     # Haumea (map directory structure into an attribute set) | ||||
|     haumea = { | ||||
|           url = "github:nix-community/haumea/v0.2.2"; | ||||
|           inputs.nixpkgs.follows = "nixpkgs"; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   outputs = { self, nixpkgs, home-manager, plasma-manager, nixos-cosmic, ... } @inputs: | ||||
|   outputs = { self, nixpkgs, home-manager, plasma-manager, haumea, ... } @inputs: | ||||
|   let | ||||
|     inherit (self) outputs; | ||||
| 
 | ||||
|  | @ -35,11 +41,20 @@ | |||
|     # My custom packages | ||||
|     packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system}); | ||||
| 
 | ||||
|     # External resources (wallpapers, icons, dotfiles) | ||||
|     resources = import ./resources; | ||||
| 
 | ||||
|     # My reusable modules for nixos | ||||
|     nixosModules = import ./modules/nixos; | ||||
|     nixosModules = haumea.lib.load { | ||||
|       src = ./modules/nixos; | ||||
|       inputs = { inherit inputs outputs; pkgs = nixpkgs.legacyPackages.x86_64-linux; }; | ||||
|     }; | ||||
| 
 | ||||
|     # My reusable modules for home-manager | ||||
|     homeManagerModules = import ./modules/home-manager; | ||||
|     homeManagerModules = haumea.lib.load { | ||||
|       src = ./modules/home-manager; | ||||
|       inputs = { inherit inputs outputs; pkgs = nixpkgs.legacyPackages.x86_64-linux; }; | ||||
|     }; | ||||
| 
 | ||||
|     # NixOS configuration entrypoint | ||||
|     # Available through 'nixos-rebuild --flake .#your-hostname' | ||||
|  |  | |||
|  | @ -1,6 +0,0 @@ | |||
| # Collection of reusable home-manager modules (https://nixos.wiki/wiki/Module) | ||||
| # These shouldn't include personal configurations, but much rather stuff that can be shared across multiple configurations | ||||
| { | ||||
|   # List your module files here | ||||
|   # my-module = import ./my-module.nix; | ||||
| } | ||||
							
								
								
									
										15
									
								
								modules/home-manager/themes/gruvbox/plasma.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								modules/home-manager/themes/gruvbox/plasma.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,15 @@ | |||
| { | ||||
|   pkgs, | ||||
|   outputs | ||||
| }: { | ||||
|   home.packages = with pkgs; [ | ||||
|     tela-icon-theme | ||||
|     outputs.packages.x86_64-linux.themes.kde-gruvbox-colors | ||||
|   ]; | ||||
| 
 | ||||
|   programs.plasma.workspace = { | ||||
|     iconTheme = "Tela-green-dark"; | ||||
|     colorScheme = "GruvboxColors"; | ||||
|     wallpaper = "${outputs.resources.wallpapers}/gruvbox/green_pokemon_guy.png"; | ||||
|   }; | ||||
| } | ||||
|  | @ -1 +0,0 @@ | |||
|   | ||||
|  | @ -1,7 +0,0 @@ | |||
| # Collection of reusable nixos modules (https://nixos.wiki/wiki/Module) | ||||
| # These shouldn't include personal configurations, but much rather stuff that can be shared across multiple configurations | ||||
| { | ||||
|   # List your module files here | ||||
|   # my-module = import ./my-module.nix; | ||||
|   desktop = import ./desktop; | ||||
| } | ||||
|  | @ -1,5 +0,0 @@ | |||
| { | ||||
|   kde = import ./kde.nix; | ||||
|   gnome = import ./gnome.nix; | ||||
|   cosmic = import ./cosmic.nix; | ||||
| } | ||||
|  | @ -2,4 +2,7 @@ | |||
| # You can build them using 'nix build .#example' | ||||
| pkgs: { | ||||
|   # example = pkgs.callPackage ./example { }; | ||||
|   themes = { | ||||
|     kde-gruvbox-colors = pkgs.callPackage ./themes/kde-gruvbox-colors.nix { }; | ||||
|   }; | ||||
| } | ||||
|  |  | |||
							
								
								
									
										22
									
								
								pkgs/themes/kde-gruvbox-colors.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								pkgs/themes/kde-gruvbox-colors.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,22 @@ | |||
| { stdenv, fetchFromGitHub }: | ||||
| 
 | ||||
| stdenv.mkDerivation rec { | ||||
|   pname = "kde-gruvbox-colors"; | ||||
|   version = "1.0.0"; | ||||
| 
 | ||||
|   src = fetchFromGitHub { | ||||
|     owner = "jokiller230"; | ||||
|     repo = pname; | ||||
|     rev = "438a23c571e22c1bf416c229afac78ad64e81f17"; | ||||
|     sha256 = "sha256-5iRfWqqtv+ImDN96PuWaS3nuK8AHjfa4DGc8vCkLi4U="; | ||||
|   }; | ||||
| 
 | ||||
|   installPhase = '' | ||||
|     runHook preInstall | ||||
| 
 | ||||
|     mkdir -p $out/share | ||||
|     cp -R color-schemes konsole $out/share | ||||
| 
 | ||||
|     runHook postInstall | ||||
|   ''; | ||||
| } | ||||
							
								
								
									
										3
									
								
								resources/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								resources/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | |||
| { | ||||
|   wallpapers = ./wallpapers; | ||||
| } | ||||
							
								
								
									
										
											BIN
										
									
								
								resources/wallpapers/gruvbox/green_pokemon_guy.png
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								resources/wallpapers/gruvbox/green_pokemon_guy.png
									
										
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							| After Width: | Height: | Size: 632 KiB | 
							
								
								
									
										27
									
								
								users/jo_puzzlevision/desktop/kde.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										27
									
								
								users/jo_puzzlevision/desktop/kde.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,27 @@ | |||
| { | ||||
|   inputs, | ||||
|   lib, | ||||
|   config, | ||||
|   pkgs, | ||||
|   outputs, | ||||
|   ... | ||||
| }: { | ||||
|   imports = [ | ||||
|     inputs.plasma-manager.homeManagerModules.plasma-manager | ||||
|     outputs.homeManagerModules.themes.gruvbox.plasma | ||||
|   ]; | ||||
| 
 | ||||
|   home.packages = with pkgs; [ | ||||
|     kdePackages.sierra-breeze-enhanced | ||||
|     kde-rounded-corners | ||||
|   ]; | ||||
| 
 | ||||
|   # Plasma configuration | ||||
|   programs.plasma = { | ||||
|     enable = true; | ||||
| 
 | ||||
|     workspace = { | ||||
|       clickItemTo = "select"; | ||||
|     }; | ||||
|   }; | ||||
| } | ||||
|  | @ -3,17 +3,15 @@ | |||
|   lib, | ||||
|   config, | ||||
|   pkgs, | ||||
|   outputs, | ||||
|   ... | ||||
| }: { | ||||
|   # You can import other home-manager modules here | ||||
|   imports = [ | ||||
|     inputs.plasma-manager.homeManagerModules.plasma-manager | ||||
|     ./desktop/kde.nix | ||||
|   ]; | ||||
| 
 | ||||
|   nixpkgs = { | ||||
|     overlays = []; | ||||
| 
 | ||||
|     # Configuring nixpkgs instance | ||||
|     config = { | ||||
|       allowUnfree = true; | ||||
| 
 | ||||
|  | @ -28,18 +26,8 @@ | |||
|     homeDirectory = "/home/jo"; | ||||
|   }; | ||||
| 
 | ||||
|   # Plasma configuration | ||||
|   programs.plasma = { | ||||
|     enable = true; | ||||
| 
 | ||||
|     workspace = { | ||||
|       clickItemTo = "select"; | ||||
|       iconTheme = "Tela-blue-dark"; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   # General packages | ||||
|   home.packages = with pkgs; [ | ||||
|     kdePackages.sierra-breeze-enhanced | ||||
|     spotify | ||||
|     qflipper | ||||
|     wineWowPackages.waylandFull | ||||
|  | @ -50,7 +38,6 @@ | |||
|     teams-for-linux | ||||
|     enpass | ||||
|     thunderbird | ||||
|     kde-rounded-corners | ||||
|   ]; | ||||
| 
 | ||||
|   # home.file.".config/gtk-4.0/gtk.css".source = "${orchis}/share/themes/Orchis-Green-Dark-Compact/gtk-4.0/gtk.css"; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue