nix-v0/src/home/gui/firefox.nix
2024-10-26 21:13:31 -05:00

52 lines
1.5 KiB
Nix

{ config, pkgs, lib, user, ... }:
let
vendorPath = ".config/.mozilla";
configPath = "${vendorPath}/firefox";
in
{
programs.firefox = {
enable = true;
package = pkgs.firefox-bin.overrideAttrs (o: {
buildCommand =
o.buildCommand
+ ''
wrapProgram "$executablePath" \
--set 'HOME' '${config.xdg.configHome}' \
--append-flags "${
lib.concatStringsSep " " (
[
"--name firefox"
"-P ${user}"
# "--profile ${config.xdg.configHome}/.mozilla/${user}"
]
)
}"
'';
});
};
xdg.mimeApps.defaultApplications = {
"application/pdf" = "firefox.desktop";
"application/x-extension-htm" = "firefox.desktop";
"application/x-extension-html" = "firefox.desktop";
"application/x-extension-shtml" = "firefox.desktop";
"application/x-extension-xht" = "firefox.desktop";
"application/x-extension-xhtml" = "firefox.desktop";
"application/xhtml+xml" = "firefox.desktop";
"image/jpeg" = "firefox.desktop";
"image/png" = "firefox.desktop";
"text/html" = "firefox.desktop";
"text/uri-list" = "firefox.desktop";
"x-scheme-handler/chrome" = "firefox.desktop";
"x-scheme-handler/http" = "firefox.desktop";
"x-scheme-handler/https" = "firefox.desktop";
};
custom.persist = {
home.directories = [
".cache/mozilla"
".config/.mozilla"
];
};
}