mirror of
				https://github.com/Jokiller230/puzzlevision.git
				synced 2025-10-31 13:50:04 +00:00 
			
		
		
		
	We do a little refactoring + plasma theming
This commit is contained in:
		
							parent
							
								
									05b36550a3
								
							
						
					
					
						commit
						39dd3f47c8
					
				
					 22 changed files with 257 additions and 397 deletions
				
			
		
							
								
								
									
										2
									
								
								.gitignore
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								.gitignore
									
										
									
									
										vendored
									
									
								
							|  | @ -0,0 +1,2 @@ | |||
| # Jetbrains configuration directory | ||||
| /.idea | ||||
							
								
								
									
										8
									
								
								.idea/.gitignore
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.idea/.gitignore
									
										
									
										generated
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,8 @@ | |||
| # Default ignored files | ||||
| /shelf/ | ||||
| /workspace.xml | ||||
| # Editor-based HTTP Client requests | ||||
| /httpRequests/ | ||||
| # Datasource local storage ignored files | ||||
| /dataSources/ | ||||
| /dataSources.local.xml | ||||
							
								
								
									
										12
									
								
								.idea/material_theme_project_new.xml
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								.idea/material_theme_project_new.xml
									
										
									
										generated
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,12 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <project version="4"> | ||||
|   <component name="MaterialThemeProjectNewConfig"> | ||||
|     <option name="metadata"> | ||||
|       <MTProjectMetadataState> | ||||
|         <option name="migrated" value="true" /> | ||||
|         <option name="pristineConfig" value="false" /> | ||||
|         <option name="userId" value="-2b035df3:18ee689acec:-8000" /> | ||||
|       </MTProjectMetadataState> | ||||
|     </option> | ||||
|   </component> | ||||
| </project> | ||||
							
								
								
									
										8
									
								
								.idea/modules.xml
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.idea/modules.xml
									
										
									
										generated
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,8 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <project version="4"> | ||||
|   <component name="ProjectModuleManager"> | ||||
|     <modules> | ||||
|       <module fileurl="file://$PROJECT_DIR$/.idea/nix-config.iml" filepath="$PROJECT_DIR$/.idea/nix-config.iml" /> | ||||
|     </modules> | ||||
|   </component> | ||||
| </project> | ||||
							
								
								
									
										8
									
								
								.idea/nix-config.iml
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								.idea/nix-config.iml
									
										
									
										generated
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,8 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <module type="WEB_MODULE" version="4"> | ||||
|   <component name="NewModuleRootManager"> | ||||
|     <content url="file://$MODULE_DIR$" /> | ||||
|     <orderEntry type="inheritedJdk" /> | ||||
|     <orderEntry type="sourceFolder" forTests="false" /> | ||||
|   </component> | ||||
| </module> | ||||
							
								
								
									
										19
									
								
								.idea/php.xml
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								.idea/php.xml
									
										
									
										generated
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,19 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <project version="4"> | ||||
|   <component name="MessDetectorOptionsConfiguration"> | ||||
|     <option name="transferred" value="true" /> | ||||
|   </component> | ||||
|   <component name="PHPCSFixerOptionsConfiguration"> | ||||
|     <option name="transferred" value="true" /> | ||||
|   </component> | ||||
|   <component name="PHPCodeSnifferOptionsConfiguration"> | ||||
|     <option name="highlightLevel" value="WARNING" /> | ||||
|     <option name="transferred" value="true" /> | ||||
|   </component> | ||||
|   <component name="PhpStanOptionsConfiguration"> | ||||
|     <option name="transferred" value="true" /> | ||||
|   </component> | ||||
|   <component name="PsalmOptionsConfiguration"> | ||||
|     <option name="transferred" value="true" /> | ||||
|   </component> | ||||
| </project> | ||||
							
								
								
									
										6
									
								
								.idea/vcs.xml
									
										
									
										generated
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.idea/vcs.xml
									
										
									
										generated
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,6 @@ | |||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <project version="4"> | ||||
|   <component name="VcsDirectoryMappings"> | ||||
|     <mapping directory="" vcs="Git" /> | ||||
|   </component> | ||||
| </project> | ||||
|  | @ -2,7 +2,6 @@ | |||
| 
 | ||||
| Jo's NixOS configuration | ||||
| 
 | ||||
| 
 | ||||
| ## Deployment | ||||
| 
 | ||||
| Run this to apply your system configuration. | ||||
|  |  | |||
							
								
								
									
										174
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										174
									
								
								flake.lock
									
										
									
										generated
									
									
									
								
							|  | @ -1,103 +1,5 @@ | |||
| { | ||||
|   "nodes": { | ||||
|     "catppuccinifier": { | ||||
|       "inputs": { | ||||
|         "crane": "crane", | ||||
|         "flake-utils": "flake-utils_2", | ||||
|         "nixpkgs": [ | ||||
|           "nixpkgs" | ||||
|         ] | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1696928114, | ||||
|         "narHash": "sha256-h445Aox0jck7MOCsKxXLKiE4QvptL/54eXUuhQZGF7o=", | ||||
|         "owner": "lighttigerXIV", | ||||
|         "repo": "catppuccinifier", | ||||
|         "rev": "ef9c180bb7bbf1486671a1c6df41adaab60a9b41", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "lighttigerXIV", | ||||
|         "repo": "catppuccinifier", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "crane": { | ||||
|       "inputs": { | ||||
|         "flake-compat": "flake-compat", | ||||
|         "flake-utils": "flake-utils", | ||||
|         "nixpkgs": [ | ||||
|           "catppuccinifier", | ||||
|           "nixpkgs" | ||||
|         ], | ||||
|         "rust-overlay": "rust-overlay" | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1687310026, | ||||
|         "narHash": "sha256-20RHFbrnC+hsG4Hyeg/58LvQAK7JWfFItTPFAFamu8E=", | ||||
|         "owner": "ipetkov", | ||||
|         "repo": "crane", | ||||
|         "rev": "116b32c30b5ff28e49f4fcbeeb1bbe3544593204", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "ipetkov", | ||||
|         "repo": "crane", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "flake-compat": { | ||||
|       "flake": false, | ||||
|       "locked": { | ||||
|         "lastModified": 1673956053, | ||||
|         "narHash": "sha256-4gtG9iQuiKITOjNQQeQIpoIB6b16fm+504Ch3sNKLd8=", | ||||
|         "owner": "edolstra", | ||||
|         "repo": "flake-compat", | ||||
|         "rev": "35bb57c0c8d8b62bbfd284272c928ceb64ddbde9", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "edolstra", | ||||
|         "repo": "flake-compat", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "flake-utils": { | ||||
|       "inputs": { | ||||
|         "systems": "systems" | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1685518550, | ||||
|         "narHash": "sha256-o2d0KcvaXzTrPRIo0kOLV0/QXHhDQ5DTi+OxcjO8xqY=", | ||||
|         "owner": "numtide", | ||||
|         "repo": "flake-utils", | ||||
|         "rev": "a1720a10a6cfe8234c0e93907ffe81be440f4cef", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "numtide", | ||||
|         "repo": "flake-utils", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "flake-utils_2": { | ||||
|       "inputs": { | ||||
|         "systems": "systems_2" | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1687171271, | ||||
|         "narHash": "sha256-BJlq+ozK2B1sJDQXS3tzJM5a+oVZmi1q0FlBK/Xqv7M=", | ||||
|         "owner": "numtide", | ||||
|         "repo": "flake-utils", | ||||
|         "rev": "abfb11bd1aec8ced1c9bb9adfe68018230f4fb3c", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "numtide", | ||||
|         "repo": "flake-utils", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "home-manager": { | ||||
|       "inputs": { | ||||
|         "nixpkgs": [ | ||||
|  | @ -105,11 +7,11 @@ | |||
|         ] | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1698128422, | ||||
|         "narHash": "sha256-Qf39ATHrj6wfeC+K6uwD/FnI7RKrdEiN3uWaciUi0rM=", | ||||
|         "lastModified": 1713818326, | ||||
|         "narHash": "sha256-aw3xbVPJauLk/bbrlakIYxKpeuMWzA2feGrkIpIuXd8=", | ||||
|         "owner": "nix-community", | ||||
|         "repo": "home-manager", | ||||
|         "rev": "6045b68ee725167ed0487f0fb88123202ba61923", | ||||
|         "rev": "67de98ae6eed5ad6f91b1142356d71a87ba97f21", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|  | @ -121,11 +23,11 @@ | |||
|     }, | ||||
|     "nixpkgs": { | ||||
|       "locked": { | ||||
|         "lastModified": 1697723726, | ||||
|         "narHash": "sha256-SaTWPkI8a5xSHX/rrKzUe+/uVNy6zCGMXgoeMb7T9rg=", | ||||
|         "lastModified": 1713714899, | ||||
|         "narHash": "sha256-+z/XjO3QJs5rLE5UOf015gdVauVRQd2vZtsFkaXBq2Y=", | ||||
|         "owner": "nixos", | ||||
|         "repo": "nixpkgs", | ||||
|         "rev": "7c9cc5a6e5d38010801741ac830a3f8fd667a7a0", | ||||
|         "rev": "6143fc5eeb9c4f00163267708e26191d1e918932", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|  | @ -135,68 +37,34 @@ | |||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "root": { | ||||
|     "plasma-manager": { | ||||
|       "inputs": { | ||||
|         "catppuccinifier": "catppuccinifier", | ||||
|         "home-manager": "home-manager", | ||||
|         "nixpkgs": "nixpkgs" | ||||
|       } | ||||
|     }, | ||||
|     "rust-overlay": { | ||||
|       "inputs": { | ||||
|         "flake-utils": [ | ||||
|           "catppuccinifier", | ||||
|           "crane", | ||||
|           "flake-utils" | ||||
|         "home-manager": [ | ||||
|           "home-manager" | ||||
|         ], | ||||
|         "nixpkgs": [ | ||||
|           "catppuccinifier", | ||||
|           "crane", | ||||
|           "nixpkgs" | ||||
|         ] | ||||
|       }, | ||||
|       "locked": { | ||||
|         "lastModified": 1685759304, | ||||
|         "narHash": "sha256-I3YBH6MS3G5kGzNuc1G0f9uYfTcNY9NYoRc3QsykLk4=", | ||||
|         "owner": "oxalica", | ||||
|         "repo": "rust-overlay", | ||||
|         "rev": "c535b4f3327910c96dcf21851bbdd074d0760290", | ||||
|         "lastModified": 1713805120, | ||||
|         "narHash": "sha256-WmqVyblqQ3g2Bmm+WONc1OnUuOuULQRIQya9wCLp5o8=", | ||||
|         "owner": "pjones", | ||||
|         "repo": "plasma-manager", | ||||
|         "rev": "ffeef9dc96a5a0e442479c94a6000f93b69aeaac", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "oxalica", | ||||
|         "repo": "rust-overlay", | ||||
|         "owner": "pjones", | ||||
|         "repo": "plasma-manager", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "systems": { | ||||
|       "locked": { | ||||
|         "lastModified": 1681028828, | ||||
|         "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", | ||||
|         "owner": "nix-systems", | ||||
|         "repo": "default", | ||||
|         "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "nix-systems", | ||||
|         "repo": "default", | ||||
|         "type": "github" | ||||
|       } | ||||
|     }, | ||||
|     "systems_2": { | ||||
|       "locked": { | ||||
|         "lastModified": 1681028828, | ||||
|         "narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=", | ||||
|         "owner": "nix-systems", | ||||
|         "repo": "default", | ||||
|         "rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e", | ||||
|         "type": "github" | ||||
|       }, | ||||
|       "original": { | ||||
|         "owner": "nix-systems", | ||||
|         "repo": "default", | ||||
|         "type": "github" | ||||
|     "root": { | ||||
|       "inputs": { | ||||
|         "home-manager": "home-manager", | ||||
|         "nixpkgs": "nixpkgs", | ||||
|         "plasma-manager": "plasma-manager" | ||||
|       } | ||||
|     } | ||||
|   }, | ||||
|  |  | |||
							
								
								
									
										65
									
								
								flake.nix
									
										
									
									
									
								
							
							
						
						
									
										65
									
								
								flake.nix
									
										
									
									
									
								
							|  | @ -5,46 +5,51 @@ | |||
|     # Nixpkgs | ||||
|     nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable"; | ||||
| 
 | ||||
|     # Gnome testing branch (getting new major versions earlier) | ||||
|     # gnomeNixpkgs.url = "github:NixOS/nixpkgs/gnome"; | ||||
| 
 | ||||
|     # Home manager | ||||
|     home-manager.url = "github:nix-community/home-manager/master"; | ||||
|     home-manager.inputs.nixpkgs.follows = "nixpkgs"; | ||||
| 
 | ||||
|     # Catppuccinifier | ||||
|     catppuccinifier = { | ||||
|       url = "github:lighttigerXIV/catppuccinifier"; | ||||
|     home-manager = { | ||||
|       url = "github:nix-community/home-manager/master"; | ||||
|       inputs.nixpkgs.follows = "nixpkgs"; | ||||
|     }; | ||||
| 
 | ||||
|     # TODO: Add any other flake you might need | ||||
|     # hardware.url = "github:nixos/nixos-hardware"; | ||||
| 
 | ||||
|     # Shameless plug: looking for a way to nixify your themes and make | ||||
|     # everything match nicely? Try nix-colors! | ||||
|     # nix-colors.url = "github:misterio77/nix-colors"; | ||||
|     # Plasma manager | ||||
|     plasma-manager = { | ||||
|       url = "github:pjones/plasma-manager"; | ||||
|       inputs.nixpkgs.follows = "nixpkgs"; | ||||
|       inputs.home-manager.follows = "home-manager"; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   outputs = { | ||||
|     self, | ||||
|     nixpkgs, | ||||
|     home-manager, | ||||
|     catppuccinifier, | ||||
|     ... | ||||
|   } @ inputs: let | ||||
|   outputs = { self, nixpkgs, home-manager, plasma-manager, ... } @inputs: | ||||
|   let | ||||
|     inherit (self) outputs; | ||||
| 
 | ||||
|     # Supported systems for this flake | ||||
|     systems = [ | ||||
|       "x86_64-linux" | ||||
|     ]; | ||||
| 
 | ||||
|     # Function that generates an attribute by calling a function you pass to it | ||||
|     # It takes each system as an argument | ||||
|     forAllSystems = nixpkgs.lib.genAttrs systems; | ||||
|   in { | ||||
|     # My custom packages | ||||
|     packages = forAllSystems (system: import ./pkgs nixpkgs.legacyPackages.${system}); | ||||
| 
 | ||||
|     # My reusable modules for nixos | ||||
|     nixosModules = import ./modules/nixos; | ||||
| 
 | ||||
|     # My reusable modules for home-manager | ||||
|     homeManagerModules = import ./modules/home-manager; | ||||
| 
 | ||||
|     # NixOS configuration entrypoint | ||||
|     # Available through 'nixos-rebuild --flake .#your-hostname' | ||||
|     nixosConfigurations = { | ||||
|       # FIXME replace with your hostname | ||||
|       nixos = nixpkgs.lib.nixosSystem { | ||||
|         specialArgs = {inherit inputs outputs catppuccinifier;}; | ||||
|         # > Our main nixos configuration file < | ||||
|       puzzlevision = nixpkgs.lib.nixosSystem { | ||||
|         specialArgs = {inherit inputs outputs;}; | ||||
| 
 | ||||
|         modules = [ | ||||
|           ./nixos/configuration.nix | ||||
|           ./nixos/modules/desktop/kde.nix | ||||
|           ./hosts/puzzlevision/configuration.nix | ||||
|           ./modules/nixos/desktop/kde.nix | ||||
|         ]; | ||||
|       }; | ||||
|     }; | ||||
|  | @ -52,12 +57,12 @@ | |||
|     # Standalone home-manager configuration entrypoint | ||||
|     # Available through 'home-manager --flake .#your-username@your-hostname' | ||||
|     homeConfigurations = { | ||||
|       "jo@nixos" = home-manager.lib.homeManagerConfiguration { | ||||
|       "jo@puzzlevision" = home-manager.lib.homeManagerConfiguration { | ||||
|         pkgs = nixpkgs.legacyPackages.x86_64-linux; # Home-manager requires 'pkgs' instance | ||||
|         extraSpecialArgs = {inherit inputs outputs;}; | ||||
|         # > Our main home-manager configuration file < | ||||
|         modules = [ | ||||
|           ./home-manager/home.nix | ||||
|           ./home-manager/puzzlevision/home.nix | ||||
|         ]; | ||||
|       }; | ||||
|     }; | ||||
|  |  | |||
|  | @ -1,132 +0,0 @@ | |||
| { | ||||
|   inputs, | ||||
|   lib, | ||||
|   config, | ||||
|   pkgs, | ||||
|   ... | ||||
| }: { | ||||
|   # You can import other home-manager modules here | ||||
|   imports = [ | ||||
|     # If you want to use home-manager modules from other flakes (such as nix-colors): | ||||
|     # inputs.nix-colors.homeManagerModule | ||||
|   ]; | ||||
| 
 | ||||
|   nixpkgs = { | ||||
|     # You can add overlays here | ||||
|     overlays = [ | ||||
|       # If you want to use overlays exported from other flakes: | ||||
|       # neovim-nightly-overlay.overlays.default | ||||
| 
 | ||||
|       # Or define it inline, for example: | ||||
|       # (final: prev: { | ||||
|       #   hi = final.hello.overrideAttrs (oldAttrs: { | ||||
|       #     patches = [ ./change-hello-to-hi.patch ]; | ||||
|       #   }); | ||||
|       # }) | ||||
|     ]; | ||||
|     # Configure your nixpkgs instance | ||||
|     config = { | ||||
|       # Disable if you don't want unfree packages | ||||
|       allowUnfree = true; | ||||
|       # Workaround for https://github.com/nix-community/home-manager/issues/2942 | ||||
|       allowUnfreePredicate = _: true; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   home = { | ||||
|     username = "jo"; | ||||
|     homeDirectory = "/home/jo"; | ||||
|   }; | ||||
| 
 | ||||
|   # home.packages = with pkgs.gnomeExtensions; [ | ||||
|   #   user-themes | ||||
|   #   dash-to-dock | ||||
|   #   appindicator | ||||
|   #   blur-my-shell | ||||
|   #   rounded-window-corners | ||||
|   # ]; | ||||
| 
 | ||||
|   # dconf.settings = with lib.hm.gvariant; { | ||||
|   #   "org/gnome/shell" = { | ||||
|   #     disable-user-extensions = false; | ||||
|   #     # enabled-extensions = map (extension: extension.extensionUuid) home.packages; | ||||
|   #     disabled-extensions = [ ]; | ||||
|   #   }; | ||||
| 
 | ||||
|   #   "org/gnome/shell/extensions/user-theme" = { | ||||
|   #     name = config.gtk.theme.name; | ||||
|   #   }; | ||||
| 
 | ||||
|   #   # "org/gnome/shell/extensions/dash-to-dock" = { | ||||
|   #   #   "appicon-margin" = 0; | ||||
|   #   #   "appicon-padding" = 6; | ||||
|   #   #   "tray-padding" = 4; | ||||
|   #   #   "click-action" = "TOGGLE-SHOWPREVIEW"; | ||||
|   #   #   "dot-position" = "TOP"; | ||||
|   #   #   "dot-style-focused" = "METRO"; | ||||
|   #   #   "dot-style-unfocused" = "DASHES"; | ||||
|   #   #   "group-apps" = true; | ||||
|   #   #   "isolate-workspaces" = true; | ||||
|   #   #   "middle-click-action" = "MINIMIZE"; | ||||
|   #   #   "shift-click-action" = "LAUNCH"; | ||||
|   #   #   "scroll-icon-action" = "NOTHING"; | ||||
|   #   #   "scroll-panel-action" = "NOTHING"; | ||||
|   #   #   "stockgs-panelbtn-click-only" = true; | ||||
|   #   # }; | ||||
| 
 | ||||
|   #   "org/gnome/desktop/interface" = { | ||||
|   #     color-scheme = "prefer-dark"; | ||||
|   #     clock-show-weekday = true; | ||||
|   #     clock-show-date = true; | ||||
|   #     clock-show-seconds = false; | ||||
|   #     enable-hot-corners = false; | ||||
|   #   }; | ||||
| 
 | ||||
|   #   "org/gnome/desktop/input-sources" = { | ||||
|   #     sources = [ (mkTuple [ "xkb" "de" ]) ]; | ||||
|   #   }; | ||||
| 
 | ||||
|   #   "org/gnome/shell" = { | ||||
|   #     favorite-apps = [ | ||||
|   #       "firefox.desktop" | ||||
|   #       "org.gnome.Nautilus.desktop" | ||||
|   #     ]; | ||||
|   #   }; | ||||
|   # }; | ||||
| 
 | ||||
|   # gtk = { | ||||
|   #   enable = true; | ||||
| 
 | ||||
|   #   theme = { | ||||
|   #     name = "Adw-gtk3"; | ||||
|   #     package = pkgs.adw-gtk3; | ||||
|   #   }; | ||||
| 
 | ||||
|   #   cursorTheme = { | ||||
|   #     name = "Catppuccin-Macchiato-Dark-Cursors"; | ||||
|   #     package = pkgs.catppuccin-cursors.macchiatoRed; | ||||
|   #     size = 32; | ||||
|   #   }; | ||||
|   # }; | ||||
| 
 | ||||
|   # home.file.".config/gtk-4.0/gtk.css".source = "${orchis}/share/themes/Orchis-Green-Dark-Compact/gtk-4.0/gtk.css"; | ||||
|   # home.file.".config/gtk-4.0/gtk-dark.css".source = "${orchis}/share/themes/Orchis-Green-Dark-Compact/gtk-4.0/gtk-dark.css"; | ||||
|   # home.file.".config/gtk-4.0/assets" = { | ||||
|   #   recursive = true; | ||||
|   #   source = "${orchis}/share/themes/Orchis-Green-Dark-Compact/gtk-4.0/assets"; | ||||
|   # }; | ||||
| 
 | ||||
|   # Add stuff for your user as you see fit: | ||||
|   # programs.neovim.enable = true; | ||||
|   # home.packages = with pkgs; [ steam ]; | ||||
| 
 | ||||
|   # Enable home-manager and git | ||||
|   programs.home-manager.enable = true; | ||||
|   programs.git.enable = true; | ||||
| 
 | ||||
|   # Nicely reload system units when changing configs | ||||
|   systemd.user.startServices = "sd-switch"; | ||||
| 
 | ||||
|   # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion | ||||
|   home.stateVersion = "23.05"; | ||||
| } | ||||
							
								
								
									
										55
									
								
								home-manager/puzzlevision/home.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										55
									
								
								home-manager/puzzlevision/home.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,55 @@ | |||
| { | ||||
|   inputs, | ||||
|   lib, | ||||
|   config, | ||||
|   pkgs, | ||||
|   ... | ||||
| }: { | ||||
|   # You can import other home-manager modules here | ||||
|   imports = [ | ||||
|     # If you want to use home-manager modules from other flakes (such as nix-colors): | ||||
|     # inputs.nix-colors.homeManagerModule | ||||
|     inputs.plasma-manager.homeManagerModules.plasma-manager | ||||
|   ]; | ||||
| 
 | ||||
|   nixpkgs = { | ||||
|     # You can add overlays here | ||||
|     overlays = []; | ||||
| 
 | ||||
|     # Configure your nixpkgs instance | ||||
|     config = { | ||||
|       allowUnfree = true; | ||||
| 
 | ||||
|       # Workaround for https://github.com/nix-community/home-manager/issues/2942 | ||||
|       allowUnfreePredicate = _: true; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   # Username and home directory | ||||
|   home = { | ||||
|     username = "jo"; | ||||
|     homeDirectory = "/home/jo"; | ||||
|   }; | ||||
| 
 | ||||
|   # Plasma configuration | ||||
|   programs.plasma = { | ||||
|     enable = true; | ||||
| 
 | ||||
|     workspace = { | ||||
|       clickItemTo = "select"; | ||||
|       iconTheme = "Tela-Blue-Dark"; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   # home.file.".config/gtk-4.0/gtk.css".source = "${orchis}/share/themes/Orchis-Green-Dark-Compact/gtk-4.0/gtk.css"; | ||||
| 
 | ||||
|   # Enable home-manager and git | ||||
|   programs.home-manager.enable = true; | ||||
|   programs.git.enable = true; | ||||
| 
 | ||||
|   # Nicely reload system units when changing configs | ||||
|   systemd.user.startServices = "sd-switch"; | ||||
| 
 | ||||
|   # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion | ||||
|   home.stateVersion = "23.05"; | ||||
| } | ||||
|  | @ -54,13 +54,17 @@ | |||
|     }; | ||||
|   }; | ||||
|    | ||||
|   # Install the latest kernel | ||||
|   boot.kernelPackages = pkgs.linuxPackages_latest; | ||||
| 
 | ||||
|   # Improve SSD performance | ||||
|   fileSystems."/".options = [ "noatime" "nodiratime" "discard" ]; | ||||
| 
 | ||||
|   # Bootloader. | ||||
|   boot.loader.systemd-boot.enable = true; | ||||
|   boot.loader.efi.canTouchEfiVariables = true; | ||||
| 
 | ||||
|   networking.hostName = "nixos"; | ||||
|   networking.hostName = "puzzlevision"; | ||||
| 
 | ||||
|   # Enable networking | ||||
|   networking.networkmanager.enable = true; | ||||
|  | @ -104,45 +108,36 @@ | |||
|   hardware.bluetooth.enable = true; | ||||
|   hardware.bluetooth.powerOnBoot = true; | ||||
| 
 | ||||
|   networking.wg-quick = { | ||||
|     interfaces.homelab = { | ||||
|       privateKey = "kJ+2MOoYbtI6K00pJbVQshD7bXx/pjKw01wlMih9FFI="; | ||||
|       address = [ "10.8.0.2/24" ]; | ||||
|       dns = [ "1.1.1.1" ]; | ||||
| 
 | ||||
|       peers = [ | ||||
|         # For a client configuration, one peer entry for the server will suffice. | ||||
|         { | ||||
|           # Public key of the server (not a file path). | ||||
|           publicKey = "MTUi5FzlUQX1Vl2PLC72hnZnREn5kYRGqS6QSnaFeyQ="; | ||||
|           presharedKey = "Spzeg7KwMXuczdkpMygmzix5QBkgTOrR3lLlO7862yw="; | ||||
|           allowedIPs = [ "0.0.0.0/0" "::/0" ]; | ||||
|           endpoint = "jo-server.duckdns.org:51820"; | ||||
|           persistentKeepalive = 0; | ||||
|         } | ||||
|       ]; | ||||
|     }; | ||||
|   }; | ||||
| 
 | ||||
|   # Enable docker | ||||
|   virtualisation.docker.enable = true; | ||||
| 
 | ||||
|   # Enable touchpad support (enabled default in most desktopManager). | ||||
|   services.xserver.libinput.enable = true; | ||||
| 
 | ||||
|   # Define a user account. Don't forget to set a password with ‘passwd’. | ||||
|   # Configure keymap in X11 | ||||
|   services.xserver = { | ||||
|     xkb.layout = "de"; | ||||
|     xkb.variant = ""; | ||||
|   }; | ||||
| 
 | ||||
|   # Define a user account. | ||||
|   users.users = { | ||||
|     jo = { | ||||
|       isNormalUser = true; | ||||
|       description = "Jo"; | ||||
|       extraGroups = [ "networkmanager" "wheel" "docker" ]; | ||||
|       extraGroups = [ "networkmanager" "wheel" "docker" "tty" "dialout" ]; | ||||
|       packages = with pkgs; [ | ||||
|         discord | ||||
|         ciscoPacketTracer8 | ||||
|         wireshark | ||||
|         joplin-desktop | ||||
|         teamspeak_client | ||||
| 	      virtualbox | ||||
|         spotify | ||||
|         qflipper | ||||
|         wineWowPackages.waylandFull | ||||
|         vesktop | ||||
|         avra | ||||
|         avrdude | ||||
|         jetbrains.phpstorm | ||||
|         teams-for-linux | ||||
|         enpass | ||||
|         thunderbird | ||||
|         kde-rounded-corners | ||||
|       ]; | ||||
|     }; | ||||
| 
 | ||||
|  | @ -152,10 +147,10 @@ | |||
|       initialPassword = "fortnite"; | ||||
|       extraGroups = [ "networkmanager" ]; | ||||
|       packages = with pkgs; [ | ||||
|         jetbrains.webstorm | ||||
|         jetbrains.phpstorm | ||||
|         teams-for-linux | ||||
|         enpass | ||||
|         thunderbird | ||||
|       ]; | ||||
|     }; | ||||
|   }; | ||||
|  | @ -171,18 +166,12 @@ | |||
|   environment.systemPackages = with pkgs; [ | ||||
|     nano | ||||
|     firefox | ||||
|     thunderbird | ||||
|     vlc | ||||
|     libreoffice | ||||
|     wineWowPackages.waylandFull | ||||
|     xorg.xf86inputlibinput | ||||
|     gimp | ||||
|     ungoogled-chromium | ||||
| 
 | ||||
|     # For development | ||||
|     vscodium | ||||
|     git | ||||
|     nodejs_20 | ||||
|     bun | ||||
|   ]; | ||||
| 
 | ||||
|   # https://nixos.wiki/wiki/FAQ/When_do_I_update_stateVersion | ||||
|  | @ -8,33 +8,42 @@ | |||
|     [ (modulesPath + "/installer/scan/not-detected.nix") | ||||
|     ]; | ||||
| 
 | ||||
|   boot.initrd.availableKernelModules = [ "xhci_pci" "vmd" "nvme" "usbhid" "usb_storage" "sd_mod" "rtsx_pci_sdmmc" ]; | ||||
|   boot.initrd.availableKernelModules = [ "xhci_pci" "vmd" "nvme" "rtsx_pci_sdmmc" ]; | ||||
|   boot.initrd.kernelModules = [ ]; | ||||
|   boot.kernelModules = [ "kvm-intel" ]; | ||||
|   boot.extraModulePackages = [ ]; | ||||
| 
 | ||||
|   fileSystems."/" = | ||||
|     { device = "/dev/disk/by-uuid/9469c51e-bfcf-4d70-88e8-96e3cec4fbda"; | ||||
|       fsType = "ext4"; | ||||
|     { device = "/dev/disk/by-uuid/864b1287-89fd-4cc0-98a5-40a3caf804c6"; | ||||
|       fsType = "btrfs"; | ||||
|       options = [ "subvol=@" ]; | ||||
|     }; | ||||
| 
 | ||||
|   boot.initrd.luks.devices."luks-5fd4fc76-d5c5-46c3-b952-1a7a7ff3a1fc".device = "/dev/disk/by-uuid/5fd4fc76-d5c5-46c3-b952-1a7a7ff3a1fc"; | ||||
| 
 | ||||
|   fileSystems."/boot" = | ||||
|     { device = "/dev/disk/by-uuid/7526-929F"; | ||||
|     { device = "/dev/disk/by-uuid/2429-4141"; | ||||
|       fsType = "vfat"; | ||||
|       options = [ "fmask=0022" "dmask=0022" ]; | ||||
|     }; | ||||
| 
 | ||||
|   swapDevices = | ||||
|     [ { device = "/dev/disk/by-uuid/49ae48db-5d1e-421b-90c6-7e092847636c"; } | ||||
|     ]; | ||||
|   fileSystems."/var/lib/docker/btrfs" = | ||||
|     { device = "/@/var/lib/docker/btrfs"; | ||||
|       fsType = "none"; | ||||
|       options = [ "bind" ]; | ||||
|     }; | ||||
| 
 | ||||
|   swapDevices = [ ]; | ||||
| 
 | ||||
|   # Enables DHCP on each ethernet and wireless interface. In case of scripted networking | ||||
|   # (the default) this is the recommended approach. When using systemd-networkd it's | ||||
|   # still possible to use this option, but it's recommended to use it in conjunction | ||||
|   # with explicit per-interface declarations with `networking.interfaces.<interface>.useDHCP`. | ||||
|   networking.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.br-9b746f4e7e2f.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.docker0.useDHCP = lib.mkDefault true; | ||||
|   # networking.interfaces.wlo1.useDHCP = lib.mkDefault true; | ||||
| 
 | ||||
|   nixpkgs.hostPlatform = lib.mkDefault "x86_64-linux"; | ||||
|   powerManagement.cpuFreqGovernor = lib.mkDefault "powersave"; | ||||
|   hardware.cpu.intel.updateMicrocode = lib.mkDefault config.hardware.enableRedistributableFirmware; | ||||
| } | ||||
							
								
								
									
										6
									
								
								modules/home-manager/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								modules/home-manager/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,6 @@ | |||
| # 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; | ||||
| } | ||||
							
								
								
									
										1
									
								
								modules/home-manager/themes/qt_catppuccin-macchiato.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								modules/home-manager/themes/qt_catppuccin-macchiato.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1 @@ | |||
|   | ||||
							
								
								
									
										6
									
								
								modules/nixos/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								modules/nixos/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,6 @@ | |||
| # 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; | ||||
| } | ||||
|  | @ -11,10 +11,4 @@ | |||
|   # Enable the GNOME Desktop Environment. | ||||
|   services.xserver.displayManager.gdm.enable = true; | ||||
|   services.xserver.desktopManager.gnome.enable = true; | ||||
| 
 | ||||
|   # Configure keymap in X11 | ||||
|   services.xserver = { | ||||
|     layout = "de"; | ||||
|     xkbVariant = ""; | ||||
|   }; | ||||
| } | ||||
							
								
								
									
										19
									
								
								modules/nixos/desktop/kde.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								modules/nixos/desktop/kde.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,19 @@ | |||
| { | ||||
|   inputs, | ||||
|   lib, | ||||
|   config, | ||||
|   pkgs, | ||||
|   ... | ||||
| }: { | ||||
|   # Enable the x11 windowing system | ||||
|   services.xserver.enable = true; | ||||
| 
 | ||||
|   # Enable the SDDM display manager. | ||||
|   services.displayManager.sddm.enable = true; | ||||
| 
 | ||||
|   # Enable the KDE Plasma 6 desktop environment. | ||||
|   services.desktopManager.plasma6.enable = true; | ||||
| 
 | ||||
|   # Enable KDE-Connect | ||||
|   programs.kdeconnect.enable = true; | ||||
| } | ||||
|  | @ -1,27 +0,0 @@ | |||
| { | ||||
|   inputs, | ||||
|   lib, | ||||
|   config, | ||||
|   pkgs, | ||||
|   ... | ||||
| }: { | ||||
|   # Enable the X11 windowing system. | ||||
|   services.xserver.enable = true; | ||||
| 
 | ||||
|   # Enable the GNOME Desktop Environment. | ||||
|   services.xserver.displayManager.sddm.enable = true; | ||||
|   services.xserver.desktopManager.plasma5.enable = true; | ||||
| 
 | ||||
|   # Configure keymap in X11 | ||||
|   services.xserver = { | ||||
|     layout = "de"; | ||||
|     xkbVariant = ""; | ||||
|   }; | ||||
| 
 | ||||
|   environment.systemPackages = with pkgs; [ | ||||
|     lightly-boehs | ||||
|     kde-rounded-corners | ||||
|   ]; | ||||
| 
 | ||||
|   programs.kdeconnect.enable = true; | ||||
| } | ||||
							
								
								
									
										5
									
								
								pkgs/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								pkgs/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,5 @@ | |||
| # Custom packages, that can be defined similarly to ones from nixpkgs | ||||
| # You can build them using 'nix build .#example' | ||||
| pkgs: { | ||||
|   # example = pkgs.callPackage ./example { }; | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue