forked from jan-leila/nix-config
		
	created program option entries for all packages that needs continual state
This commit is contained in:
		
							parent
							
								
									5484f9ba04
								
							
						
					
					
						commit
						9fe35e74ad
					
				
					 21 changed files with 374 additions and 63 deletions
				
			
		
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/anki.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/anki.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.anki = { | ||||
|     enable = lib.mkEnableOption "enable anki"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.anki.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         anki | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for anki | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/bitwarden.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/bitwarden.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.bitwarden = { | ||||
|     enable = lib.mkEnableOption "enable bitwarden"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.bitwarden.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         bitwarden | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for bitwarden | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/calibre.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/calibre.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.calibre = { | ||||
|     enable = lib.mkEnableOption "enable calibre"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.calibre.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         calibre | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for calibre | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										17
									
								
								modules/home-manager-modules/programs/default.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										17
									
								
								modules/home-manager-modules/programs/default.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,17 @@ | |||
| {...}: { | ||||
|   imports = [ | ||||
|     ./firefox.nix | ||||
|     ./signal.nix | ||||
|     ./bitwarden.nix | ||||
|     ./makemkv.nix | ||||
|     ./obs.nix | ||||
|     ./anki.nix | ||||
|     ./qbittorrent.nix | ||||
|     ./discord.nix | ||||
|     ./obsidian.nix | ||||
|     ./prostudiomasters.nix | ||||
|     ./idea.nix | ||||
|     ./protonvpn.nix | ||||
|     ./calibre.nix | ||||
|   ]; | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/discord.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/discord.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.discord = { | ||||
|     enable = lib.mkEnableOption "enable discord"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.discord.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         discord | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for discord | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										3
									
								
								modules/home-manager-modules/programs/firefox.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								modules/home-manager-modules/programs/firefox.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | |||
| {...}: { | ||||
|   # TODO: map firefox impermanence | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/idea.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/idea.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.jetbrains.idea-community = { | ||||
|     enable = lib.mkEnableOption "enable idea-community"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.jetbrains.idea-community.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         jetbrains.idea-community | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for idea-community | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										25
									
								
								modules/home-manager-modules/programs/makemkv.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										25
									
								
								modules/home-manager-modules/programs/makemkv.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,25 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.makemkv = { | ||||
|     enable = lib.mkEnableOption "enable makemkv"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.makemkv.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         makemkv | ||||
|       ]; | ||||
|       # TODO: write config file for makemkv | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for makemkv | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/obs.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/obs.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.obs-studio = { | ||||
|     # enable = lib.mkEnableOption "enable obs"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.obs-studio.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         obs-studio | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for obs | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/obsidian.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/obsidian.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.obsidian = { | ||||
|     # enable = lib.mkEnableOption "enable obsidian"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.obsidian.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         obsidian | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for obsidian | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/prostudiomasters.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/prostudiomasters.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.prostudiomasters = { | ||||
|     enable = lib.mkEnableOption "enable prostudiomasters"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.prostudiomasters.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         prostudiomasters | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for prostudiomasters | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/protonvpn.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/protonvpn.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.protonvpn-gui = { | ||||
|     enable = lib.mkEnableOption "enable protonvpn"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.protonvpn-gui.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         protonvpn-gui | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for protonvpn | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/qbittorrent.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/qbittorrent.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.qbittorrent = { | ||||
|     enable = lib.mkEnableOption "enable qbittorrent"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.qbittorrent.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         qbittorrent | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for qbittorrent | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
							
								
								
									
										24
									
								
								modules/home-manager-modules/programs/signal.nix
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										24
									
								
								modules/home-manager-modules/programs/signal.nix
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,24 @@ | |||
| { | ||||
|   lib, | ||||
|   pkgs, | ||||
|   config, | ||||
|   osConfig, | ||||
|   ... | ||||
| }: { | ||||
|   options.programs.signal-desktop-bin = { | ||||
|     enable = lib.mkEnableOption "enable signal"; | ||||
|   }; | ||||
| 
 | ||||
|   config = lib.mkIf config.programs.signal-desktop-bin.enable (lib.mkMerge [ | ||||
|     { | ||||
|       home.packages = with pkgs; [ | ||||
|         signal-desktop-bin | ||||
|       ]; | ||||
|     } | ||||
|     ( | ||||
|       lib.mkIf osConfig.host.impermanence.enable { | ||||
|         # TODO: map impermanence for signal | ||||
|       } | ||||
|     ) | ||||
|   ]); | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue