HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
arkenfox
user.js
JavaScript2018–2026
arkenfox / user.js

user.js

Firefox privacy, security and anti-tracking: a comprehensive user.js template for configuration and hardening

78Distinct people
110Mentions
5Explicit recommenders
13KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Firefox privacy, security and anti-tracking: a comprehensive user.js template for configuration and hardening

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

For extensions, I recommend people follow the recommendations[1] in the arkenfox repo and either harden their firefox or use librewolf. Umatrix is unmaintained since 2019. [1]…

bmikaili used a recommendation phrase. 5 indexed comments match. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 11:19:25 AM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year110 dated mentions

Observed mentions: 2018-09-14 13:37:15 UTC to 2026-03-07 01:03:43 UTC.

05101520252018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20182019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 13 mentions; 1 submissions, 12 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 8 mentions; 0 submissions, 8 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 11 mentions; 1 submissions, 10 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 25 mentions; 1 submissions, 24 comments20222023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 20 mentions; 0 submissions, 20 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 10 mentions; 1 submissions, 9 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 20 mentions; 0 submissions, 20 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC101
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC13112
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC808
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC11110
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC25124
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC20020
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC1019
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC20020
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC202

From the project README

An excerpt from the repository, fetched Nov 13, 2026.

Read the project’s introduction
This repo and the interactive webpage linked below are the only official sources - do not trust any other sites claiming to be Arkenfox 🟪 user.js A user.js is a configuration file that can control Firefox settings - for a more technical breakdown and explanation, you can read more in the wiki 🟩 the arkenfox user.js The arkenfox user.js is a template which aims to provide as much privacy and enhanced security as possible, and to reduce tracking and fingerprinting as much as possible - while minimizing any loss of functionality and breakage (but it will happen). Firefox's built-in profile feature (enabled since FF150) can copy some preferences across profiles, including data-reporting and Health Reports preferences set by this template. Do not assume these settings are independent per profile; review Permissions and data > Firefox data collection and use in Firefox Settings and verify the shared behavior. The exact shared-preference list is Firefox-version-dependent. See 1933264 and permanentSharedPrefs. Everyone, experts included, should at least read the wiki, as it contains important information regarding a few user.js settings. There is also an interactive current release, thanks to icpantsparti2. Note that we do not recommend connecting over Tor on Firefox. Use the Tor Browser if your threat model calls for it, or for accessing hidden services. Also be aware that the arkenfox user.js is made specifically for desktop Firefox. Using it as-is in other Gecko-based browsers can be counterproductive, especially in the Tor Browser. 🟧 sitemap releases changelogs wiki stickies diffs common questions and answers 🟥 acknowledgments Literally thousands of sources, references and suggestions. Many thanks, and much appreciated.
Read the full README on GitHub

What Hacker News says

25 sources
I don't have accounts at any major online businesses, except Visa. Can't really avoid that one easily. My browsers block connections to trackers and 3rd party cookies. Sometimes scripts too, for good measure, and some selected stuff from user.js (https://github.com/arkenfox/user.js). Separate profiles for each service just to make really sure important stuff doesn't get affected by casual browsing, and vice versa. No google- or apple- owned phone. Phoning home from the PC is also at minimum - just Firefox does it and the package manager. It's not total privacy because for some interactions you want to share your details, like payment info, but what I get is that I know where I pierce the boundary.
In Ask HN: What do you do for online privacy?
Reasonable Linux distro that balances security, privacy and usability? I would interpret that as a Linux distribution that is kept up to date, is easy to configure, does not have dial-home cruft and has decent documentation. This is just my own take but opinions will vary wildly for everything I will add here. - Kept up to date would be all the popular distributions that are not niche focused such as the security/privacy distro's that you mentioned. They have a small user base and do not has as regular of a cadence of updates. So Arch, Alpine, Alma, Debian, CentOS/Redhat, Fedora, QubesOS, Rocky, Void, Ubuntu. Fedora and Ubuntu will have the most recent a.k.a. bleeding edge versions of upstream packages but most of the distributions are not far behind. The oldest and most battle hardened versions of software would be on CentOS/RHEL wi
Read the rest
th back-ported bug and security fixes. I intentionally left out Gentoo and LinuxFromScratch as those are for people that love tinkering and troubleshooting. - Not dialing home is devolving by the day but Alpine, Alma, Arch, Debian, CentOS, Qubues, Rocky, Void are not chatty. Fedora recently started dialing home quite heavily for desktop users and even mimic some Microsoft behavior in the latest Beta. Hopefully they will turn this off after Beta because blocking it breaks the desktop. Ubuntu had a few mis-steps in this area in the past but I do not know if Canonical curtailed the dialing home, this was some time ago. Something to keep an eye on in this area is systemd-resolvd as this is evolving and has the potential to get leaky but that is a topic in and of itself. - Arch has incredible documentation. They are an outlier in this area. Behind them I would place Debian, CentOS, Fedora and Ubuntu. The others have hit-or-miss documentation that sometimes requires a search engine to fill the gaps, especially as it pertains to real world examples. - Easiest to configure would be Ubuntu as it had heavy adoption early on by many developers, followed by Fedora. Both have a myriad of example configurations in their documentation and endless examples on StackExchange, Serverfault, etc... Again, just my own opinions. I tried to not be biased. I am a pragmatic minimalist and do not like shiny or trendy things. I personally prefer Void and Qubes for desktop and Alpine for VM's, Routers, Firewalls, etc... Qubes should have a decent amount of memory, maybe 32GB+. Both have some minor annoyances that would frustrate people new to Linux. All of the popular distributions can be locked down to be less chatty using outbound firewall rules with the iptables "owner" module with exception to Fedora's Beta. If you want to go beyond user-based+port-based rules then there is an open source project called OpenSnitch that mimics the behavior of LittleSnitch (mac). [1] Blocking the chatty behavior of Fedora will break it, especially their admin sub-domain. It is equivalent to Microsofts access sub-domain used heavily be the Home edition. Beyond the basic hardening of an OS if one wanted to really lock things down and assuming they understand Linux networking principals, then QubesOS + a custom Firewall VM clone + Custom Whonix VM clone has the potential to leak the least data but this assumes that one already greatly understands networking, linux, all the internet services. There are no turn-key solutions for this that fill knowledge gaps, despite there being several that claim to do so. If going down this path, I suggest using a spare machine that you would not mind blowing away and re-configuring VM's as a matter of a learning exercise. Reducing chatty'ness of user-space applications like Firefox would be user.js [2] and controlling what those applications can see or not see would be firejail available in some distro repos. [3] Additional hardening can be implemented using one of the five security modules in the Linux kernel, with the most common being AppArmor and SELinux but one must really learn how these work to get the most out of them. Most applications in a Linux distro have existing MAC rules. Custom applications would need custom MAC rules to secure them. The default rules in AppArmor and SELinux are designed for a balance of security and usability rather than security+privacy. All of the distributions can be stripped down to be as lean as you want. [1] - https://github.com/evilsocket/opensnitch [2] - https://github.com/arkenfox/user.js [3] - https://github.com/netblue30/firejail
In Ask HN: Reasonable Linux distro that balances security, privacy and usability?
Please correct me if I am wrong, have not followed LibreWolf for a while. I did try it out for a bit. I believe they are just implementing some facets of the custom user.js [1] and custom policy files and then changing where cache files are stored. I was not a fan of their cache location changes as I had to write custom rules in bleachbit [2] to vacuum/compress/clean database files created by LibreWolf. In a weird way I think they made their browser less private with that move as not everyone is going to write custom bleachbit rules. [1] - https://github.com/arkenfox/user.js [2] - https://www.bleachbit.org/features
In Just got this notice from my bank: No more Firefox
You don't actually need Decentraleyes or Privacy Badger now that Firefox has total cookie protection and that uBlock Origin supports their other features (some via lists). Arkenfox has a useful write-up on this: https://github.com/arkenfox/user.js/wiki/4.1-Extensions. I only have four extensions now: uBlock Origin, I Don't Care About Cookies, one for user agent switching, and one for removing HTML elements via the context menu.
In I've started using Firefox and can never go back to Chrome
pveierland·Jul 17, 2022Recommendation phrase
For the privacy conscious, the arkenfox user.js template provides a nice structure for setting up Firefox settings [1]. This works extra nicely if version controlled with your dotfiles and NixOS. programs.firefox.profiles.<name>.extraConfig = builtins.readFile ./user.js; One of my favorite settings is setting "keyword.enabled" to false, to prevent leaking mistyped URLs to the search engine provider. It feels much cleaner to explicitly specify the search engine using e.g. "g<space>" when you want to search. [1] https://github.com/arkenfox/user.js/
In I've started using Firefox and can never go back to Chrome
Would upvote parent more than once if I could. > I went through a mad phase where I had loads of extensions installed in my main browser. Then all these stories came out about addon authors getting contacted by shady actors who wanted to buy the addon so they could add malicious code that siphons off personal data. Now I just have uBlock Origin and that's it! I trust it NOT to be taken over by bad actors. Addons increase the number of parties you trust and also can make your browser more vulnerable. As we say in our openening paragraph https://www.privacyguides.org/browsers/ These are our current web browser recommendations and settings. We recommend keeping extensions to a minimum: they have privileged access within your browser, require you to trust the developer, can make you stand out, and weaken site isolation. - https://en.wikipedia
Read the rest
.org/wiki/Device_fingerprint#Browser_fin... - https://groups.google.com/a/chromium.org/g/chromium-extensio... > Addons also have exploitable bugs in them, and also having multiple 'privacy addons' can mean some overlap in functionality where the tracking protection is redundant since it's covered by another addon. Like who really needs Privacy Badger, DuckDuckGo privacy essentials, and then uBlock running all together? Which is why common methodology now is very conservative. If you look at the research Arkenfox has done https://github.com/arkenfox/user.js/wiki/4.1-Extensions they recommend very few extensions. > And with browsers shipping with fingerprinting mitigation, and having the option to surf strictly HTTPS sites, some addons are becoming redundant, like HTTPS Everywhere & 'useragent spoofing' addons which can actually make you stand out (privacy.resistFingerprinting:true in Firefox FTW). The trick is to blend in with a useragent, not stand out. RFP does more than just adjust the user agent. User agent spoofing does *not* work. As soon as you allow javascript there are dozens of metrics that can be used to profile you and to determine exactly what browser you have.
In Privacy-Respecting Software
The problem with lists like this is they really are just a "here's 100 open source products", without any criteria or individual evaluation. It is often just parrots repeating what other parrots say. Something which is clearly alpha-state isn't usable to regular users shouldn't have a "recommendation". Then you get sub optimal recommendations, listing some projects which are unmaintained etc. With the cleanup at https://privacyguides.org, (since we split from PTIO) we've removed a lot of things, and gone down the part of actually providing guidance rather than "use this software to make you magically more private". I think it's important to think privately, modify behavior rather than rely on technology to do it all for you. Looking at this particular list there are some bad choices: - LessPass: We explicitly removed deterministic passwor
Read the rest
d managers https://github.com/privacyguides/privacyguides.org/pull/323, https://tonyarcieri.com/4-fatal-flaws-in-deterministic-passw... - AndOTP: Uses PBKDF2 and a heap of rounds that is unbelievably slow when you have a number of OTPs. Aegis uses Argon, which doesn't have this problem, and we think it's code is developed by someone who is security conscientious. - Qwant: https://github.com/privacyguides/privacyguides.org/pull/342#..., we removed due to "due to bad privacy policies data is collected and shared with third parties" - Silence: Unmaintained, uses SS7 network, should never be recommended. - Off-The-Record: Doesn't cover group chats or other side channels, such as status updates, VOIP. In general XMPP isn't particularly "privacy friendly" https://web.archive.org/web/20211215132539/https://infosec-h... - PGP: NO. It has no forward secrecy, it's a terrible way to encrypt real time communication. - Matrix + Riot client: Seriously, it's been "Element" for ages now, makes me think the author really isn't up to date with current events. - Ricochet: Unmaintained, (2016) domain dead, Only supported .onion HSv2 - Tox + qTox: Developed wrong. They developed the software then decided to write the spec afterwards. There's also https://github.com/TokTok/c-toxcore/issues/426 - Mailfence: Last email I sent to them they don't use any kind of disk encryption - CriptText, these things really don't help, they are walled, in that everyone has to be on a centralized service to get the benefit. E2EE that comes with web-apps can often be dangerous as it can change, have vulnerabilities introduced after an audit etc. - TorBirdy: Unmaintained - Mumble: Not really private - Linphone: Not really private - Rocket Chat: Experimental E2EE - Browser Extensions: NO JUST NO. https://blog.privacyguides.org/2021/12/01/firefox-privacy-20... https://github.com/arkenfox/user.js/wiki/4.1-Extensions - Video Platforms: These are not private - RSS Clients: There are better options - Mobile Operating Systems: Options without Verified Boot. NO. https://source.android.com/security/verifiedboot - Linux recommendations: Those are also awful and don't have any threat model in mind. I'm going to stop now, it's basically every bad thing that was ever on PTIO, that we removed. Basically there are terrible recommendations with a few good ones sprinkled in. This list is *not* maintained!
In Privacy-Respecting Software
>Is there a safer JavaScript engine folks can use without having to worry about this sorta thing? Even if it's slower, less compatible, more resource-intensive, etc.? You can disable JIT in firefox[1], which makes it fall back to an interpreter. That should theoretically make it safer as there are less optimizations going on and less generated code being directly executed by the CPU. [1] https://github.com/arkenfox/user.js/blob/b4225baaf2f8d15f856...
In Chrome 0day is being exploited now for CVE-2022-1096; update immediately

Showing the 15 most recent of 25 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.