Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

firefox: Simplify config #23

Open
Lehmanator opened this issue Jan 23, 2024 · 0 comments
Open

firefox: Simplify config #23

Lehmanator opened this issue Jan 23, 2024 · 0 comments

Comments

@Lehmanator
Copy link
Owner

Lehmanator commented Jan 23, 2024

Make Firefox config less complex & reduce number of files config is spread across.

Goals

  • Minimal updating of extension package hashes/versions.
  • home-manager config works as standalone (on non-NixOS systems)
  • home-manager inherits/overrides system config.
  • Profiles: base (to be extended by all other profiles)
  • Profiles: gnome, kde that use DE-specific settings & styles.
  • Profiles: default (to match profile of current desktop)
  • Profiles: hardened (default + hardening settings that might be inconvenient to use in default profile)
  • Profiles: tor-browser (match Tor browser settings)

Profile Features

Default Profile

  • Match profile of current desktop environment.
  • Librewolf-like default config.
  • Extensions installed by default.
  • Disable all "Suggestions" & other annoying 3rd-party shit.
  • Adapt to light/dark mode.
  • Wayland by default.
  • Sidebery tree tab sidebar auto-collapse/expand.
  • Configure default bookmarks, search engines, settings, extensions.

Desktop-specific Profiles

  • UserChrome theme to match toolkit styles.
  • UserChrome themes for extensions to match toolkit styles.
  • UserChrome themes recolor according to desktop wallpaper?
  • UserContent themes recolor according to desktop wallpaper?
  • Enable nativeHostExtensions

Extensions

  • adnauseum | ublock-origin (ad-blocking)
  • behind-the-overlay-revival (click to dismiss all overlay popups that block content)
  • bitwarden | browserpass | gopass-bridge | keepassxc-browser | passff (password manager & autofill)
  • buster-captcha-solver (auto-solve captchas)
  • bypass-paywalls-clean | unpaywall (bypass paywalls for content)
  • cliget (allow using FF to login on behalf of CLI programs)
  • cookies-txt (export cookies for usage in other programs)
  • copy-selected-tabs-to-clipboard | export-tabs-urls-and-titles (tab link saving)
  • don-t-fuck-with-paste | re-enable-right-click (prevent sites from blocking copy/paste)
  • fastforwardteam (skip tracking via URL shorteners)
  • firemonkey | violentmonkey (userScripts)
  • fx_cast (Chromecast Web Sender SDK implementation for FF)
  • hover-zoom-plus | imagus (zoom image thumbnails)
  • ipfs-companion
  • link-gopher (Extract all links from webpage, sort, dedup, & display in new tab)
  • offline-qr-code-generator
  • omnisearch (Supercharge Firefox with commands, shortcuts, and more)
  • overbitewx (Open Gopher protocol in FF. Requires Floodgap Public Gopher Proxy)
  • profile-switcher (Create, manage, switch b/w browser profiles)
  • search-engines-helper
  • sidebery (Tree style tab sidebar)
  • sponsorblock
  • tab-counter-plus
  • tab-session-manager | tab-stash
  • wayback-machine | web-archives

Desktop Integration

  • ff2mpv (Play audio/video in mpv with native client)
  • firenvim (FF into Neovim client)
  • gnome-shell-integration (Use extensions.gnome.org)
  • gsconnect (GSConnect)
  • plasma-integration
  • pywalfox (Dynamic theming using Pywal colors)
  • textern (Edit text in favorite external text editor)
  • tridactyl (Vim in browser)
  • vim-vixen | vimium | vimium-c

Downloading

  • markdownload (Web clipper in Markdown using Turndown & Readability.js)
  • video-downloadhelper

Developer

  • enhanced-github | octotree | refined-github (GitHub QoL improvements)
  • laboratory-by-mozilla (Generate Content Security Policy (CSP) headers for your sites)
  • lovely-forks (Show GitHub forks)
  • penetration-testing-kit
  • react-devtools
  • reduxdevtools
  • rust-search-extension
  • sourcegraph (add code intelligence to GitHub, GitLab, ...)
  • vue-js-devtools
  • wappalyzer
  • widegithub

Language / Translation

  • immersive-translate
  • inkah (Lookup Chinese/Korean words)
  • lingq-importer2 (Auto import foreign language pages, videos, etc. from web & study w/ LingQ's web/mobile apps)
  • simple-translate (Translate selected text using DeepL API or Google Translate)
  • to-deepl

Privacy

  • consent-o-matic (auto dismiss consent popups & minimal acceptance)
  • decentraleyes | localcdn (cache CDN assets)
  • disable-javascript | noscript (disable JS)
  • libredirect (Redirect shitty services to FOSS frontend proxies)
  • mullvad (VPN browser extension)
  • multi-account-containers
  • open-url-in-container
  • privacy-pass (privacy-pass anonymous auth protocol support)
  • privacy-possum (Reduces / falsifies tracking data)
  • private-relay (Generate email address aliases that forward to your real inbox)
  • skip-redirect
  • smart-referer (limit request referer headers)
  • temporary-containers
  • terms-of-service-didnt-read
  • ubo-scope (Measure 3rd-party exposure)
  • umatrix
  • user-agent-string-switcher

Syncing

  • floccus (Bookmark sync via Nextcloud / WebDAV)
  • wallabagger (sync w/ wallabag)
  • xbrowsersync

Theming

  • automatic-dark | dark-mode-webextension | dark-mode-website-switcher | darkreader (dark mode)
  • aw-watcher-web (provide browser status, history, etc. to ActivityWatch)
  • stylus (custom userContent CSS styles)

Unpackaged Extensions

Missing from rycee's NUR repo.

Options

NixOS Options

  • programs.firefox.policies
  • programs.firefox.preferences
  • programs.firefox.preferencesStatus
  • programs.firefox.autoConfig

home-manager Options

  • programs.firefox.policies
  • programs.firefox.profiles.<name>.extensions
  • programs.firefox.profiles.<name>.settings (Nix-based user.js attrs)
  • programs.firefox.profiles.<name>.extraConfig (Raw user.js lines)

nix-darwin Options

WSL Options

@Lehmanator Lehmanator changed the title Simplify Firefox config firefox: Simplify config Feb 7, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

When branches are created from issues, their pull requests are automatically linked.

1 participant