It's been well over a month since I used Mozilla Firefox as my daily web browser. No, seriously, I've been using stock Firefox. No forks like Librewolf or GNU Icecat. Why would I do that though? I have been mentioning my disappointment with Mozilla Firefox, and I even went as far as to go back to a Blink-based web browser (qutebrowser). Why would I do that? Doesn't this sound contradictory?
It's easy to crap on a product you're not using, especially a web-related product, but it's not easy to actually make it better, and when it comes to Firefox, well I mean they tried to make a better web browser, but now it's just junk by default, though on the technical side, their web browser engine (Gecko), is the only other web browser engine aside from Blink to make the modern web work. Nonetheless, complaining about the junk inside Firefox is not a solution, so I went ahead to really figure out how to make this web browser usable.
In the past, I've used Firefox forks as a simple way to get the junk out of Mozilla, however, I stopped using them mainly because their package distribution was rather limited, and I really didn't like to do manual interventions just go get one of those web browsers on my system. At the same time, I was really mad about the terrible UX issues upstream had done, and I wanted to take a break from the dumpster fire, which meant I had to look out for something else, which was qutebrowser. I think qutebrowser is a really amazing web browser, even being able to browse the modern web, my only issue is that it's basically using Blink, so I wanted to figure out how I can make Mozilla Firefox usable.
A lot of people recommend using a user.js file. Firefox stores its user configurations located at ~/.mozilla/firefox/PROFILE_NAME/user.js. People over the past years have created user.js configs with stripping the spying and junk inside Firefox. I was a bit sceptical about these because they're basically config files, just a bit more cumbersome and very large, but since I have spend a lot of time on configuring text files already, I decided to just bite the bullet and try it out myself. The last time I used Mozilla Firefox was a while ago, long before I was even in interest of internet privacy, so my prior experience has rather come from forks that already stripped down the junk from Mozilla Firefox.
Here's how I configure Firefox before I use it.
Opening up the terminal (since it's much faster), enter:
$ firefox -ProfileManager
Simply create a profile and exit.
Now remove everything inside that directory:
$ rm -rf ~/.mozilla/firefox/PROFILE_NAME/*
Replace PROFILE_NAME with your actual profile name. Now throw in a user.js file from a user that has removed all of the tracking and UX issues from Firefox. As an example, I'm gonna show you how to get my user.js working. Install git if you haven't already and enter the following:
$ git clone https://codeberg.org/sprinklednights/dotfiles
$ cp dotfiles/.config/firefox/user.js ~/.mozilla/firefox/PROFILE_NAME/
Run profile manager again:
$ firefox -ProfileManager
Select your created profile to be the profile to be always running at start.
With that in mind, I change the search engine, install uBlock Origin and I Still Don't Care About Cookies.
The final two connections that you can't disable are content-signature-2.cdn.mozilla.net & firefox.settings.services.mozilla.com. If you are elitist, you can do the following:
# $EDITOR /etc/hosts
When rebooting and taking a look at it at about:networking, you can see that while it's not gone, Firefox can't connect to that domain because that address has been blocked by you in the /etc/hosts file.
With all of that, your done! ...
Now, I'm for the idea of using configuration files for your programs because it's just so thoughtless and simple. It doesn't require any overhead in comparison to reconfiguring an application with their user interface, however, I don't like Firefox's way either. It requires a lot of manual intervention to get it working whereas something like qutebrowser just has a simple config.py file that you just place in ~/.config/qutebrowser/, and you're good to go.
Even with that, a web browser should be private and secure by default. Of course as a tinkerer, I'm ready to do the task of stripping down every bit of tracking, but that doesn't mean I'm fine with the fact that Mozilla Firefox by default tracking you. Matter of fact, if you want to call your web browser privacy-focused, it should not make any unsolicited requests by default because you can't make sure whether these requests are for your privacy or not. In Firefox's case, according to their privacy, we know that they're not for your privacy. On top of that, Firefox does not encourage you to remotely care about internet privacy at all! Their default search engine is Google and their default home page has nothing but links to non-privacy focused sites like Amazon. Is this really a privacy-focused web browser like they advertise it to be? This is seriously so contradictory to the extend that Mozilla should be ashamed of including it in the first place. This is the biggest lie I've ever seen from a company, to be lying in your face like that is an insult to everyone who remotely cared about internet privacy at all. Shame on you Mozilla, you should be fully ashamed of what you have released your web browser with by default.
Even with the user.js files, you still have to learn a couple of options, else your experience is just borked. I took the user.js file from Narsil. Kudos to him for making a seriously good user.js file for security and privacy, but personally, some settings just made little to no sense to me, and the entire file was filled with junk comments, so I had to do a little cleanup...
The first thing that irritated me to no end was keyword.enabled. If you ever wondered why there are two separate search bars is perhaps back in the day, you'd use the long search bar for entering urls and the smaller one for search engines when they were a new thing. The option keyword.enabled just allows you to use the main bar both for entering urls and for your search engine, and the way it works (from what I understand) is if you didn't enter a top-level domain, the web browser automatically parses the entered text to the search engine. I suppose it was disabled by default because of non-privacy based search engines doing some other shady stuff. Now, if you use an actual good search engine, there's no reason to disable it, matter of fact, when I first tried out this journey, I was so frustrated by it that I could not resist to re-enable it. It's just such an awful UX issue to disable it.
Another thing that didn't make sense was privacy.resistFingerprinting. You know the drill, trackers are so clever these days and infect many websites that just by going through some websites, they have a unique fingerprint of who you are, according to say your web browser settings or your operating system, which allows them to play along to track you even more. First of all, smudging your fingerprint to look as generic as everyone is, in my opinion, stupid. A better solution to combat fingerprinting is to purposefully create a unique web browser fingerprint every time because now the trackers get useless web browser fingerprint information that they'll never see again instead of the "normal fingerprints". However, clever Mozilla things that their solution does something to combat fingerprinting is to disable or limit some things, spoof them, or make every single website white mode by default... Seriously??? It doesn't even remotely prevent any sort of fingerprinting, and new users interested in privacy are completely confused about it because every single "figure out if you have a unique fingerprint" website still says that you still have a unique fingerprint. The only thing it does is worsen the user experience just for the sake of something most people see no effect in.
Another issue I had with Firefox in general is when setting the default search engine and ticking the box Use this search engine in Private Windows, after reboot it just defaulted back to Google search. WHAT THE HELL!? Why would it do that? I have to both select my search engine twice, which is just confusing to no end.
Firefox also just loves wanting to restore tabs, which in my case were empty tabs. I kid you not, Firefox wanted sometimes to just restore tabs that weren't worth restoring. Even when restoring tabs, I just don't like the idea of restoring tabs if I happen to not properly close Firefox. Like I click on the power button for no reason. Fortunately, this was quite easy to disable.
Another completely annoying """feature"""" for me is it autohiding the top bar when going full screen. It was so annoying, scarcely had I wanted to fullscreen Firefox so that I could overlap other opened windows when the top bar I wanted to click just disappeared, and when hovering your cursor on top to get it back, it just feels so uncanny as it just pops out. I seriously got so mad at this setting. I managed to get it disabled, but this was seriously a frustrating experience.
However, once fixing those issues, the web browser became usable. Yes, for the first time, I felt like Firefox was usable. I could use it without any issues, and I started to, for the first time, appreciate using Mozilla Firefox. I was in shock. Because after every problem getting solved, I just used this web browser without any issues. The whole point of me switching to Mozilla Firefox was to find out whether I can use Firefox after tweaks or not. Is Mozilla Firefox an okay web browser once stripping the junk out? My personal answer is yes now after a month. Mozilla Firefox can become a decent web browser. It's the only web browser with a unique web rendering engine, it'll be the only modern web browser to support Manifest V2. It's the web browser that I can use on every operating system, and it just happens to finally work, which I'm glad about.
It's just that Mozilla Firefox has some serious issues when it comes to privacy and usability. I'm still disappointed how Firefox basically ships a broken web browser by default, and I'll never forgive Mozilla for their sins. If you ever create a massive product, do not, under any circumstances, avoid your main goal: Creating a good product. Mozilla, on the contrary, started to not care as much about their broken web browser. Rather they care about politics (UGH) and stuff they should not care about when your web browser has some massive issues I haven't even mentioned here.
So, in conclusion, Mozilla Firefox can become a good web browser. I mean I, as someone who has heavily criticised Mozilla, is now daily driving it on the desktop side. It's just that there's a reason why Firefox is losing users. Their web brower has some serious issues, and they never really cared about it. You can't blame Mozilla Firefox for the decline of the web, turning into the """modern web""", a place nobody really wants to stay in for too long, but you can absolutely criticise Mozilla Firefox for ruining their web browser. Even if I'm gonna continue to use Firefox, I seriously can't recommend any normal user or anyone who wants to care more about internet privacy to use Firefox, and that's sad.