Packaging request #2164

[iceweasel][iceweasel-addons] Provide /usr/lib/firefox symlink to drop iceweasel-specific extensions in favor of ones from Arch

grizzlyuser - 7 months ago - . Updated 2 days ago.

% Done:



AFAIK, the only differences between Iceweasel-specific extensions from Parabola repos and Firefox-specific ones from Arch repos are:
1. Install path (/usr/lib/iceweasel/ and /usr/lib/firefox/ respectively)
2. Package/group names and replaces/conflicts in PKGBUILDs.

I'm not sure about how critical it is to have 'iceweasel-*' named extensions (like iceweasel-ublock-origin instead of firefox-ublock-origin from Arch). If that's not critical, then what about just providing symlink from /usr/lib/iceweasel/ to /usr/lib/firefox/ in iceweasel package? That would allow to drop iceweasel-ublock-origin and iceweasel-noscript from [libre] (and probably others I don't know about) and use versions from Arch, which look likely to be updated more frequently.

Related issues

Related to Packages - Packaging request #1899: HTTPS Everywherein progress

Related to Packages - Packaging request #1873: [firefox-extension-privacybadger] Requires blacklisted firefoxopen




Updated by bill-auger 7 months ago

there is only 'iceweasel-noscript' and 'iceweasel-ublock-origin', both in the 'iceweasel-addons' package group

the arch firefox-ublock-origin package is installable as is many others - i dont know if they should be installable nor if they actually work

$ sudo pacman -S firefox-addons
:: There are 9 members in group firefox-addons:
:: Repository community
   1) firefox-dark-reader  2) firefox-decentraleyes  3) firefox-extension-privacybadger
   4) firefox-referer-control  5) firefox-stylus  6) firefox-tree-style-tab  7) firefox-tridactyl
   8) firefox-ublock-origin  9) firefox-umatrix

Enter a selection (default=all): 
resolving dependencies...
warning: cannot resolve "firefox", a dependency of "firefox-extension-privacybadger" 
:: The following package cannot be upgraded due to unresolvable dependencies:

:: Do you want to skip the above package for this upgrade? [y/N] y
looking for conflicting packages...

Packages (8) firefox-dark-reader-4.7.5-1  firefox-decentraleyes-2.0.8-2  firefox-referer-control-1.31-2
             firefox-stylus-1.5.2-2  firefox-tree-style-tab-2.7.18-1  firefox-tridactyl-1.14.8-1
             firefox-ublock-origin-1.18.2-1  firefox-umatrix-1.3.16-1

Total Download Size:   13.72 MiB
Total Installed Size:  15.27 MiB

apparently, 'iceweasel' does not provide 'firefox' - though i cant imagine why not - i assumed that was standard procedure for packages in [libre] that may have dependencies under the original blacklisted package name

these are the only arch addons that are on the blacklist:


of note, is that 'firefox-noscript' does not have a replacement package specified in the blacklist, though it clearly has a replacement package


Updated by grizzlyuser 7 months ago

Oops, it looks like simple symlink won't work. I tried to:

# ln -s /usr/lib/iceweasel/ /usr/lib/firefox

and then on installing of firefox-ublock-origin, pacman complains:
error: failed to commit transaction (conflicting files)
firefox-ublock-origin: /usr/lib/firefox exists in filesystem
Errors occurred, no packages were upgraded.

I'm definitely not a packaging guru, so not sure how that can be solved the best way.

bill-auger wrote:

the arch firefox-ublock-origin package is installable as is many others - i dont know if they should be installable nor if they actually work

I tried to install just firefox-ublock-origin, and it doesn't work right away. However, if before clean installation I do:

# mkdir /usr/lib/firefox
# mount --bind /usr/lib/iceweasel/ /usr/lib/firefox

Then the extension is installed with no problems and works as expected.


Updated by eschwartz 7 months ago

You cannot package a file /usr/lib/firefox, with the intent of having packages that provide /usr/lib/firefox/browser/extensions/* get redirected to install somewhere else. That's not how pacman works.

You could, however, package a symlink as /usr/lib/iceweasel/browser/extensions and have all extensions get installed in /usr/lib/firefox/browser/extensions/* while having iceweasel pick them up. pacman will be fine with that.

Alternatively, it's quite silly to provide packages which cannot be installed/make no sense due to firefox being blacklisted. https-everywhere and adblock-plus have been blacklisted for ages, and noscript has been forked to an iceweasel version -- I assume privacybadger was an oversight and all the rest are recent additions so were almost certainly oversights, none of them make sense in the parabola repositories as-is.


Updated by bill-auger 6 months ago

ok so i think the only thing left to determine here is

  • is it possible or desirable to make iceweasel truly provide a firefox implementation
    - if so, then we need to check the licensing on all the new firefox-* addons and possibly blacklist some
    - if not, then we need do no more that simply blacklist and/or re-package the new firefox-* addons

IMHO the only thing about this in the "pros" list is that we would gain those extra 7 addons (and depending on their licenses, it could be fewer than that) - but these are not complicated programs, we could just repackage them - the OPs argument on the "cons" is that we dont upgrade them fast enough; but that is not a systematic flaw, so that could (should) be improved regardless of what becomes of this issue


Updated by bill-auger 6 months ago

ive added the new addons to the blacklist for now


Updated by bill-auger 27 days ago


Updated by bill-auger 27 days ago


Updated by bill-auger 27 days ago

or .. we should re-package the others and add them to the iceweasel-addons' group - this is the current list of firefox add-ons that we are suppressing without replacements, probably all merely for having 'firefox' in the package name



Updated by bill-auger 27 days ago

  • Priority changed from bug to wish
  • Subject changed from [iceweasel] Provide /usr/lib/firefox symlink to drop iceweasel-specific extensions in favor of ones from Arch to [iceweasel][iceweasel-addons] Provide /usr/lib/firefox symlink to drop iceweasel-specific extensions in favor of ones from Arch

Updated by bill-auger 27 days ago

  • Priority changed from wish to discussion

Updated by theova 25 days ago

It is and will not be difficult to adapt Arch's PKGBUILDs, but this means additonal work to do and more packages to mainain/update. In my opinion it is - apart from one word - not a big gain to create libre replacements.
I would therefore vote for the symlink.

Anyway, I would like to contribute to this issue - either by creating libre replacements and/or a license audit. Just let me know, which solution is favoured.


Updated by theova 16 days ago

The following addons have a free license:

Name License Source Note
firefox-adblock-plus GPLv3 project website Source Code FSD ublock-origin may be better in terms of privacy
browserpass-firefox ISC License Project Repository
firefox-dark-reader MIT Project repostitory
firefox-decentraleyes Mozilla Public License Version 2.0 Project repository
firefox-https-everywhere Licensed GPL v2+, AGPLv3+ Project repostitory included in icecat per default
firefox-noscript GPLv2+ FAQ, Project Repository
firefox-extension-privacybadger GPLv3, MIT, Unlicense, Open Font License, Apache License v2 Project repository Project website
firefox-spell-ru GPL ?? Arch PKGBULD Not sure about the license. Could not find any source or repository
firefox-stylus GPLv3 Project repostitory
firefox-tree-style-tab MPL 2.0, MPL 1.1, MIT, PSFL Project repository
firefox-tridactyl Apache 2.0 Project repository

For firefox-spell-ru I am really not sure, since I could not find a license. I think, `spell-ru` is part of Mozillas "Dictionaries and Language Packs" which can be found here.

The following addon should definitely not be included:
Name License Source Note
firefox-referer-control MPL v2.0 ?? Firefox Addons Removed from Arch's [Community]

Updated by theova 2 days ago

EDIT: Add browserpass-firefox to list.

Also available in: Atom PDF