nix/home-manager/common/software/gui/firefox.nix
2024-07-27 17:46:36 +09:00

78 lines
3 KiB
Nix

{ inputs, config, pkgs, theme, lib, ... }: {
# home.file.".mozilla/firefox/nix-user-profile/chrome/firefox-gnome-theme".source = inputs.firefox-gnome-theme;
programs.firefox = {
enable = true;
profiles.default = {
isDefault = true;
name = "default";
# userChrome = ''@import "firefox-gnome-theme/userChrome.css";'';
# userContent = ''@import "firefox-gnome-theme/userContent.css";'';
# https://discourse.nixos.org/t/anyone-using-firefox-gnome-theme-successfully-with-nixos-home-manager/19248/3
settings = {
## Firefox gnome theme ## - https://github.com/rafaelmardojai/firefox-gnome-theme/blob/7cba78f5216403c4d2babb278ff9cc58bcb3ea66/configuration/user.js
# (copied into here because home-manager already writes to user.js)
"toolkit.legacyUserProfileCustomizations.stylesheets" = true; # Enable customChrome.cs
"browser.uidensity" = 0; # Set UI density to normal
"svg.context-properties.content.enabled" = true; # Enable SVG context-propertes
"browser.theme.dark-private-windows" = false; # Disable private window dark theme
};
# https://nur.nix-community.org/repos/rycee/
extensions = with pkgs.nur.repos; [
rycee.firefox-addons.darkreader
rycee.firefox-addons.ublock-origin
rycee.firefox-addons.privacy-redirect
rycee.firefox-addons.link-cleaner
rycee.firefox-addons.adnauseam
rycee.firefox-addons.sponsorblock
];
search.default = "DuckDuckGo";
search.force = true;
search.order = [ "DuckDuckGo" ];
search.engines = {
"Nix Packages" = {
urls = [{
template = "https://search.nixos.org/packages";
params = [
{ name = "type"; value = "packages"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@np" ];
};
"NixOS Options" = {
urls = [{
template = "https://search.nixos.org/options";
params = [
{ name = "type"; value = "options"; }
{ name = "query"; value = "{searchTerms}"; }
];
}];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@no" ];
};
"NixOS Wiki" = {
urls = [{ template = "https://wiki.nixos.org/w/index.php?search={searchTerms}"; }];
iconUpdateURL = "https://wiki.nixos.org/favicon.png";
updateInterval = 24 * 60 * 60 * 1000; # every day
definedAliases = [ "@nw" ];
};
"Home Manager Options" = {
urls = [{ template = "https://home-manager-options.extranix.com/?query={searchTerms}&release=master"; }];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@hm" ];
};
};
extraConfig = builtins.readFile ./firefox/arkenfox-user.js;
};
};
}