refactor(home:mime-apps): move mime configuration to relevant application modules
This commit is contained in:
		
							parent
							
								
									65fb953361
								
							
						
					
					
						commit
						55f907cf08
					
				
					 7 changed files with 225 additions and 189 deletions
				
			
		|  | @ -1,33 +1,58 @@ | |||
| { pkgs, lib, inputs, config, ... }: | ||||
| 
 | ||||
| let | ||||
|   inherit (lib) mkIf mkMerge; | ||||
| 
 | ||||
|   addons = inputs.firefox-addons.packages.${pkgs.system}; | ||||
|   cfg = config.ooknet.browser.firefox; | ||||
|   browser = config.ooknet.desktop.browser; | ||||
|   inherit (lib) mkIf; | ||||
|   firefoxMime = { | ||||
|     "text/html" = ["firefox.desktop"]; | ||||
|     "x-scheme-handler/http" = ["firefox.desktop"]; | ||||
|     "x-scheme-handler/https" = ["firefox.desktop"]; | ||||
|     "x-scheme-handler/ftp" = ["firefox.desktop"]; | ||||
|     "x-scheme-handler/about" = ["firefox.desktop"]; | ||||
|     "x-scheme-handler/unknown" = ["firefox.desktop"]; | ||||
|     "application/x-extension-htm" = ["firefox.desktop"]; | ||||
|     "application/x-extension-html" = ["firefox.desktop"]; | ||||
|     "application/x-extension-shtml" = ["firefox.desktop"]; | ||||
|     "application/xhtml+xml" = ["firefox.desktop"]; | ||||
|     "application/x-extension-xhtml" = ["firefox.desktop"]; | ||||
|     "application/x-extension-xht" = ["firefox.desktop"]; | ||||
|     "application/json" = ["firefox.desktop"]; | ||||
|   }; | ||||
| in | ||||
| 
 | ||||
| { | ||||
| 
 | ||||
|   imports = [ ./tridactyl.nix ]; | ||||
|   config = mkIf (cfg.enable || browser == "firefox") { | ||||
|     home.sessionVariables.BROWSER = mkIf (browser == "firefox") "firefox"; | ||||
|     ooknet.binds.browser = mkIf (browser == "firefox") "firefox"; | ||||
|    | ||||
|     programs.firefox = { | ||||
|       enable = true; | ||||
|       nativeMessagingHosts = [pkgs.tridactyl-native]; | ||||
|       profiles.ooks = { | ||||
|         extensions = with addons; [ | ||||
|           ublock-origin | ||||
|           darkreader | ||||
|           tridactyl | ||||
|           # onepassword-password-manager # cannot get this to work unfree issue. | ||||
|         ]; | ||||
|         settings = import ./settings/ooksJs.nix; | ||||
|         userChrome = import ./theme/penguinFox.nix; | ||||
|         userContent = import ./theme/penguinFoxContent.nix; | ||||
|   config = mkMerge [  | ||||
|     (mkIf (cfg.enable || browser == "firefox") { | ||||
|       programs.firefox = { | ||||
|         enable = true; | ||||
|         nativeMessagingHosts = [ pkgs.tridactyl-native ]; | ||||
|         profiles.ooks = { | ||||
|           extensions = with addons; [ | ||||
|             ublock-origin | ||||
|             darkreader | ||||
|             tridactyl | ||||
|             # onepassword-password-manager # cannot get this to work unfree issue. | ||||
|           ]; | ||||
|           settings = import ./settings/ooksJs.nix; | ||||
|           userChrome = import ./theme/penguinFox.nix; | ||||
|           userContent = import ./theme/penguinFoxContent.nix; | ||||
|         }; | ||||
|       }; | ||||
|     }; | ||||
|   }; | ||||
|     }) | ||||
| 
 | ||||
|     (mkIf (browser == "firefox") { | ||||
|       home.sessionVariables.BROWSER = "firefox"; | ||||
|       ooknet.binds.browser = "firefox"; | ||||
|       xdg.mimeApps = { | ||||
|         associations.added = firefoxMime; | ||||
|         defaultApplications = firefoxMime; | ||||
|       }; | ||||
|     }) | ||||
| 
 | ||||
|   ]; | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue