{ buildFirefoxXpiAddon, lib, }: { "bitwarden" = buildFirefoxXpiAddon { pname = "bitwarden"; version = "2024.10.1"; addonId = "{446900e4-71c2-419f-a6a7-df9c091e268b}"; url = "https://addons.mozilla.org/firefox/downloads/file/4371752/bitwarden_password_manager-2024.10.1.xpi"; sha256 = "7b7357ddce2756dc536b86b5c14139ec09731c1c114ac82807c60fba3ced12a5"; meta = with lib; { homepage = "https://bitwarden.com"; description = "At home, at work, or on the go, Bitwarden easily secures all your passwords, passkeys, and sensitive information."; license = licenses.gpl3; mozPermissions = [ "" "*://*/*" "tabs" "contextMenus" "storage" "unlimitedStorage" "clipboardRead" "clipboardWrite" "idle" "alarms" "webRequest" "webRequestBlocking" "webNavigation" "file:///*" "https://lastpass.com/export.php" ]; platforms = platforms.all; }; }; "consent-o-matic" = buildFirefoxXpiAddon { pname = "consent-o-matic"; version = "1.1.3"; addonId = "gdpr@cavi.au.dk"; url = "https://addons.mozilla.org/firefox/downloads/file/4362793/consent_o_matic-1.1.3.xpi"; sha256 = "a3ca5c64ac50376366beb4cce610d0af80e687c8c6a8c21a107c6118059896f8"; meta = with lib; { homepage = "https://consentomatic.au.dk/"; description = "Automatic handling of GDPR consent forms"; license = licenses.mit; mozPermissions = [ "activeTab" "tabs" "storage" "" ]; platforms = platforms.all; }; }; "darkreader" = buildFirefoxXpiAddon { pname = "darkreader"; version = "4.9.94"; addonId = "addon@darkreader.org"; url = "https://addons.mozilla.org/firefox/downloads/file/4359254/darkreader-4.9.94.xpi"; sha256 = "251c4e7d0a30c0cab006803600e59ab92dcc0c606429740d42677846d4c9ccd6"; meta = with lib; { homepage = "https://darkreader.org/"; description = "Dark mode for every website. Take care of your eyes, use dark theme for night and daily browsing."; license = licenses.mit; mozPermissions = [ "alarms" "contextMenus" "storage" "tabs" "theme" "" ]; platforms = platforms.all; }; }; "furiganaize" = buildFirefoxXpiAddon { pname = "furiganaize"; version = "0.7.2"; addonId = "{a2503cd4-4083-4c2f-bef2-37767a569867}"; url = "https://addons.mozilla.org/firefox/downloads/file/4032306/furiganaize-0.7.2.xpi"; sha256 = "7545bc418f2afbc576b0e762f2b2fa0545d5d94f3f80737e5356d087a5951c0b"; meta = with lib; { homepage = "https://github.com/kuanyui/Furiganaize"; description = "Auto insert furigana (振り仮名) on Japanese kanji."; license = licenses.mit; mozPermissions = [ "http://*/*" "https://*/*" "file://*/*" "" "activeTab" "tabs" "storage" ]; platforms = platforms.all; }; }; "ipfs-companion" = buildFirefoxXpiAddon { pname = "ipfs-companion"; version = "3.1.0"; addonId = "ipfs-firefox-addon@lidel.org"; url = "https://addons.mozilla.org/firefox/downloads/file/4172699/ipfs_companion-3.1.0.xpi"; sha256 = "784f6d1e0497d86f1e42cfe7de8548b5cc28fabe80e50771d90f59ddf1b9d3c1"; meta = with lib; { homepage = "https://github.com/ipfs/ipfs-companion"; description = "Harness the power of IPFS in your browser"; license = licenses.cc0; mozPermissions = [ "idle" "tabs" "notifications" "proxy" "storage" "unlimitedStorage" "contextMenus" "clipboardWrite" "webNavigation" "webRequest" "webRequestBlocking" ]; platforms = platforms.all; }; }; "languagetool" = buildFirefoxXpiAddon { pname = "languagetool"; version = "8.11.8"; addonId = "languagetool-webextension@languagetool.org"; url = "https://addons.mozilla.org/firefox/downloads/file/4341696/languagetool-8.11.8.xpi"; sha256 = "2f1489f7180303be730ff2b16d6a432d07017c6cffd3fbfc39f37dc809a25fc8"; meta = with lib; { homepage = "https://languagetool.org"; description = "With this extension you can check text with the free style and grammar checker LanguageTool. It finds many errors that a simple spell checker cannot detect, like mixing up there/their, a/an, or repeating a word."; mozPermissions = [ "activeTab" "storage" "contextMenus" "alarms" "http://*/*" "https://*/*" "file:///*" "*://docs.google.com/document/*" "*://languagetool.org/*" ]; platforms = platforms.all; }; }; "metamask" = buildFirefoxXpiAddon { pname = "metamask"; version = "12.0.6"; addonId = "webextension@metamask.io"; url = "https://addons.mozilla.org/firefox/downloads/file/4342782/ether_metamask-12.0.6.xpi"; sha256 = "a66e20bbe5ded1b9408420e4c2ffc82369cc3bfd27350afe25f2c0ef6b26ff3b"; meta = with lib; { description = "Ethereum Browser Extension"; mozPermissions = [ "storage" "unlimitedStorage" "clipboardWrite" "http://localhost:8545/" "https://*.infura.io/" "https://*.codefi.network/" "https://*.cx.metamask.io/" "https://chainid.network/chains.json" "https://lattice.gridplus.io/*" "activeTab" "webRequest" "*://*.eth/" "notifications" "file://*/*" "http://*/*" "https://*/*" "*://connect.trezor.io/*/popup.html" ]; platforms = platforms.all; }; }; "no-pdf-download" = buildFirefoxXpiAddon { pname = "no-pdf-download"; version = "1.0.6"; addonId = "{b9b25e4a-bdf4-4270-868c-3f619eaf437d}"; url = "https://addons.mozilla.org/firefox/downloads/file/3020560/no_pdf_download-1.0.6.xpi"; sha256 = "fa27b6729178a23ccf2eee07cd7650d841fc6040f2e5adfb919931b671ed79e6"; meta = with lib; { homepage = "https://github.com/MorbZ/no-pdf-download"; description = "Opens all PDF files directly in the browser."; license = licenses.mit; mozPermissions = [ "webRequest" "webRequestBlocking" "" ]; platforms = platforms.all; }; }; "redirector" = buildFirefoxXpiAddon { pname = "redirector"; version = "3.5.3"; addonId = "redirector@einaregilsson.com"; url = "https://addons.mozilla.org/firefox/downloads/file/3535009/redirector-3.5.3.xpi"; sha256 = "eddbd3d5944e748d0bd6ecb6d9e9cf0e0c02dced6f42db21aab64190e71c0f71"; meta = with lib; { homepage = "http://einaregilsson.com/redirector/"; description = "Automatically redirects to user-defined urls on certain pages"; license = licenses.mit; mozPermissions = [ "webRequest" "webRequestBlocking" "webNavigation" "storage" "tabs" "http://*/*" "https://*/*" "notifications" ]; platforms = platforms.all; }; }; "rikaichamp" = buildFirefoxXpiAddon { pname = "rikaichamp"; version = "1.22.0"; addonId = "{59812185-ea92-4cca-8ab7-cfcacee81281}"; url = "https://addons.mozilla.org/firefox/downloads/file/4371439/10ten_ja_reader-1.22.0.xpi"; sha256 = "d6f3197b7e3383f2723b9376d93e03fe515e5c610f9c0723d9618b10d3cc4bf1"; meta = with lib; { homepage = "https://github.com/birchill/10ten-ja-reader/"; description = "Quickly translate Japanese by hovering over words. Formerly released as Rikaichamp."; license = licenses.gpl3; mozPermissions = [ "alarms" "clipboardWrite" "contextMenus" "storage" "unlimitedStorage" "http://*/*" "https://*/*" "file:///*" "https://docs.google.com/*" ]; platforms = platforms.all; }; }; "skip-redirect" = buildFirefoxXpiAddon { pname = "skip-redirect"; version = "2.3.6"; addonId = "skipredirect@sblask"; url = "https://addons.mozilla.org/firefox/downloads/file/3920533/skip_redirect-2.3.6.xpi"; sha256 = "dbe8950245c1f475c5c1c6daab89c79b83ba4680621c91e80f15be7b09b618ae"; meta = with lib; { description = "Some web pages use intermediary pages before redirecting to a final page. This add-on tries to extract the final url from the intermediary url and goes there straight away if successful."; license = licenses.mit; mozPermissions = [ "" "clipboardWrite" "contextMenus" "notifications" "storage" "webRequest" "webRequestBlocking" ]; platforms = platforms.all; }; }; "switchyomega" = buildFirefoxXpiAddon { pname = "switchyomega"; version = "2.5.10"; addonId = "switchyomega@feliscatus.addons.mozilla.org"; url = "https://addons.mozilla.org/firefox/downloads/file/848109/switchyomega-2.5.10.xpi"; sha256 = "dfefc2da59eeb2e92a32fc75fb05426feeea4c39ee01b7a797395ed29ed7cf77"; meta = with lib; { homepage = "https://github.com/FelisCatus/SwitchyOmega"; description = "Manage and switch between multiple proxies quickly & easily."; license = licenses.gpl3; mozPermissions = [ "proxy" "tabs" "alarms" "storage" "webRequest" "downloads" "webRequestBlocking" "contextMenus" "http://*/*" "https://*/*" "" ]; platforms = platforms.all; }; }; "ublock-origin" = buildFirefoxXpiAddon { pname = "ublock-origin"; version = "1.60.0"; addonId = "uBlock0@raymondhill.net"; url = "https://addons.mozilla.org/firefox/downloads/file/4359936/ublock_origin-1.60.0.xpi"; sha256 = "e2cda9b2a1b0a7f6e5ef0da9f87f28df52f8560587ba2e51a3003121cfb81600"; meta = with lib; { homepage = "https://github.com/gorhill/uBlock#ublock-origin"; description = "Finally, an efficient wide-spectrum content blocker. Easy on CPU and memory."; license = licenses.gpl3; mozPermissions = [ "alarms" "dns" "menus" "privacy" "storage" "tabs" "unlimitedStorage" "webNavigation" "webRequest" "webRequestBlocking" "" "http://*/*" "https://*/*" "file://*/*" "https://easylist.to/*" "https://*.fanboy.co.nz/*" "https://filterlists.com/*" "https://forums.lanik.us/*" "https://github.com/*" "https://*.github.io/*" "https://github.com/uBlockOrigin/*" "https://ublockorigin.github.io/*" "https://*.reddit.com/r/uBlockOrigin/*" ]; platforms = platforms.all; }; }; "user-agent-switcher" = buildFirefoxXpiAddon { pname = "user-agent-switcher"; version = "0.5.0"; addonId = "{a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7}"; url = "https://addons.mozilla.org/firefox/downloads/file/4098688/user_agent_string_switcher-0.5.0.xpi"; sha256 = "9dc8da3c8c46d4f04d12fd789c63501fa6a2f502f859b286939a090db63eae33"; meta = with lib; { homepage = "http://add0n.com/useragent-switcher.html"; description = "Spoof websites trying to gather information about your web navigation—like your browser type and operating system—to deliver distinct content you may not want."; license = licenses.mpl20; mozPermissions = [ "storage" "" "webNavigation" "webRequest" "webRequestBlocking" "contextMenus" "*://*/*" ]; platforms = platforms.all; }; }; "violentmonkey" = buildFirefoxXpiAddon { pname = "violentmonkey"; version = "2.26.0"; addonId = "{aecec67f-0d10-4fa7-b7c7-609a2db280cf}"; url = "https://addons.mozilla.org/firefox/downloads/file/4362578/violentmonkey-2.26.0.xpi"; sha256 = "47b61fd463602a38bf67591ab94c60d3f1a02ad4f81b9a8a3de97d5461b2e12e"; meta = with lib; { homepage = "https://violentmonkey.github.io/"; description = "Userscript support for browsers, open source."; license = licenses.mit; mozPermissions = [ "tabs" "" "webRequest" "webRequestBlocking" "notifications" "storage" "unlimitedStorage" "clipboardWrite" "contextMenus" "cookies" ]; platforms = platforms.all; }; }; }