Slashdot Log In
Developing Firefox Extensions with GNU/Linux
Posted by
Zonk
on Sat Sep 10, 2005 03:33 PM
from the extend-the-browser-extend-the-fun dept.
from the extend-the-browser-extend-the-fun dept.
QT writes "Ars Technica has a lengthy but useful introduction to
developing Firefox extensions with GNU/Linux. This guide comes hot on the heels of the RC for Beta 1 of Firefox.
The article is a little more thorough than necessary, but I can't complain about anything that spurs Firefox development." From the article: "What can you do with a Firefox Extension? Firefox extensions can modify the Firefox user interface. This includes adding buttons to tool bars and menus; changing fonts, colors, and icons; capturing events in the client interface like page loads and clicks; and modifying web pages after the browser loads them and before the user sees them. All of this functionality comes with the aspect-oriented facility of overlays. Extensions also have as much access to the file system as the user running Firefox. Extensions can add protocol handlers, hooking actions to URLs like icq://, aim://, or stantz://. Extensions have UniversalXPConnect privileges, allowing them to harness any XPCOM component. Firefox comes with a rich library of XPCOM components that permit your extension to drive very low-level functionality like sockets from Javascript. You can also augment the XPCOM library with Firefox extensions by adding Javascript, linkable libraries, or XPIDL."
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
this reminds me... (Score:2, Insightful)
Re:this reminds me... (Score:5, Insightful)
Parent
Re:this reminds me... (Score:4, Informative)
Parent
Re:this reminds me... (Score:5, Insightful)
Firefox extensions are quite different. They typically extend the functionality of the browser, independent of the web sites you might use. I say typically because there are counterexamples, for instance extensions designed to make working with Wikipedia easier. But this is the exception, not the norm. Firefox extensions aren't "meant" to be used by a lot of different web site, and people would find it quite strange if they were required to install an extension for viewing just one web site.
So maybe the technology is similar (I wouldn't know), the way they are typically used, and were designed and meant to be used are quite different.
Parent
Re:this reminds me... (Score:3, Insightful)
In theory, Firefox is a browser for the masses and is designed to supplant Internet Explorer. If Firefox has a userbase that's more technically sophisticated than other browsers, that only means that there's more work to do.
So please quit blowing yourself by thinking Firefox is l33t d00d software -- it isn't. The whole goal is stripped down and simple for the ordinary IE user.
Now i
Re:this reminds me... (Score:3, Insightful)
Just like signed ActiveX?
Anyone can sign something. For signing to work you need a trusted registry/organisation to cryptographically sign things and use a whitelist system to reject untrusted signitures, just like SSL certificates. But we aren't talking about certificates we're talking about code. Anytime someone sticks an official stamp on something people start expecting the official stamper/supposed quality assurer to
Re:this reminds me... (Score:3, Insightful)
If firefox become popular, it's possible there would be a ton of fake "Ad Block" and "Tab Browser" extentions, and signing is pretty much the only way to stop it.
If you want to see an example of this in action, search Google for "eMule", the opensource filesharing client. About 90% of the links go to
Re:this reminds me... (Score:3, Interesting)
Very very true. The problems with ActiveX all stem from uninformed users clicking yes to that XXX Toolbar popup.
I definately think it'd be a good idea for Mozilla to implement a community page for every extension any firefox browser anywhere tries to install from a remote location. Something much like the current extension directory, but inclusive of extensions not even hosted th
Re:this reminds me... (Score:3, Insightful)
Keep in mind that Kazaa was the run-away most popular filesharing client for years, despite all of the well-known spyware it came with.
If you want to moderate all of the "wrong" opinons or just plain spam on this proposed BBS, you might as well just skip a step and put the Cabal directly in charge. (Whether that would be mozilla.org is unlikely, I think.)
And since your proposal relies on hashes, browser support, and so
Re:this reminds me... (Score:3, Informative)
What you say simply isn't true. I just booted up XP to check. The default settings are to prompt the user for signed controls and to ignore unsigned controls altogether.
Where's my bittorrent:// ? (Score:3, Insightful)
I would love to simply do a bittorrent from firefox. I think that'd spur alot more users and make it easier to... um... *LEGAL* download torrents... (like knoppix, fedora, etc.)
Bring on the torrents!!!
Re:Where's my bittorrent:// ? (Score:5, Informative)
Parent
In other words... (Score:5, Insightful)
Hmmm, sounds a lot like ActiveX. While the main intent for the two is a little different (browser tweaking vs. client-side scripting & server interaction), both require users to make informed decisions. People going on about how Firefox is so much safer because it doesn't support ActiveX might need to consider dropping that argument. As Firefox's market share grows, so will the number of websites that advertise Firefox plugins, and unaware users will be just as susceptible to malware and viruses as they were with IE.
Re:In other words... (Score:4, Informative)
I'm not sure that users would be very accepting of an environment in which they were asked each time an app requested a new file handle -- "would you like to allow Firefox to access
Suggestions? Existing (partial) solutions? (This is your opportunity to go on at length about your preferred, overly-safe-for-you operating system, and for others to trash it on grounds of any remaining work-arounds.)
Parent
Re:In other words... (Score:3, Informative)
Re:In other words... (Score:3, Interesting)
Stupid people are stupid, they make the Internet and the world a worse place for all of us. It's too bad I don't have the time to spend to revoke all of their life certificates.
Common misconceptions about XPCOM and ActiveX (Score:5, Informative)
XPCOM extensions for Firefox are compiled binary machine language files, which have just as much access to your system as ActiveX controls do. Firefox XPCOM extensions are no more secure than ActiveX controls. Binary ActiveX and XPCOM controls are useful for situations where you need to do things that JavaScript doesn't support, like shaping the window of a pie menu [piemenus.com] (an open source ActiveX component, that you can download the source code if you like).
Internet Explorer has something similar to the way you can write Firefox extensions in JavaScript and UIL. But that's a totally different thing than binary ActiveX controls and behaviors, and it severly restricts what you can do.
You can script trustable ActiveX controls for Internet Explorer called "Dynamic HTML Behavior Components", using JavaScript (or any other ActiveX compatible scripting languages), XML and DHTML.
For example, user interface components like JavaScript Pie Menus for Internet Explorer [piemenus.com] or the Run On Sentence dynamic text animation style [piemenus.com] run with the same restrictions as JavaScript in the browser, so they can't access files or shape popup windows. (Also open source).
-Don
Parent
Re:anti-ActiveX (Score:4, Interesting)
As I said, though: webpages could tell IE (at least used to) where to download an ActiveX control. If the control was not already installed, IE would automatically download and install the control from the specified source. In firefox, the page must me whitelisted before extensions could be downloaded. Can someone tell me if IE has changed to the whitelist model yet? Last I heard, they were even maintaining a list of malicious ActiveX controls. This seemed inance to me, as there is most likely more malicious junk out there than truly useful controls.
Parent
Danger Will Robinson! (Score:5, Insightful)
I realize that there are some differences, such as the fact that the red carpet is only rolled out for extensions the user trusts, but... when you advertise Firefox to dummies, your trusting users will BE dummies!
More Resources (Score:5, Informative)
http://www.xulplanet.com/ [xulplanet.com]
http://kb.mozillazine.org/Dev_:_Extensions [mozillazine.org]
http://roachfiend.com/archives/2004/12/08/how-to-
http://businesslogs.com/technology/firefox_extens
http://www.bengoodger.com/software/mb/extensions/
http://mozilla-firefox-extension-dev.blogspot.com
http://books.mozdev.org/index.html [mozdev.org]
http://www.mozilla.org/xpfe/gettingstarted.html [mozilla.org]
Of course another good way to learn about extensions is to download a few and look at the code. That has probably been the biggest help to me once the tutorials, etc. gave me the basic idea of what is going on.
Talk about appropriate... (Score:3, Funny)
Re:HORRIBLE idea..(and my inability to close tags) (Score:3, Informative)
Please for the love of god people, don't bounce messages back saying "My spam filter has blocked your message". I didn't send it, I don't care. Leave me alone!!!!!
Re:HORRIBLE idea..(and my inability to close tags) (Score:3, Insightful)
Re:HORRIBLE idea..(and my inability to close tags) (Score:3, Insightful)
My thinking on the subject (Score:5, Insightful)
Only when you're EXTENDING FIREFOX.
If your website requires an extension (or, for that matter, ActiveX) to work, you're simply coding it incorrectly.
Possible exceptions includes Windows Update, but even then, Microsoft coded that as part of the OS in XP, so the web portal really isn't necessary.
Parent