on changing the Firefox New Tab, and software freedom

  • the date is 4th of June, 2025.

    2025-06-05
  • a young riki moe comes up with a ~brilliant~ idea:

    I will customise my browser’s New Tab page! it’ll be so cool, i’ll put some cool artwork there and it’ll be way more fun to look at than my current about:blank

    2025-06-05
  • so he innocently opens a blank .html file, and starts typing away.

    2025-06-05
    • armed with his text editor and knowledge of web technologies, he conjures up a minimal, yet aesthetic New Tab.

      2025-06-05
    • pleased with the result, he goes to his Firefox’s settings, sets the page as his homepage, and goes to also set it as the New Tab page…

      2025-06-05
      • only to find that there is no such option.

        2025-06-05
  • bemused by the asymmetry in the browser’s Settings page, he turns to Kagi in search of answers, and finds this page, where a community member says:

    Firefox 41 no longer uses the browser.newtab.url setting in about:config because it was constantly attacked by malware. Starting in Firefox 41, you need an add-on to change the new tab page.

    2025-06-05
  • Sigh.

    2025-06-05
  • so he turns to an extension proposed by the community member, only to find its UX subpar.

    2025-06-05
    • he opens a new tab, and the address bar is focused, but the URL is not selected… so to type over it he has to hit Ctrl A, and only then he can type in his search query.

      2025-06-05
      • (we’ll glance over the fact that this whole affair required him to set up an entire web server on his PC, because extensions can’t navigate to file://.)

        2025-06-05
  • he decides to declare a bitter victory, and goes to sleep for the night.

    2025-06-05
  • …

    2025-06-05
  • the next day. 5th of June, 2025.

    2025-06-05
  • unsatisfied with the subpar UX, he decides that he must create a browser extension himself.

    2025-06-05
    • so he turns to Mozilla’s official documentation, and conjures up his first ever manifest.json…

      {
        "manifest_version": 2,
        "name": "riki's new tab",
        "version": "1.0",
        "description": "riki.moe's new tab page!",
        "icons": {
          "48": "icon-48.png",
          "96": "icon-96.png"
        },
      
        "chrome_url_overrides": {
          "newtab": "index.html"
        },
        "chrome_settings_overrides": {
          "homepage": "index.html"
        }
      }    
      
      2025-06-05
    • and with about:debugging’s help, installing the extension temporarily, everything seems to work!

      2025-06-05
  • so, as suggested by another guide, he zips up the extension’s files and goes to Firefox’s Extensions to install it permanently.

    2025-06-05
  • but what’s this!?

    This addon could not be installed because it appears to be corrupt.

    2025-06-05
    • okay now folks. This browser is Pissing me off. I’m the original Starwalker

      2025-06-05
  • so! he looks for any issues with his packaging. maybe there’s an unneeded subdirectory? maybe there’s a missing extension ID?

    2025-06-05
    • or maybe Firefox is stopping him from loading the extension… just because?

      2025-06-05
  • so he takes a wild guess: a cryptographic signature, it must be! and looks for a way to bypass that.

    2025-06-05
    • because, fuck that. why would you need a signature on an extension you’re not even gonna share with anyone.

      2025-06-05
  • and a promise appears! Firefox Developer Edition (Electric Boogaloo)

    2025-06-05
    • apparently, there’s a special version of Firefox that can load unsigned addons! so he tries to load his .zip file in that, and…

      2025-06-05
      • it doesn’t work!!! oh

        2025-06-05
  • dismayed, he decides it is time to sign the Deal with the Devil. he will cryptographically sign his addon.

    2025-06-05
    • but… that requires a Firefox account. and an API token from that account. that you pass in via a command line parameter, because fuck security, I guess.

      2025-06-05
      • (imagine going through all that security charade, only to find out the official toolkit for web extensions requires passing sensitive credentials in an insecure way… ain’t that fun! good thing fish --private exists, but huge kudos to all the other processes on my system that may have read web-ext’s command line arguments while it was mincing away at Doing the Signature.)

        2025-06-05
  • and a 10 minutes later-break later, he has an .xpi, ready to be chewed on by Firefox.

    2025-06-05
    • and all that. to change his New Tab page.

      2025-06-05
    • God bless America.

      2025-06-05
      • freedom of voice, freedom of choice…!

        2025-06-05
  • okay now, story time’s over. as already established, we’ve teleported ourselves to the US of A, so Now, it’s Interrogation Time.

    2025-06-05
    • why the fuck is this not just a setting.

      2025-06-05
      • “because malware.” excuse me, but why the fuck is malware allowed to touch my Firefox settings.

        2025-06-05
    • and why the fuck does loading an extension into Firefox require sending its details to Mozilla and adding it to your online developer profile.

      2025-06-05
      • what if I don’t have an internet connection at the moment.

        2025-06-05
      • what if my addon contains sensitive data that I really don’t wanna send to foreign servers.

        2025-06-05
      • or what if I just want to change my fucking New Tab page to something I like but don’t necessarily want to share with others.

        2025-06-05
      • EVEN IF it’s unlisted and nobody can see the addon, this ABSOLUTELY SHOULD NOT BE NECESSARY.

        2025-06-05
  • but hey! at least I have cute furry art on my New Tab page now.

    2025-06-05
    • was it worth it?

      2025-06-05
      • …eh, maybe? I’ll let you judge that.

        2025-06-05
    • I’m just sorely disappointed at where we’ve come, where even changing your browser’s New Tab page to something custom is considered a security vulnerability.

      2025-06-05
    • and this post is not meant to throw flak at Mozilla or, god forbid, any specific individual (or individuals). I understand where a lot of this additional security barrage comes from, and out of sheer care for regular users, I agree with it.

      2025-06-05
      • what I don’t agree with is how in the name of security, we’re taking away our collective freedoms as human beings.

        2025-06-05
        • I feel insulted that I cannot change the way my browser looks to make it feel more at home, and express my belonging to a subculture.

          2025-06-05
  • and that’s all I wanted to say.

    2025-06-05
    • this was supposed to be a fun post like, “hey, did you know you can put cool shit on your New Tab page?”

      I’m so disappointed it came to this.

      2025-06-05