Removing Firefox 2
Firefox is a pretty popular browser.
It runs quickly.
It has a lot of plugsin. I use Web Developer and Firebug myself.
However. All software ages. Hah, even this website ages.
Firefox 2 has a number of unfixed (to my knowledge) bug.
Solution: use Firefox 3.
Sometimes it is just time to move on.
Case in point: have you seen this?
# portaudit Affected package: firefox-2.0.0.20_9,1 Type of problem: mozilla -- multiple vulnerabilities. Reference: <http://portaudit.FreeBSD.org/49e8f2ee-8147-11de-a994-0030843d3802.html> 1 problem(s) in your installed packages found. You are advised to update or deinstall the affected package(s) immediately.
How to fix: upgrade. However, it’s not that easy. There are a few dependants.
I found the solution in the Internet. 😉
The failed attempt
Here is how I’d normally try fixing this:
# portupgrade firefox ** Port marked as IGNORE: www/firefox: is forbidden: too many security issues http://www.vuxml.org/freebsd/922d2398-9e2d-11de-a998-0030843d3802.html http://www.vuxml.org/freebsd/49e8f2ee-8147-11de-a994-0030843d3802.html ** Listing the failed packages (-:ignored / *:skipped / !:failed) - www/firefox (marked as IGNORE)
I also tried other things, such as replaying firefox2 with firefox35. That failed.
The search results
I searched and found:
- http://unix.derkeiler.com/Mailing-Lists/FreeBSD/questions/2009-08/msg01228.html
- “http://unix.derkeiler.com/Mailing-Lists/FreeBSD/questions/2009-08/msg01231.html
Which led me to:
The key point being:
- A FreeBSD port of libxul-1.9 has been added as an alternative Gecko provider to Firefox 2. This can be used by setting WITH_GECKO=libxul in /etc/make.conf.
It is that new library which will be used instead of Firefox 2.
The fix
Here is what I did:
- I added the following to /etc/make.conf:
# see http://unix.derkeiler.com/Mailing-Lists/FreeBSD/questions/2009-08/msg01231.html # see http://unix.derkeiler.com/Mailing-Lists/FreeBSD/questions/2009-08/msg01228.html # WITH_GECKO=libxul
- Which ports depend upon Firefox 2?
# pkg_info | grep firefox firefox-2.0.0.20_9,1 Web browser based on the browser portion of Mozilla firefox-3.5.3,1 Web browser based on the browser portion of Mozilla # pkg_info -R firefox-2.0.0.20_9,1 Information for firefox-2.0.0.20_9,1: Required by: gegl-0.0.22_6 gimp-app-2.6.6_2,1 librsvg2-2.26.0_1
- I upgraded those three ports:
# portupgrade -f gegl gimp-app librsvg2
The -f is vital. Without it, only those ports which are not up-to-date
will be compiled. The -f forces all specified ports to be ‘upgraded’ (i.e.
recompiled and installed). Which is what we want here. Effectively, we
are just recompiling these applications to replace the Firefox 2 dependencies
and use libxul instead.Now to finish it all off:
# pkg_delete firefox-2.0.0.20_9,1
Any comments?