Currently there's no way for gstreamer-devel to add a provides script that wouldn't require modificatiosn. Either I'd need spec files developers to make changes: %define _use_internal_dependency_generator 0 Or I'd need repository providers to install a modified RPM package. With the attached patch, gstreamer-devel can provide the gstreamer.prov file itself. Or we could have a find-provides.d/ directory, as used in the redhat/ sub-directory.
Created attachment 298574 [details] rpm-gst-provides.patch
Panu tells me that this still doesn't make the script run when the internal dep generator is used. The solution would be to add a section to the generic elf-dep extraction to see if the file is in gstreamer plugins dir.
Location is rpmfcELF() in build/rpmfc.c
Created attachment 298716 [details] rpm-gst-internal-provides.patch Patch to do this internally. I believe it won't create much problems (we only run it for library, which is what gstreaner plugins are, and it will silently fail if the gstreamer.prov script isn't installed)
Now that 4.4.2.3 went into rawhide, I'll give it a couple of days to settle and then check this one - don't despair yet :)
Panu, I need to do the same for desktop mimetypes. Could you please add the following additional lines to Bastiens patch when you commit it pls: + /* Add possible MimeType provides */ + xx = rpmfcHelper(fc, 'P', "desktop-mime-type"); and + __desktop_mime_provides @RPMCONFIGDIR@/desktop-mime-type.prov Yell if you want a standard patch to apply. Thanks! Richard.
Changing version to '9' as part of upcoming Fedora 9 GA. More information and reason for this action is here: http://fedoraproject.org/wiki/BugZappers/HouseKeeping
Panu, any ideas if this will be available for F10? Its a major new feature for PK.
We need a similar features for fonts. Can't this be refactored into a provides-scripts.d directory so we don't have to modify rpm package everytime?
(In reply to comment #9) > We need a similar features for fonts. Can't this be refactored into a > provides-scripts.d directory so we don't have to modify rpm package everytime? PING?
> Can't this be refactored into a provides-scripts.d directory so we don't > have to modify rpm package everytime? Bingo. This thing needs a more generic framework, adding hacks into rpm for everything just doesn't fly. Such a framework is something I certainly want to get done sooner than later but will it make it to F10 is another question - frankly I dunno, there are so many other, bigger things on the plate already. What exactly do you have in mind for fonts, something like extracting "fc-list" style names and providing those or...?
(In reply to comment #11) > What exactly do you have in mind for fonts, something like extracting "fc-list" > style names and providing those or...? Exactly. Providing three kind of tags: language-only, family-only, language-family-pair. Like: font(:lang=en) font(DejaVuSans) font(DejaVuSans:lang=en) This is the missing part of making automatic font installation with PackageKit work.
Panu, this is one of the major new features for F10. If we can't do it cleanly, can we hack it in the srpm to make it work, and then build a proper framework post F10? I personally need my patch in well before F10, as all the applications have to be rebuilt to generate the auto-provides.
Ping?
version back to rawhide.
The minimal patch to look for gstreamer provides is now in rawhide (rpm-4.5.90-0.git8461.7). It's slightly different from the one in comment #4: - it gets only run on DSO's, not every elf file - it honors autoprov: no - the macros.in part is not applied, as it would cause every build where gstreamer-devel is not installed to blow up Bastien, make gstreamer-devel drop in /etc/rpm/macros.gstreamer file that contains the following line to actually enable it: %__gstreamer_provides /usr/lib/rpm/gstreamer.prov As for the mimetypes and such - not going to happen in F10. We'll try to get a saner and a more generic mechanism into place for F11, it's certainly needed.
Isn't this long since done?