Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 35895 - qpkg doesn't handle renamed packages correctly
Summary: qpkg doesn't handle renamed packages correctly
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal
Assignee: Portage Tools Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-12-15 13:50 UTC by Paul Varner (RETIRED)
Modified: 2004-01-09 08:55 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
Patch to list current package name (qpkg.patch,898 bytes, patch)
2003-12-15 13:50 UTC, Paul Varner (RETIRED)
Details | Diff
Updated patch (qpkg.patch.2,1.06 KB, patch)
2003-12-17 08:52 UTC, Paul Varner (RETIRED)
Details | Diff
updated patch to list current package name (qpkg.patch.2,406 bytes, patch)
2003-12-17 12:33 UTC, Paul Varner (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Paul Varner (RETIRED) gentoo-dev 2003-12-15 13:50:07 UTC
Recently, several packages have been renamed in Portage.  When using qpkg, qpkg uses the name of the package when installed.  This causes problems when using qpkg for various tasks, .  One such package is apps-admin/fam.  Until recently it was apps-admin/fam-oss.  This can cause confusion when using qpkg to identify packages.

Example:
beldin root # qpkg -I -v fam
app-admin/fam-oss-2.6.10-r1 *
media-libs/libfame-0.9.0 *
beldin root # etcat -v fam-oss
[ Results for search key : fam-oss ]
[ Applications found : 0 ]

beldin root # emerge -pv fam-oss

These are the packages that I would merge, in order:

Calculating dependencies
emerge: there are no masked or unmasked ebuilds to satisfy "fam-oss".

!!! Error calculating dependencies. Please correct.

The cause of this problem is that qpkg takes the name from the ebuild file located in /var/db/pkg/<group>/<package>

Since /var/db/pkg/<group>/<package> is the correct name of the package as it is currently known in the portage system.  The solution is to use that as the name when locating installed packages. Here is the ouput using my patched version:

beldin root # qpkg -I -v fam
app-admin/fam-2.6.10-r1 *
media-libs/libfame-0.9.0 *
beldin root # etcat -u fam
[ Colour Code : set unset ]
[ Legend      : (U) Col 1 - Current USE flags        ]
[             : (I) Col 2 - Installed With USE flags ]
[ No USE flags found for : app-admin/fam ]
[ No USE flags found for : media-libs/libfame ]

 U I [ Found these USE variables in : media-video/fame-0.9.0 ]
 + - mmx : Adds support for optimizations for Pentium MMX and Athlon class processors
 + - sse : fast floating point optimisation for Pentium class chips
beldin root # emerge -pv fam

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild   R   ] app-admin/fam-2.6.10-r1

beldin root #

I am including a patch that fixes this problem using that approach

Reproducible: Always
Steps to Reproduce:
1. See details.  Another package that exhibits the same behavior is vixie-cron which was known as vcron
2.
3.

Actual Results:  
qpkg lists package names that are unknown to portage.

Expected Results:  
List the package name as currently known to portage

beldin root # emerge info
Portage 2.0.49-r15 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r3, 2.6.0-test11)
=================================================================
System uname: 2.6.0-test11 i686 Pentium III (Coppermine)
Gentoo Base System version 1.4.3.10
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O3 -march=pentium3 -fprefetch-loop-arrays -funroll-loops -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config
/usr/kde/3/share/config /var/bind /usr/X11R6/lib/X11/xkb
/usr/kde/3.1/share/config /usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-O2 -mcpu=i686 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoaddcvs sandbox ccache fixpackages"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu
http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 oss apm avi crypt cups encode foomaticdb gif gtk2 jpeg libg++ libwww
mad mikmod mpeg ncurses nls pdflib png spell truetype xml2 xmms xv zlib alsa
gdbm berkdb slang readline arts svga tcltk X sdl tcpd pam ssl perl python esd
imlib oggvorbis gtk qt kde motif opengl acpi i8x0 java mbox mmx mozilla pda ppds
samba sse tiff usb -gpm -gnome -quicktime"
Comment 1 Paul Varner (RETIRED) gentoo-dev 2003-12-15 13:50:39 UTC
Created attachment 22263 [details, diff]
Patch to list current package name
Comment 2 Paul Varner (RETIRED) gentoo-dev 2003-12-17 08:52:14 UTC
Created attachment 22359 [details, diff]
Updated patch

updated patch to fix bug with patched version. I missed setting the 'd'
variable correctly in the first version of the patch.
Comment 3 Paul Varner (RETIRED) gentoo-dev 2003-12-17 09:22:00 UTC
Comment on attachment 22359 [details, diff]
Updated patch

I'm finding more problems with this approach. This is actually beginning to
look like something that should be addressed with portage-ng
Comment 4 Paul Varner (RETIRED) gentoo-dev 2003-12-17 12:33:31 UTC
Created attachment 22376 [details, diff]
updated patch to list current package name

Stepping back and reevaluating, I realized that I was trying to fix much more
than needed to be touched.  The actual solution was simple, and I am including
that patch. I have tested it with all of the options and it appears to be
working correctly.
Comment 5 Paul Varner (RETIRED) gentoo-dev 2004-01-09 08:55:27 UTC
Since this is fixed with equery (qpkg's replacement) in gentoolkit 0.2.0, I'm marking this as fixed.