main
1{lib, ...}: {
2 den.aspects.desktop.app.browser = {
3 settings.user = {
4 defaults = lib.mkOption {
5 type = lib.types.listOf lib.types.str;
6 description = "Default browsers' desktop entries";
7 default = [];
8 };
9 };
10 hjem = {user, ...}: let
11 cfg = user.system.settings.desktop.app.browser;
12 desktopEntries = cfg.defaults;
13 in {
14 xdg.mime-apps.default-applications = {
15 "application/json" = desktopEntries;
16 "text/html" = desktopEntries;
17 "text/xml" = desktopEntries;
18 "application/xml" = desktopEntries;
19 "application/xhtml+xml" = desktopEntries;
20 "application/xhtml_xml" = desktopEntries;
21 "application/rdf+xml" = desktopEntries;
22 "application/rss+xml" = desktopEntries;
23 "application/x-extension-htm" = desktopEntries;
24 "application/x-extension-html" = desktopEntries;
25 "application/x-extension-shtml" = desktopEntries;
26 "application/x-extension-xht" = desktopEntries;
27 "application/x-extension-xhtml" = desktopEntries;
28
29 "x-scheme-handler/about" = desktopEntries;
30 "x-scheme-handler/ftp" = desktopEntries;
31 "x-scheme-handler/http" = desktopEntries;
32 "x-scheme-handler/https" = desktopEntries;
33 };
34 };
35 };
36}