Bug 278181 - Bad Provides
Summary: Bad Provides
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: ekg2
Version: rawhide
Hardware: All
OS: Linux
medium
high
Target Milestone: ---
Assignee: Dominik 'Rathann' Mierzejewski
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: F8Target
TreeView+ depends on / blocked
 
Reported: 2007-09-05 10:41 UTC by Michael Schwendt
Modified: 2007-11-30 22:12 UTC (History)
0 users

Fixed In Version: 0.1.1-1.fc8
Clone Of:
Environment:
Last Closed: 2007-11-26 18:48:12 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
one solution (491 bytes, patch)
2007-09-24 01:57 UTC, Michael Schwendt
no flags Details | Diff

Description Michael Schwendt 2007-09-05 10:41:00 UTC
ekg2-python provides python
python provides python EQ 0 2.5.1 9.fc8

perl-ekg2 provides perl
perl provides perl EQ 4 5.8.8 25.fc8

ekg2-core provides ncurses
ncurses provides ncurses EQ 0 5.6 9.20070812.fc8

ekg2-voip provides gsm
gsm provides gsm EQ 0 1.0.12 5.fc8

ekg2-gpg provides gpg
gnupg provides gpg
gnupg2 provides gpg

ekg2-xosd provides xosd
xosd provides xosd EQ 0 2.2.14 10.fc8

Comment 1 Dominik 'Rathann' Mierzejewski 2007-09-05 10:48:20 UTC
Yes, these are all plug-ins. Any idea how to fix this?

Comment 2 Michael Schwendt 2007-09-05 11:11:14 UTC
They are not normal for sub-packages.
But where do they come from?

Do they also appear in a fresh scratch-build?


Comment 3 Michael Schwendt 2007-09-05 11:15:12 UTC
Maybe they are generated as a side-effect of the Polish translations
and are a bug in rpm-build?

Comment 4 Michael Schwendt 2007-09-05 11:28:17 UTC
Ah! Bad SONAMEs from the plugin libs.

You need to filter them out with customised find-provides scripts.


Comment 5 Dominik 'Rathann' Mierzejewski 2007-09-05 12:45:33 UTC
OK. I've tried and failed. Could you point me to a working example?

Comment 6 Michael Schwendt 2007-09-05 14:07:07 UTC
http://fedoraproject.org/wiki/PackagingDrafts/FilteringAutomaticDependencies

That enough as a recipe?

[...]

An alternative way is like this:

%define _use_internal_dependency_generator 0

# patch against /usr/lib/rpm/redhat/find-provides
Patch1000: my.custom.find-provides.patch

# here in %prep section
cp -a /usr/lib/rpm/redhat/find-provides %{_tmppath}/find-provides.%{name}
patch %{_tmppath}/find-provides.%{name} %{PATCH1000}
%define __find_provides %{_tmppath}/find-provides.%{name}

In that case you learn when the original find-provides changes
in unexpected ways that break the customisation.


Comment 7 Dominik 'Rathann' Mierzejewski 2007-09-16 15:22:45 UTC
Thank you for the pointers. Fixed in devel. I'll poke rel-eng.

Comment 8 Michael Schwendt 2007-09-24 01:57:29 UTC
Created attachment 203651 [details]
one solution

* the sed regexp in your filter-provides.sh is broken,
it accidentally kills Provides you don't have in the list

* perl-ekg2 still provides "perl" (as the proof that the sed
is wrong -- perhaps you wanted to used \| instead of | but the
pattern is too inaccurate with /d)

* other sub-packages provide lots of symbols which look
like packages names, e.g.: jabber, gtk
(they are only deleted accidentally)

The attached patch doesn't filter the Provides, but the
filelist passed to find-provides. It takes out the plugins
and the Perl shared libs.

Comment 9 Michael Schwendt 2007-09-28 09:18:31 UTC
As a side-note, the iconv calls in the %install section break
--short-circuit rpmbuilds, since source files in $RPM_BUILD_DIR
are modified, and repeated conversion leads to file corruption.
Better modify the files in %prep instead.


Comment 10 Dominik 'Rathann' Mierzejewski 2007-10-23 22:51:36 UTC
New version is out and doesn't have the bad sonames anymore.
I fixed the issue from comment 9, too.

Scratch build here:
http://koji.fedoraproject.org/koji/taskinfo?taskID=208558

Comment 11 Fedora Update System 2007-11-06 16:12:46 UTC
ekg2-0.1.1-1.fc8 has been pushed to the Fedora 8 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update ekg2'

Comment 12 Fedora Update System 2007-11-26 18:48:10 UTC
ekg2-0.1.1-1.fc8 has been pushed to the Fedora 8 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.