On Tue, 11 Oct 2011 12:01:00 -0400 David Michael wrote: > Hi, > > On Tue, Oct 11, 2011 at 10:45 AM, Thomas Spura > <tomspur@xxxxxxxxxxxxxxxxx> wrote: > > The automatic requires proposed in bug #745038, does this: > > > > Requires: firefox >= 3.0 > > Requires: firefox <= 10.0a1 > > > > and seems to work fine here so far. When a newer firefox-11.0 is > > installed, yum should complain about it, I guess. > > About two months ago I started looking into Mozilla extension > packaging guidelines. The draft I found as a base[1] suggests not > using dependencies on applications, and I agree with the idea among, > among others listed. (I.e. if a user wants HTTPS-Everywhere for > Seamonkey, they should not be forced to install Firefox.) +1 > Would you mind reading over the draft and considering the points where > it conflicts with your script? If you think there is value in > pursuing similar Mozilla extension guidelines, I can also try to get > my additions uploaded to the wiki. If not, perhaps some of the files > I have been using locally (such as a spec template or a script to > create directories for all supported applications in the install.rdf) > could still be of use in the mozilla-build package. I'm using it partly. The draft suggests to install anything into /usr/share/mozilla/extensions/common and then symlink to all browsers supported in Fedora, e.g. into /usr/share/mozilla/extensions/$browser_id/$extension_id (But I do it manually, this seems to be a new draft, but I like the xpi_unpack cmds etc, that could be easy integrated into the mozilla-build package.) The main *BIG* difference is, that draft symlinks the extension *directory* and the script expects a install.rdf file below that. This means, the symlinking needs to happen one step below that, so that all files inside of the extension_id folder are symlinked, but the install.rdf still needs to be a real copy, so it can be opened at build time. Rationale: A directory symlink can't be resolved at build time, so we cannot follow that symlink on build time. When that's changed, the scripts are working fine along each other. About "no dependency using" from above: The dependencies will be added automatic with the scripts, so to avoid pulling in e.g. seamonkey, when you only want to have the firefox extension, there need to be one package for each extension, which owns /usr/share/mozilla/extensions/$browser_id/$extension_id. This way e.g. firefox-$extension would automaticalls require the correct firefox versions but no seahorse, because that has to be owned by seahorse-$extension - just as an example, but it would make sense. Kalev, does this make sense? Can this be integrated into the drafts? I'll try to add those macros proposed there into /usr/lib/rpm/macros.mozilla and see if they really work out. -Tom P.S. A working example is uploaded to fedorapeople at [1], which has this outputs in the end with rpmbuild: :) Processing files: firefox-noscript-2.1.4-1.fc15.noarch Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: firefox <= 10.0a1 firefox >= 3.0 Processing files: seamonkey-noscript-2.1.4-1.fc15.noarch Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 Requires: seamonkey >= 2.0 seamonkey <= 2.7a1 [1] http://tomspur.fedorapeople.org/moz_draft/ -- devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxxx https://admin.fedoraproject.org/mailman/listinfo/devel