From 00db7aca343a925220b17223b02dfb79b05f597c Mon Sep 17 00:00:00 2001 From: tzlil Date: Fri, 20 Oct 2023 11:34:30 +0300 Subject: stuff --- mixins/firefox/absolute-minimum.nix | 228 ------------------------------------ 1 file changed, 228 deletions(-) delete mode 100644 mixins/firefox/absolute-minimum.nix (limited to 'mixins/firefox/absolute-minimum.nix') diff --git a/mixins/firefox/absolute-minimum.nix b/mixins/firefox/absolute-minimum.nix deleted file mode 100644 index d3ebe98..0000000 --- a/mixins/firefox/absolute-minimum.nix +++ /dev/null @@ -1,228 +0,0 @@ -let - profile = "default"; - prf = ".mozilla/firefox/${profile}"; - extstorage = "${prf}/browser-extension-data"; -in - { - config, - inputs, - pkgs, - lib, - ... - }: { - home-manager.users.tzlil = let - firefox-addons = pkgs.callPackage (pkgs.applyPatches { - src = inputs.firefox-addons; - patches = [./addons-passthru.patch]; - name = "firefox-addons-patched"; - }) {}; - mozlz4 = n: x: - pkgs.runCommand "${n}.lz4" {buildInputs = [pkgs.mozlz4a];} '' - mozlz4a ${pkgs.writeTextFile { - name = n; - text = builtins.toJSON x; - }} $out - ''; - cfg = config.home-manager.users.tzlil.programs; - addons = cfg.firefox.profiles.${profile}.extensions; - extensionPath = "extensions/{ec8030f7-c20a-464f-9b0e-13a3a9e97384}"; - - firefoxData = - pkgs.runCommand "firefox-default-profile" { - buildInputs = [ - pkgs.xvfb-run - (pkgs.firefox.override { - extraPolicies = { - Extensions.Install = map (x: x.src.outPath) addons; - ExtensionSettings = { - "google@search.mozilla.org" = {installation_mode = "blocked";}; - "amazondotcom@search.mozilla.org" = {installation_mode = "blocked";}; - "wikipedia@search.mozilla.org" = {installation_mode = "blocked";}; - "bing@search.mozilla.org" = {installation_mode = "blocked";}; - }; - }; - }) - ]; - } '' - HOME=$(mktemp -d) - export FONTCONFIG_FILE=${pkgs.makeFontsConf {fontDirectories = [pkgs.roboto];}} - mkdir -p $HOME/.mozilla/firefox/ - mkdir $out - ln -s $out $HOME/.mozilla/firefox/default - cat >> $HOME/.mozilla/firefox/profiles.ini<< EOF - [Profile0] - Default=1 - IsRelative=1 - Name=default - Path=default - EOF - - echo user_pref\(\"browser.region.network.url\", \"\"\)\; > $HOME/.mozilla/firefox/default/user.js - - xvfb-run firefox --screenshot about:blank --headless - - # cat $HOME/.mozilla/firefox/default/extensions.json > $out - # - ''; - extensionsData = "${firefoxData}/extensions.json"; - - # addonStartup = builtins.fromJSON (builtins.unsafeDiscardStringContext (builtins.readFile (pkgs.runCommand "addonStartup.json" { - # buildInputs = [ - # pkgs.mozlz4a - # pkgs.jq - # ]; - # } - # '' - # mozlz4a -d ${firefoxData}/addonStartup.json.lz4 /dev/stdout | jq . > $out - # ''))); - - # decrappedAddonStartup = lib.attrsets.updateManyAttrsByPath [ - # { - # path = ["app-builtin" "addons" "google@search.mozilla.org" "enable"]; - # update = old: false; - # } - # ] addonStartup; - - extensionManifest = e: - builtins.fromJSON (builtins.readFile (pkgs.runCommand "${e.addonId}-manifest.json" {buildInputs = [pkgs.p7zip];} '' - 7z x -so ${e.src.outPath} manifest.json > $out - '')); - in { - # these come from the HM module - home.file."${prf}/extension-preferences.json".source = pkgs.emptyFile; - home.file."${prf}/extension-preferences.json.tmp".source = pkgs.emptyFile; - - home.file."${prf}/extension-settings.json".source = pkgs.emptyFile; - home.file."${prf}/extension-settings.json.tmp".source = pkgs.emptyFile; - - # home.file."${prf}/search.json.mozlz4".source = pkgs.emptyFile; - home.file."${prf}/search.json.mozlz4.tmp".source = pkgs.emptyFile; - - home.file."${prf}/extensions".source = lib.mkForce "${pkgs.symlinkJoin { - name = "extensions"; - paths = addons; - }}/share/mozilla/${extensionPath}"; - - home.file."${prf}/storage".source = pkgs.emptyDirectory; - home.file."${prf}/crashes".source = pkgs.emptyDirectory; - home.file."${prf}/datareporting".source = pkgs.emptyDirectory; - home.file."${prf}/saved-telemetry-pings".source = pkgs.emptyDirectory; - - # home.file."${prf}/addonStartup.json.lz4".source = mozlz4 "addonStartup.json" (lib.attrsets.updateManyAttrsByPath [ - # { - # path = ["app-builtin" "addons" "google@search.mozilla.org" "enable"]; - # update = old: false; - # } - # ] addonStartup); - home.file."${prf}/addonStartup.json.lz4".source = pkgs.emptyFile; - home.file."${prf}/addonStartup.json.lz4.tmp".source = pkgs.emptyFile; - - home.file."${prf}/addons.json".source = pkgs.emptyFile; - home.file."${prf}/addons.json.tmp".source = pkgs.emptyFile; - - home.file."${prf}/extensions.json".source = extensionsData; - # home.file."${prf}/extensions.json".text = builtins.toJSON { - # schemaVersion = 35; - # addons = - # map (x: { - # active = true; - # appDisabled = false; - # defaultLocale = {}; - # embedderDisabled = false; - # foreignInstall = true; - # hidden = false; - # id = x.addonId; - # location = "app-profile"; - # manifestVersion = (extensionManifest x).manifest_version; - # optionalPermissions = { - # permissions = (extensionManifest x).optional_permissions or []; - # origins = (extensionManifest x).optional_permissions or []; - # }; - # path = x.src.outPath; - # rootURI = "jar:file://${x.src.outPath}!/"; - # softDisabled = false; - # type = "extension"; - # userDisabled = false; - # userPermissions = { - # permissions = (extensionManifest x).permissions or []; - # origins = (extensionManifest x).permissions or []; - # }; - # version = (extensionManifest x).version; - # }) - # addons; - # }; - home.file."${prf}/extensions.json.tmp".source = pkgs.emptyFile; - - # tries to access W_OK it forever - # home.file."${prf}/prefs.js".source = pkgs.emptyFile; - # home.file."${prf}/prefs-1.js".source = pkgs.emptyFile; - - programs.firefox = { - enable = true; - package = pkgs.firefox-wayland.override { - extraPolicies = { - CaptivePortal = false; - DisableFirefoxStudies = true; - DisablePocket = true; - DisableTelemetry = true; - DisableFirefoxAccounts = true; - FirefoxHome = { - Pocket = false; - Snippets = false; - }; - UserMessaging = { - ExtensionRecommendations = false; - SkipOnboarding = true; - }; - SearchEngines.Default = "DuckDuckGo"; - ExtensionSettings = { - "google@search.mozilla.org" = {installation_mode = "blocked";}; - "amazondotcom@search.mozilla.org" = {installation_mode = "blocked";}; - "wikipedia@search.mozilla.org" = {installation_mode = "blocked";}; - "bing@search.mozilla.org" = {installation_mode = "blocked";}; - }; - }; - }; - profiles.${profile} = { - userChrome = builtins.readFile ./userChrome.css; - search = { - default = "DuckDuckGo"; - force = true; - }; - extensions = with firefox-addons; [ - kristofferhagen-nord-theme - - ublock-origin - clearurls - privacy-possum - skip-redirect - canvasblocker - - sidebery - ]; - settings = { - "extensions.activeThemeID" = "{e410fec2-1cbd-4098-9944-e21e708418af}"; - - # (try to) hide crap - "browser.search.hiddenOneOffs" = "Google,Bing,Amazon.com,eBay,Twitter,Wikipedia (en)"; - "browser.newtabpage.activity-stream.showSponsored" = false; - "browser.newtabpage.activity-stream.showSponsoredTopSites" = false; - "services.sync.prefs.sync.browser.newtabpage.activity-stream.showSponsored" = false; - "services.sync.prefs.sync.browser.newtabpage.activity-stream.showSponsoredTopSites" = false; - "browser.newtabpage.activity-stream.default.sites" = ""; - "browser.urlbar.suggest.topsites" = false; - "browser.newtabpage.activity-stream.feeds.topsites" = false; - - # disable welcome page - "browser.aboutwelcome.enabled" = false; - # disable privacy notice - "datareporting.policy.firstRunURL" = ""; - # "browser.newtabpage.activity-stream.aboutHome.enabled" = false; - }; - # extraConfig = { - - # }; - }; - }; - }; - } -- cgit 1.4.1