246 lines
11 KiB
Nix
246 lines
11 KiB
Nix
{pkgs, ...}:
|
|
let
|
|
sources = import ../../_sources/generated.nix {inherit (pkgs) fetchgit fetchurl;};
|
|
tokyo-night-ff = pkgs.stdenv.mkDerivation rec {
|
|
inherit (sources.tokyo-night-ff) pname version src;
|
|
installPhase = ''
|
|
install -d $out
|
|
cp -R * $out
|
|
'';
|
|
};
|
|
in
|
|
{
|
|
programs.firefox = {
|
|
enable = true;
|
|
package = (pkgs.firefox-wayland.override {
|
|
cfg = {
|
|
enableBukubrow = true;
|
|
smartcardSupport = true;
|
|
pipewireSupport = true;
|
|
ffmpegSupport = true;
|
|
};
|
|
extraPolicies = {
|
|
AppAutoUpdate = false;
|
|
DisableAppUpdate = true;
|
|
DisableFirefoxAccounts = true;
|
|
DisableFirefoxStudies = true;
|
|
DisableMasterPasswordCreation = true;
|
|
DisablePocket = true;
|
|
DisableTelemetry = true;
|
|
DNSOverHTTPS = {
|
|
Enabled = true;
|
|
ProviderURL = "https://dns.nextdns.io/36e7f7";
|
|
Locked = true;
|
|
};
|
|
ExtensionUpdate = false;
|
|
FirefoxHome = {
|
|
Search = true;
|
|
TopSites = false;
|
|
SponsoredTopSites = false;
|
|
Highlights = false;
|
|
Pocket = false;
|
|
SponsoredPocket = false;
|
|
Snippets = false;
|
|
Locked = true;
|
|
};
|
|
ManualAppUpdateOnly = true;
|
|
OfferToSaveLogins = false;
|
|
OfferToSaveLoginsDefault = false;
|
|
OverrideFirstRunPage = "";
|
|
OverridePostUpdatePage = "";
|
|
PasswordManagerEnabled = false;
|
|
SearchBar = "unified";
|
|
ShowHomeButton = false;
|
|
UserMessaging = {
|
|
WhatsNew = false;
|
|
ExtensionRecommendations = false;
|
|
FeatureRecommendations = false;
|
|
UrlbarInterventions = false;
|
|
SkipOnboarding = false;
|
|
};
|
|
};
|
|
extraPrefs = ''
|
|
lockPref("accessibility.typeaheadfind.flashBar", 0);
|
|
lockPref("app.normandy.first_run", false);
|
|
lockPref("app.shield.optoutstudies.enabled", false);
|
|
lockPref("app.update.auto", false);
|
|
lockPref("app.update.backgroundErrors", 1);
|
|
lockPref("app.update.disable_button.showUpdateHistory", false);
|
|
lockPref("beacon.enabled", false);
|
|
lockPref("browser.aboutConfig.showWarning", false);
|
|
lockPref("browser.bookmarks.addedImportButton", true);
|
|
lockPref("browser.contentblocking.report.hide_vpn_banner", true);
|
|
lockPref("browser.contentblocking.report.lockwise.enabled", false);
|
|
lockPref("browser.contentblocking.report.show_mobile_app", false);
|
|
lockPref("browser.contentblocking.report.social.url", "");
|
|
lockPref("browser.formfill.enable", false);
|
|
lockPref("browser.laterrun.bookkeeping.profileCreationTime", 0);
|
|
lockPref("browser.laterrun.bookkeeping.sessionCount", 0);
|
|
lockPref("browser.newtabpage.activity-stream.discoverystream.rec.impressions", "{}");
|
|
lockPref("browser.newtabpage.activity-stream.discoverystream.spoc.impressions", "{}");
|
|
lockPref("browser.newtabpage.activity-stream.feeds.recommendationprovider", false);
|
|
lockPref("browser.newtabpage.activity-stream.feeds.telemetry", false);
|
|
lockPref("browser.newtabpage.activity-stream.impressionId", "{}");
|
|
lockPref("browser.newtabpage.activity-stream.telemetry", false);
|
|
lockPref("browser.newtabpage.activity-stream.telemetry.structuredIngestion.endpoint", "");
|
|
lockPref("browser.newtabpage.activity-stream.telemetry.ut.events", false);
|
|
lockPref("browser.ping-centre.telemetry", false);
|
|
lockPref("browser.places.importBookmarksHTML", false);
|
|
lockPref("browser.pocket.enabled", false);
|
|
lockPref("browser.safebrowsing.downloads.enabled", false);
|
|
lockPref("browser.safebrowsing.downloads.remote.block_dangerous", false);
|
|
lockPref("browser.safebrowsing.downloads.remote.block_dangerous_host", false);
|
|
lockPref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
|
|
lockPref("browser.safebrowsing.downloads.remote.block_uncommon", false);
|
|
lockPref("browser.safebrowsing.downloads.remote.enabled", false);
|
|
lockPref("browser.safebrowsing.downloads.remote.url", "");
|
|
lockPref("browser.safebrowsing.malware.enabled", false);
|
|
lockPref("browser.safebrowsing.phishing.enabled", false);
|
|
lockPref("browser.safebrowsing.provider.google.advisoryURL", "");
|
|
lockPref("browser.safebrowsing.provider.google.gethashURL", "");
|
|
lockPref("browser.safebrowsing.provider.google.gethashURL", "");
|
|
lockPref("browser.safebrowsing.provider.google.reportURL", "");
|
|
lockPref("browser.safebrowsing.provider.google.updateURL", "");
|
|
lockPref("browser.safebrowsing.provider.google4.advisoryURL", "");
|
|
lockPref("browser.safebrowsing.provider.google4.dataSharingURL", "");
|
|
lockPref("browser.safebrowsing.provider.google4.gethashURL", "");
|
|
lockPref("browser.safebrowsing.provider.google4.lists", "");
|
|
lockPref("browser.safebrowsing.provider.google4.reportURL", "");
|
|
lockPref("browser.safebrowsing.provider.google4.updateURL", "");
|
|
lockPref("browser.safebrowsing.provider.mozilla.gethashURL", "");
|
|
lockPref("browser.safebrowsing.provider.mozilla.lastupdatetime", "");
|
|
lockPref("browser.safebrowsing.provider.mozilla.lists", "");
|
|
lockPref("browser.safebrowsing.provider.mozilla.lists.base", "");
|
|
lockPref("browser.safebrowsing.provider.mozilla.lists.content", "");
|
|
lockPref("browser.safebrowsing.provider.mozilla.nextupdatetime", "");
|
|
lockPref("browser.safebrowsing.provider.mozilla.updateURL", "");
|
|
lockPref("browser.send_pings", false);
|
|
lockPref("browser.tabs.warnOnClose", true);
|
|
lockPref("browser.urlbar.eventTelemetry.enabled", false);
|
|
lockPref("browser.urlbar.suggest.bookmark", false);
|
|
lockPref("browser.urlbar.suggest.engines", false);
|
|
lockPref("browser.urlbar.suggest.history", false);
|
|
lockPref("browser.urlbar.suggest.openpage", false);
|
|
lockPref("browser.urlbar.suggest.quicksuggest.sponsored", false);
|
|
lockPref("browser.urlbar.suggest.topsites", false);
|
|
lockPref("datareporting.healthreport.infoURL", "");
|
|
lockPref("datareporting.policy.firstRunURL", "");
|
|
lockPref("device.sensors.ambientLight.enabled", false);
|
|
lockPref("device.sensors.enabled", false);
|
|
lockPref("device.sensors.motion.enabled", false);
|
|
lockPref("device.sensors.orientation.enabled", false);
|
|
lockPref("device.sensors.proximity.enabled", false);
|
|
lockPref("device.sensors.test.events", false);
|
|
lockPref("devtools.chrome.enabled", true);
|
|
lockPref("doh-rollout.uri", "");
|
|
lockPref("dom.battery.enabled", false);
|
|
lockPref("dom.event.clipboardevents.enabled", false);
|
|
lockPref("dom.security.unexpected_system_load_telemetry_enabled", false);
|
|
lockPref("dom.webgpu.enabled", true);
|
|
lockPref("extensions.formautofill.addresses.enabled", false);
|
|
lockPref("extensions.formautofill.creditCards.enabled", false);
|
|
lockPref("extensions.htmlaboutaddons.recommendations.enabled", false);
|
|
lockPref("extensions.recommendations.privacyPolicyUrl", "");
|
|
lockPref("extensions.recommendations.themeRecommendationUrl", "");
|
|
lockPref("extensions.ui.dictionary.hidden", true);
|
|
lockPref("extensions.update.autoUpdateDefault", false);
|
|
lockPref("gfx.canvas.accelerated", true);
|
|
lockPref("layers.acceleration.disabled", false);
|
|
lockPref("network.predictor.enabled", false);
|
|
lockPref("network.prefetch-next", false);
|
|
lockPref("network.trr.confirmation_telemetry_enabled", false);
|
|
lockPref("privacy.clearOnShutdown.downloads", true);
|
|
lockPref("privacy.donottrackheader.enabled", false);
|
|
lockPref("privacy.trackingprotection.origin_telemetry.enabled", false);
|
|
lockPref("remote.prefs.recommended", false);
|
|
lockPref("security.app_menu.recordEventTelemetry", false);
|
|
lockPref("security.certerrors.recordEventTelemetry", false);
|
|
lockPref("security.identitypopup.recordEventTelemetry", false);
|
|
lockPref("security.protectionspopup.recordEventTelemetry", false);
|
|
lockPref("services.settings.server", "");
|
|
lockPref("signon.autofillForms", false);
|
|
lockPref("signon.generation.enabled", false);
|
|
lockPref("signon.management.page.breach-alerts.enabled", false);
|
|
lockPref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
|
|
lockPref("toolkit.telemetry.bhrPing.enabled", false);
|
|
lockPref("toolkit.telemetry.cachedClientID", "");
|
|
lockPref("toolkit.telemetry.debugSlowSql", false);
|
|
lockPref("toolkit.telemetry.firstShutdownPing.enabled", false);
|
|
lockPref("toolkit.telemetry.geckoview.streaming", false);
|
|
lockPref("toolkit.telemetry.newProfilePing.enabled", false);
|
|
lockPref("toolkit.telemetry.pioneer-new-studies-available", false);
|
|
lockPref("toolkit.telemetry.previousBuildID", "");
|
|
lockPref("toolkit.telemetry.reportingpolicy.firstRun", "");
|
|
lockPref("toolkit.telemetry.server", "");
|
|
lockPref("toolkit.telemetry.server_owner", "");
|
|
lockPref("toolkit.telemetry.shutdownPingSender.enabled", "");
|
|
lockPref("toolkit.telemetry.shutdownPingSender.enabledFirstSession", false);
|
|
lockPref("toolkit.telemetry.testing.overrideProductsCheck", false);
|
|
lockPref("toolkit.telemetry.unified", false);
|
|
lockPref("toolkit.telemetry.updatePing.enabled", "");
|
|
lockPref("ui.systemUsesDarkTheme", 1);
|
|
lockPref("webgl.force-enabled", true);
|
|
lockPref("xpinstall.signatures.required", false);
|
|
'';
|
|
});
|
|
extensions = with pkgs.nur.repos.rycee.firefox-addons; [
|
|
augmented-steam
|
|
behave
|
|
bitwarden
|
|
bypass-paywalls-clean
|
|
canvasblocker
|
|
cookie-autodelete
|
|
darkreader
|
|
facebook-container
|
|
gopass-bridge
|
|
multi-account-containers
|
|
nighttab
|
|
privacy-redirect
|
|
privacy-possum
|
|
protondb-for-steam
|
|
reddit-enhancement-suite
|
|
reddit-moderator-toolbox
|
|
refined-github
|
|
skip-redirect
|
|
sourcegraph
|
|
steam-database
|
|
stylus
|
|
tokyo-night-v2
|
|
ublacklist
|
|
ublock-origin
|
|
];
|
|
profiles = {
|
|
default = {
|
|
id = 0;
|
|
isDefault = true;
|
|
name = "Default";
|
|
bookmarks = {
|
|
"Brave Search" = {
|
|
keyword = "@b";
|
|
url = "https://search.brave.com/search?q=%s";
|
|
};
|
|
"Hound" = {
|
|
keyword = "@nix";
|
|
url = "https://search.nix.gsc.io/?=%s";
|
|
};
|
|
"Lib.rs" = {
|
|
keyword = "@rs";
|
|
url = "https://lib.rs/search?=%s";
|
|
};
|
|
"Github" = {
|
|
keyword = "@gh";
|
|
url = "https://github.com/search?=%s";
|
|
};
|
|
"Nixpkgs Code Search" = {
|
|
keyword = "@ncs";
|
|
url = "https://sourcegraph.com/search?q=context:global+repo:^github\\.com/NixOS/nixpkgs%24+%s&patternType=literal";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
home.file.".mozilla/firefox/default/chrome" = {
|
|
recursive = true;
|
|
source = "${tokyo-night-ff}/chrome";
|
|
};
|
|
}
|