4 ms·
I miss the early days of Firefox extensions (circa 2004) where an extension could in very powerful ways completely change the layout/functionality of your brows
by donatj 5y ago
I miss the early days of Firefox extensions (circa 2004) where an extension could in very powerful ways completely change the layout/functionality of your browser; when they had near unlimited access to the XUL and could change anything and everything.
I used a ton of very useful extensions then. Nested tabs were one of my favorites. These days I've got a password manager, a bookmark checker, and a tab manager I wrote myself.
They're just not allowed to do anything too useful these days - I know what they have access to, I write Chrome extensions. A lot of them should just be standalone desktop apps.
Like most things, normies came in, shot themselves in the foot, made a fuss, and now we can't have nice things.
- power78 5y agoI wish Firefox would have left the old extension abilities. They could have easily added the WebExtensions standard to allow for cross-browser compatibility and not removed the old functionality.
- readflaggedcomm 5y agoThey basically did, until the underlying browser became incompatible. That was the point: to have a stable API instead of extensions relying on implementation details, which includes multiple processes.
- iggldiggl 5y agoThey didn't just broke them by necessity of rewriting the browser, though – they then actively blocked them on regular browser versions (non-Nightly/Developer Edition/etc.). Case in point: With some limited maintenance and a compatibility shim for loading them, a number of old add-ons are still working on current Firefox versions: https://github.com/xiaoxiaoflood/firefox-scripts/tree/master/extensions https://github.com/xiaoxiaoflood/firefox-scripts/tree/master...
- kevingadd 5y agoOnce multi-process was adopted, old extensions couldn't work anymore. The design simply didn't work.
- hippofever 5y agoTake a look at http://nyxt.atlas.engineer/ http://nyxt.atlas.engineer/. It's written to be extensible/introspectable, and the extension language is Common Lisp.
- donatj 5y agoLooks like it would have a very steep learning curve.
- nyanpasu64 5y agoI tried installing Nyxt. I'm not sure how common CUA bindings are. I tried pressing Alt+Left and Alt+Right to navigate between pages, but got a strange error in the status bar: "Warning: Error on separate thread: There is no applicable method for the generic function # when called with arguments (NIL). See also: The ANSI Standard, Section 7.6.6". Which is baffling as a user.
- superkuh 5y agoThe least worst web browsers these days are typically the older Firefox forks that have maintained XUL and powerful extensions. But this class of browsers is rapidly become few and those left are run by... controversial personalities.
- dathinab 5y agoWhile I also miss some of the capabilities, I also can understand why Firefox removed them. Extensions systems which don't have very clear cut boundaries like XUL are just add a very hefty maintenance burden and make review extremely hard. It's not really about "normies". This doesn't really apply to the current change, as extensions already have clear boundaries and and as the article pointed out problematic apps likely won't be too much affected as they often already do things which bypass the constraints to avoid detection by the reviewer... (assuming I understand the topic correctly)
- kelnos 5y agoHas nothing to do with "normies". With the old extension system, Mozilla couldn't make any substantial changes to browser internals (like multi-process, among other things) without breaking everything. It makes sense to have clear boundaries between the core and extensions, and keep implementation details out of the extension interface.
- Dylan16807 5y agoThat's only a partial motivator. A lot of things aren't allowed, even within those boundaries, for "security" reasons.
- iggldiggl 5y agoE.g. mass downloaders have become quite a bit less useful because they can only download into the OS downloads directory without prompting for each and every download.