forked from fabian/nix
		
	re-structure package configuration. fully modularize everything
This commit is contained in:
		
							parent
							
								
									9418588fed
								
							
						
					
					
						commit
						6a51c08183
					
				
					 8 changed files with 111 additions and 94 deletions
				
			
		|  | @ -17,6 +17,7 @@ in { | ||||||
|       packages = with pkgs; [ |       packages = with pkgs; [ | ||||||
|         calc |         calc | ||||||
|         file |         file | ||||||
|  |         gcc | ||||||
|         htop |         htop | ||||||
|         killall |         killall | ||||||
|         man-pages |         man-pages | ||||||
|  |  | ||||||
|  | @ -8,11 +8,12 @@ | ||||||
|     ./terminal |     ./terminal | ||||||
|     ./neovim.nix |     ./neovim.nix | ||||||
|     ./baseline.nix |     ./baseline.nix | ||||||
|     ./steam |     ./gaming | ||||||
|     ./yubikey.nix |     ./yubikey.nix | ||||||
|     ./browsers.nix |     ./browsers.nix | ||||||
|     ./gui |     ./gui | ||||||
|     ./zsh |     ./zsh | ||||||
|     ./gpg.nix |     ./gpg.nix | ||||||
|  |     ./defaultDesktopPack.nix | ||||||
|   ]; |   ]; | ||||||
| } | } | ||||||
|  |  | ||||||
							
								
								
									
										34
									
								
								home/modules/defaultDesktopPack.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										34
									
								
								home/modules/defaultDesktopPack.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,34 @@ | ||||||
|  | { | ||||||
|  |   config, | ||||||
|  |   lib, | ||||||
|  |   pkgs, | ||||||
|  |   ... | ||||||
|  | }: | ||||||
|  | with lib; let | ||||||
|  |   cfg = config.local.apps.defaultDesktopPack; | ||||||
|  | in { | ||||||
|  |   options.local.apps.defaultDesktopPack = { | ||||||
|  |     enable = mkEnableOption "common desktop apps"; | ||||||
|  |   }; | ||||||
|  |   config = mkIf cfg.enable { | ||||||
|  |     home.packages = with pkgs; [ | ||||||
|  |       calibre | ||||||
|  |       discord | ||||||
|  |       gwenview | ||||||
|  |       libreoffice-fresh | ||||||
|  |       mpv | ||||||
|  |       obs-studio | ||||||
|  |       pavucontrol | ||||||
|  |       pdfarranger | ||||||
|  |       qpdfview | ||||||
|  |       runelite | ||||||
|  |       spotify | ||||||
|  |       tdesktop | ||||||
|  |       usbutils | ||||||
|  |       vpsfree-client | ||||||
|  |       vscodium-fhs | ||||||
|  |       zola | ||||||
|  |       zoom-us | ||||||
|  |     ]; | ||||||
|  |   }; | ||||||
|  | } | ||||||
							
								
								
									
										28
									
								
								home/modules/gaming/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								home/modules/gaming/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,28 @@ | ||||||
|  | { | ||||||
|  |   pkgs, | ||||||
|  |   lib, | ||||||
|  |   config, | ||||||
|  |   ... | ||||||
|  | }: | ||||||
|  | with lib; let | ||||||
|  |   cfg = config.local.apps.gaming; | ||||||
|  | in { | ||||||
|  |   options.local.apps.gaming = { | ||||||
|  |     enable = mkEnableOption "gaming apps"; | ||||||
|  |   }; | ||||||
|  |   config = mkIf cfg.enable { | ||||||
|  |     home.packages = [ | ||||||
|  |       # Steam. todo: move to the steam module later | ||||||
|  |       (pkgs.callPackage ./package.nix {}) | ||||||
|  |       pkgs.protonup | ||||||
|  |       pkgs.winetricks | ||||||
|  |       pkgs.protontricks | ||||||
|  |     ]; | ||||||
|  | 
 | ||||||
|  |     home.packages = with pkgs; [ | ||||||
|  |       lutris | ||||||
|  |       openrct2 | ||||||
|  |       prismlauncher | ||||||
|  |     ]; | ||||||
|  |   }; | ||||||
|  | } | ||||||
|  | @ -1,21 +0,0 @@ | ||||||
| { |  | ||||||
|   pkgs, |  | ||||||
|   lib, |  | ||||||
|   config, |  | ||||||
|   ... |  | ||||||
| }: |  | ||||||
| with lib; let |  | ||||||
|   cfg = config.local.apps.steam; |  | ||||||
| in { |  | ||||||
|   options.local.apps.steam = { |  | ||||||
|     enable = mkEnableOption "Steam settings"; |  | ||||||
|   }; |  | ||||||
|   config = mkIf cfg.enable { |  | ||||||
|     home.packages = [ |  | ||||||
|       (pkgs.callPackage ./package.nix {}) |  | ||||||
|       pkgs.protonup |  | ||||||
|       pkgs.winetricks |  | ||||||
|       pkgs.protontricks |  | ||||||
|     ]; |  | ||||||
|   }; |  | ||||||
| } |  | ||||||
|  | @ -1,45 +0,0 @@ | ||||||
| { |  | ||||||
|   config, |  | ||||||
|   lib, |  | ||||||
|   pkgs, |  | ||||||
|   ... |  | ||||||
| }: { |  | ||||||
|   local = { |  | ||||||
|     baseline.enable = true; |  | ||||||
|     apps = { |  | ||||||
|       terminal.enable = true; |  | ||||||
|       neovim.enable = true; |  | ||||||
|       steam.enable = true; |  | ||||||
|       yubikey.enable = true; |  | ||||||
|       browsers.enable = true; |  | ||||||
|     }; |  | ||||||
|   }; |  | ||||||
| 
 |  | ||||||
|   home.packages = with pkgs; [ |  | ||||||
|     calibre |  | ||||||
|     darktable |  | ||||||
|     deluge |  | ||||||
|     discord |  | ||||||
|     gcc |  | ||||||
|     gwenview |  | ||||||
|     kdenlive |  | ||||||
|     libreoffice-fresh |  | ||||||
|     lutris |  | ||||||
|     mpv |  | ||||||
|     obs-studio |  | ||||||
|     openrct2 |  | ||||||
|     pavucontrol |  | ||||||
|     pdfarranger |  | ||||||
|     prismlauncher |  | ||||||
|     qpdfview |  | ||||||
|     runelite |  | ||||||
|     spotify |  | ||||||
|     tdesktop |  | ||||||
|     usbutils |  | ||||||
|     virt-manager |  | ||||||
|     vpsfree-client |  | ||||||
|     vscodium-fhs |  | ||||||
|     zola |  | ||||||
|     zoom-us |  | ||||||
|   ]; |  | ||||||
| } |  | ||||||
|  | @ -6,7 +6,6 @@ | ||||||
|   ... |   ... | ||||||
| }: { | }: { | ||||||
|   imports = [ |   imports = [ | ||||||
|     ./apps.nix |  | ||||||
|     ./systemd |     ./systemd | ||||||
|     ./isolation.nix |     ./isolation.nix | ||||||
|   ]; |   ]; | ||||||
|  | @ -21,9 +20,29 @@ | ||||||
|     "unstable".flake = flakes.unstable; |     "unstable".flake = flakes.unstable; | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   local.gui = { |   local = { | ||||||
|  |     baseline.enable = true; | ||||||
|  | 
 | ||||||
|  |     services = { | ||||||
|  |       zsh.enable = true; | ||||||
|  |       accounts.enable = true; | ||||||
|  |       gpg = { | ||||||
|  |         enalbe = true; | ||||||
|  |         defaultKey = "7AA277E604A4173916BBB4E91FFAC35E1798174F"; | ||||||
|  |       }; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     apps = { | ||||||
|  |       terminal.enable = true; | ||||||
|  |       neovim.enable = true; | ||||||
|  |       gaming.enable = true; | ||||||
|  |       yubikey.enable = true; | ||||||
|  |       browsers.enable = true; | ||||||
|  |       defaultDesktopPack.enable = true; | ||||||
|  |     }; | ||||||
|  | 
 | ||||||
|  |     gui = { | ||||||
|       enable = true; |       enable = true; | ||||||
|     #? wallpaperPath = ""; place wallpaper in config? |  | ||||||
|       monitors = { |       monitors = { | ||||||
|         DP-1 = { |         DP-1 = { | ||||||
|           primary = true; |           primary = true; | ||||||
|  | @ -42,23 +61,23 @@ | ||||||
|         }; |         }; | ||||||
|       }; |       }; | ||||||
|     }; |     }; | ||||||
| 
 |  | ||||||
|   local.services = { |  | ||||||
|     zsh.enable = true; |  | ||||||
|     accounts.enable = true; |  | ||||||
|     gpg = { |  | ||||||
|       enalbe = true; |  | ||||||
|       defaultKey = "7AA277E604A4173916BBB4E91FFAC35E1798174F"; |  | ||||||
|     }; |  | ||||||
|   }; |   }; | ||||||
| 
 | 
 | ||||||
|   home = { |   home = { | ||||||
|     stateVersion = "21.11"; # No tocar esto |     packages = with pkgs; [ | ||||||
|  |       darktable | ||||||
|  |       deluge | ||||||
|  |       kdenlive | ||||||
|  |       virt-manager | ||||||
|  |     ]; | ||||||
|  | 
 | ||||||
|  |     stateVersion = "21.11"; # DO NOT CHANGE | ||||||
|     username = "fabian"; |     username = "fabian"; | ||||||
|     homeDirectory = "/home/fabian"; |     homeDirectory = "/home/fabian"; | ||||||
|     sessionVariables = { |     sessionVariables = { | ||||||
|       "TERMINAL" = "kitty"; |       "TERMINAL" = "kitty"; | ||||||
|     }; |     }; | ||||||
|   }; |   }; | ||||||
|  | 
 | ||||||
|   programs.home-manager.enable = true; |   programs.home-manager.enable = true; | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue