ooknet/inputs/home/modules/config/mimeApps/default.nix

40 lines
1.1 KiB
Nix

{ lib, config, pkgs, ... }:
let
cfg = config.homeModules.config.mimeApps;
browser = ["${config.home.sessionVariables.BROWSER}.desktop"];
zathura = ["org.pwmt.zethura.desktop.desktop"];
associations = {
"text/html" = browser;
"x-scheme-handler/http" = browser;
"x-scheme-handler/https" = browser;
"x-scheme-handler/ftp" = browser;
"x-scheme-handler/about" = browser;
"x-scheme-handler/unknown" = browser;
"application/x-extension-htm" = browser;
"application/x-extension-html" = browser;
"application/x-extension-shtml" = browser;
"application/xhtml+xml" = browser;
"application/x-extension-xhtml" = browser;
"application/x-extension-xht" = browser;
"audio/*" = ["mpv.desktop"];
"video/*" = ["mpv.dekstop"];
"image/*" = ["imv.desktop"];
"application/json" = browser;
"application/pdf" = zathura;
"x-scheme-handler/discord" = ["vesktop.desktop"];
};
in
{
config = lib.mkIf cfg.enable {
home.packages = [ pkgs.xdg-utils ];
xdg.mimeApps = {
enable = true;
associations.added = associations;
defaultApplications = associations;
};
};
}