{ config, lib, pkgs, ... }: let cfg = config.snowhawk.defaultPrograms; in { options.snowhawk.defaultPrograms = { enable = lib.mkEnableOption "default programs"; }; config = lib.mkIf cfg.enable { xdg.mimeApps = { enable = true; defaultApplications = { # Firefox "application/pdf" = "brave-browser.desktop"; "application/x-extension-htm" = "brave-browser.desktop"; "application/x-extension-html" = "brave-browser.desktop"; "application/x-extension-shtml" = "brave-browser.desktop"; "application/x-extension-xht" = "brave-browser.desktop"; "application/x-extension-xhtml" = "brave-browser.desktop"; "application/xhtml+xml" = "brave-browser.desktop"; "text/html" = "brave-browser.desktop"; "x-scheme-handler/about" = "brave-browser.desktop"; "x-scheme-handler/chrome" = "brave-browser.desktop"; "x-scheme-handler/http" = "brave-browser.desktop"; "x-scheme-handler/https" = "brave-browser.desktop"; }; }; home.sessionVariables = { DEFAULT_BROWSER = "${pkgs.brave}/bin/brave"; }; }; }