nix/home/firefox.nix

82 lines
2.3 KiB
Nix

{ pkgs, ... }:
{
nixpkgs.config.packageOverrides = pkgs: {
nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") {
inherit pkgs;
};
};
programs.firefox = {
# package = pkgs.librewolf;
# package = pkgs.firefox-wayland;
profiles."main" = {
id = 0;
bookmarks = {
"github".url = "https://github.com";
};
search.default = "DuckDuckGo";
settings = {
"extensions.pocket.enabled" = false;
#----
"browser.tabs.unloadOnLowMemory" = false;
# to enable userChrome
"toolkit.legacyUserProfileCustomizations.stylesheets" = true;
#----
"browser.newtabpage.activity-stream.showSponsoredTopSites" = false;
"browser.newtabpage.activity-stream.showSponsored" = false;
#----
"privacy.donottrackheader.enabled" = true;
# all cockies from cross-site blocked
"network.cookie.cookieBehavior" = 1;
# tracking in all tabs
"privacy.trackingprotection.enabled" = true;
"privacy.trackingprotection.cryptomining.enabled" = true;
"privacy.trackingprotection.fingerprinting.enabled" = true;
# new
# https everywhere
"dom.security.https_only_mode" = true;
"dom.security.https_only_mode_ever_enabled" = true;
# DNS over HTTPS disabled
"doh-rollout.disable-heuristics" = true;
"network.trr.mode" = 5;
# autofill (TODO)
"dom.forms.autocomplete.formautofill" = false;
"extensions.formautofill.creditCards.enabled" = false;
};
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
ublock-origin
umatrix
browserpass
tree-style-tab
];
userChrome = ''
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
// about:config - toolkit.legacyUserProfileCustomizations.stylesheets
// tab-toolbar - all versions
#titlebar {
display: none;
}
#tabbrowser-tabs,
#TabsToolbar,
#main-window:not([tabsintitlebar="true"]) #TabsToolbar {
visibility: collapse !important;
}
// hide sidebar-headers (Tree Style Tab)
#sidebar-header {
display: none;
}
#sidebar-box[sidebarcommand="treestyletab_piro_sakura_ne_jp-sidebar-action"] #sidebar-header {
display: none;
}
#main-window[tabsintitlebar="true"]:not([extradragspace="true"]) #TabsToolbar > .toolbar-items {
opacity: 0;
pointer-events: none;
}
'';
};
};
}