misc/94231: sysutils/kdeadmin3: kpackage doesn't use /usr/ports/INDEX-{4, 6, 7} file

Scot Hetzel swhetzel at gmail.com
Wed Mar 8 07:50:04 PST 2006


>Number:         94231
>Category:       misc
>Synopsis:       sysutils/kdeadmin3: kpackage doesn't use /usr/ports/INDEX-{4,6,7} file
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Mar 08 15:50:02 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     Scot Hetzel
>Release:        FreeBSD 6.x
>Organization:
>Environment:
>Description:
Previously, I had FreeBSD 5.x installed on this system, and had created an INDEX-5 in /usr/ports with 'make index'.  I have since upgraded the system to FreeBSD 6.x, and had also created the INDEX-6 with 'make index'.

After the system was upgraded I installed KDE 3, the first time I used kpackage it had read the list of packages from INDEX-5. But when I deleted INDEX-5, kpackage couldn't identify which category an installed port belonged to, instead it listed all installed ports under BSD->Other.

This problems affects all versions of FreeBSD (except for 5.x) since the INDEX file was renamed to INDEX-<OS MAJOR>.

A simple solution was to symbolic link INDEX to INDEX-6, since kpackage looks for INDEX and INDEX-5.
>How-To-Repeat:
On a FreeBSD {4,6,7} System:
Remove /usr/ports/INDEX and /usr/ports/INDEX-5
Install sysutils/kdeadmin3
Use kpackage within KDE

>Fix:
The correct fix would be to patch fbsdInterface.cpp to use the sysctl interface to get the OS Version Major, and then append it to the name of the INDEX file.

As a quick hack, the simplest solution is to have the sysutils/kdeadmin3/Makefile replace INDEX-5 with ${INDEXFILE} in ${WRKSRC}/kpackage/fbsdInterface.cpp

See patch in following e-mail:
>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list