nix/home-manager/common/software/gui/firefox.nix
2023-09-29 19:18:14 +09:00

73 lines
2.7 KiB
Nix

{ config, pkgs, theme, ... }: {
imports = [ ./themes/${theme}/firefox-theme.nix ];
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.privacy-badger
rycee.firefox-addons.decentraleyes
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.censor-tracker
];
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 Wiki" = {
urls = [{ template = "https://nixos.wiki/index.php?search={searchTerms}"; }];
iconUpdateURL = "https://nixos.wiki/favicon.png";
updateInterval = 24 * 60 * 60 * 1000; # every day
definedAliases = [ "@nw" ];
};
"Home Manager Options" = {
urls = [{ template = "https://mipmip.github.io/home-manager-option-search/?query={searchTerms}"; }];
icon = "${pkgs.nixos-icons}/share/icons/hicolor/scalable/apps/nix-snowflake.svg";
definedAliases = [ "@hm" ];
};
};
};
};
}