Commit baf84cd043b3

Vincent Demeester <vincent@sbr.pm>
2025-02-10 14:19:24
users/vincent: try some xdg magic in desktop…
… to *force* Firefx to be the default !
1 parent daa1cec
Changed files (2)
systems
modules
desktop
users
vincent
systems/modules/desktop/sway.nix
@@ -20,7 +20,10 @@ in
     };
 
     services.blueman.enable = config.modules.hardware.bluetooth.enable;
-
+    environment.sessionVariables = {
+      # only needed for Sway
+      XDG_CURRENT_DESKTOP = "sway";
+    };
     xdg = {
       portal = {
         enable = true;
users/vincent/desktop/default.nix
@@ -52,13 +52,30 @@ in
     ];
     config = {
       common = {
-	default = [
-	  "gtk"
-	];
+        default = [
+          "gtk"
+        ];
       };
     };
   };
-
+  xdg.mimeApps = {
+    enable = true;
+    defaultApplications = {
+      "text/html" = "firefox.desktop";
+      "x-scheme-handler/http" = "firefox.desktop";
+      "x-scheme-handler/https" = "firefox.desktop";
+      "x-scheme-handler/about" = "firefox.desktop";
+      "x-scheme-handler/unknown" = "firefox.desktop";
+    };
+  };
+  xdg.desktopEntries.firefox = {
+    name = "Firefox";
+    genericName = "Web Browser";
+    exec = "firefox %U";
+    terminal = false;
+    categories = [ "Application" "Network" "WebBrowser" ];
+    mimeType = [ "text/html" "text/xml" ];
+  };
   home.file.".XCompose".source = ./xorg/XCompose;
   xdg.configFile."xorg/emoji.compose".source = ./xorg/emoji.compose;
   xdg.configFile."xorg/parens.compose".source = ./xorg/parens.compose;