On Mon, 22 Oct 2007, Randall R Schulz wrote:- <snip>
Is there a CLI way to list packages grouped by repository from which they were installed or those that are "orphaned?" I know that the Repositories view in YaST Software Management will list all the packages available in each configured repository, but the packages I'm most concerned with are those that are no longer associated with any repository and as far as I know don't show up there.
I don't know about a way of identifying which package comes from a particular repository, but this might help narrow things down a bit: davjam@cobra-mk3:~> cat ./rpm_list.sh #!/bin/bash # create a temporary directory. Make sure it doesn't already exist. # [ -e "/tmp/rpm-temp.$$" ] && exit mkdir -p "/tmp/rpm-temp.$$" # extract the RPM info for all the installed packages # for FILE in $(rpm -qa) do rpm -qi "${FILE}" >"/tmp/rpm-temp.$$/${FILE}.txt" done for FILE in "/tmp/rpm-temp.$$/"* do # skip the GPG keys # TEXT=$(echo "${FILE}"|grep pubkey) [ -n "${TEXT}" ] && continue # Get the distribution # DIST=$(egrep "^Distribution:" "${FILE}") # and the vendor # VEND=$(egrep "Vendor:" "${FILE}") VEND="V${VEND##*V}" # and display it. The test may not be required, but it's there just in case... # [ -n "${DIST}" ] && printf "%-40s %-40s %s\n" "${VEND::40}" "${DIST::40}" $(basename "${FILE}") done # clean up # rm -r "/tmp/rpm-temp.$$" # and quit # exit 0 Usage is simply ./rpm_list.sh . Pipe the output through sort and then less to see the sorted list, or redirect it to a file for later browsing. On what is now a 10.3 system that was upgraded from 10.0, and with a few packages added from the community repositories, here's a few snippets from the output to show what to expect: <snippet> Vendor: http://packman.links2linux.de Distribution: openSUSE 10.3 (i386) ffmpeg-0.4.9-8.pm.svn20070902.txt Vendor: Packman Distribution: openSUSE 10.3 (i586) xmms-1.2.10-200.pm.4.txt </snippet> Two different vendor headers from different packages built/supplied by Packman. <snippet> Vendor: (none) Distribution: openSUSE 10.3 DVDAuthorWizard-1.4.6-1.suse103.txt </snippet> One of my own packages. Ought to add a vendor header to it. <snippet> Vendor: openSUSE Build Service Distribution: VideoLAN / 10.3 vlc-0.8.6c-3.2.txt </snippet> One from VideoLAN. Looks like they're using their own installation of the Build Service. <snippet> Vendor: SUSE LINUX Products GmbH, Nuernb Distribution: openSUSE 10.3 (i586) aaa_base-10.3-90.txt </snippet> And, finally, one package from SUSE/Novell. Regards, David Bolt -- Team Acorn: http://www.distributed.net/ OGR-P2 @ 100Mnodes RC5-72 @ 15Mkeys | SUSE 10.1 32bit | openSUSE 10.2 32bit | openSUSE 10.3 32bit SUSE 10.0 64bit | SUSE 10.1 64bit | openSUSE 10.2 64bit | RISC OS 3.11 | RISC OS 3.6 | TOS 4.02 | openSUSE 10.3 PPC -- To unsubscribe, e-mail: opensuse+unsubscribe@opensuse.org For additional commands, e-mail: opensuse+help@opensuse.org