Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 302602 - portage-utils: "q list" lists files of multiple packages
Summary: portage-utils: "q list" lists files of multiple packages
Status: RESOLVED INVALID
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Portage Utils Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-01-28 10:56 UTC by Dennis Schridde
Modified: 2010-01-28 15:59 UTC (History)
0 users

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dennis Schridde 2010-01-28 10:56:35 UTC
I have both app-office/akonadi-server and kde-base/akonadi installed and both of them claim to own /usr/bin/akonadiserver. protect-owned should have kicked in here...

# eix -c akonadi
[I] app-office/akonadi-server (1.3.0[1]@21/01/10): The server part of Akonadi
[U] kde-base/akonadi (4.3.90(4.4)[1]@10/01/10 -> (~)4.3.5(4.3) {M}(~)4.3.95(4.4)!m[1]): An extensible cross-desktop storage service for PIM data and meta data

# ( q list akonadi-server ; q list akonadi ) | grep /usr/bin/akonadiserver
/usr/bin/akonadiserver
/usr/bin/akonadiserver

Reproducible: Always
Comment 1 Dennis Schridde 2010-01-28 10:59:52 UTC
Bumped kde-base/akonadi to 4.3.95:
[I] app-office/akonadi-server (1.3.0[1]@21/01/10): The server part of Akonadi
[I] kde-base/akonadi (4.3.95(4.4)[1]@28/01/10): An extensible cross-desktop storage service for PIM data and meta data

Again portage did not detect the collision in /usr/bin/akonadiserver.
Comment 2 Dennis Schridde 2010-01-28 11:03:23 UTC
A full file listing shows a different output for equery. So apparently portage-utils is broken, not portage itself:

# equery files akonadi-server akonadi
 * Searching for akonadi-server ...                                                
 * Contents of app-office/akonadi-server-1.3.0:                                    
/usr                                                                               
/usr/bin                                                                           
/usr/bin/akonadi_control                                                           
/usr/bin/akonadictl                                                                
/usr/bin/akonadiserver                                                             
/usr/include                                                                       
/usr/include/akonadi                                                               
/usr/include/akonadi/private                                                       
/usr/include/akonadi/private/akonadiprotocolinternals_export.h                     
/usr/include/akonadi/private/capabilities_p.h                                      
/usr/include/akonadi/private/imapparser_p.h                                        
/usr/include/akonadi/private/imapset_p.h                                           
/usr/include/akonadi/private/notificationmessage_p.h                               
/usr/include/akonadi/private/protocol_p.h                                          
/usr/include/akonadi/private/xdgbasedirs_p.h                                       
/usr/lib64                                                                         
/usr/lib64/cmake                                                                   
/usr/lib64/cmake/Akonadi                                                           
/usr/lib64/cmake/Akonadi/AkonadiConfig.cmake                                       
/usr/lib64/cmake/Akonadi/AkonadiConfigVersion.cmake                                
/usr/lib64/libakonadiprivate.so -> libakonadiprivate.so.1                          
/usr/lib64/libakonadiprivate.so.1 -> libakonadiprivate.so.1.3.0                    
/usr/lib64/libakonadiprivate.so.1.3.0                                              
/usr/lib64/libakonadiprotocolinternals.so -> libakonadiprotocolinternals.so.1      
/usr/lib64/libakonadiprotocolinternals.so.1 -> libakonadiprotocolinternals.so.1.3.0
/usr/lib64/libakonadiprotocolinternals.so.1.3.0                                    
/usr/lib64/pkgconfig                                                               
/usr/lib64/pkgconfig/akonadi.pc                                                    
/usr/share                                                                         
/usr/share/config                                                                  
/usr/share/config/akonadi                                                          
/usr/share/config/akonadi/akonadiserverrc                                          
/usr/share/config/akonadi/mysql-global.conf                                        
/usr/share/dbus-1                                                                  
/usr/share/dbus-1/interfaces                                                       
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Agent.Control.xml             
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Agent.Status.xml              
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.AgentManager.xml              
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.ControlManager.xml            
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.DebugInterface.xml            
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.NotificationManager.xml       
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Preprocessor.xml              
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Resource.xml                  
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Server.xml                    
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Tracer.xml                    
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.TracerNotification.xml        
/usr/share/dbus-1/services                                                         
/usr/share/dbus-1/services/org.freedesktop.Akonadi.Control.service                 
/usr/share/mime                                                                    
/usr/share/mime/packages                                                           
/usr/share/mime/packages/akonadi-mime.xml                                          

 * Searching for akonadi ...
 * Contents of kde-base/akonadi-4.3.95:
/usr                                   
/usr/bin                               
/usr/bin/akonadiconsole                
/usr/lib64                             
/usr/lib64/libakonadi-kcal_next.so -> libakonadi-kcal_next.so.4
/usr/lib64/libakonadi-kcal_next.so.4 -> libakonadi-kcal_next.so.4.4.0
/usr/lib64/libakonadi-kcal_next.so.4.4.0                             
/usr/lib64/libakonadi_next.so -> libakonadi_next.so.4                
/usr/lib64/libakonadi_next.so.4 -> libakonadi_next.so.4.4.0          
/usr/lib64/libakonadi_next.so.4.4.0                                  
/usr/share                                                           
/usr/share/applications                                              
/usr/share/applications/kde4                                         
/usr/share/applications/kde4/akonadiconsole.desktop                  
/usr/share/apps                                                      
/usr/share/apps/akonadiconsole                                       
/usr/share/apps/akonadiconsole/akonadiconsoleui.rc                   
/usr/share/doc                                                       
/usr/share/doc/akonadi-4.3.95                                        
/usr/share/doc/akonadi-4.3.95/README.xz                              

# q list akonadi
/usr/bin/akonadiserver  
/usr/bin/akonadictl     
/usr/bin/akonadi_control
/usr/include/akonadi/private/capabilities_p.h
/usr/include/akonadi/private/xdgbasedirs_p.h 
/usr/include/akonadi/private/protocol_p.h    
/usr/include/akonadi/private/notificationmessage_p.h
/usr/include/akonadi/private/imapset_p.h            
/usr/include/akonadi/private/imapparser_p.h         
/usr/include/akonadi/private/akonadiprotocolinternals_export.h
/usr/lib64/libakonadiprotocolinternals.so.1.3.0               
/usr/lib64/libakonadiprivate.so.1.3.0
/usr/lib64/libakonadiprivate.so
/usr/lib64/libakonadiprivate.so.1
/usr/lib64/libakonadiprotocolinternals.so
/usr/lib64/libakonadiprotocolinternals.so.1
/usr/lib64/pkgconfig/akonadi.pc
/usr/lib64/cmake/Akonadi/AkonadiConfig.cmake
/usr/lib64/cmake/Akonadi/AkonadiConfigVersion.cmake
/usr/share/dbus-1/services/org.freedesktop.Akonadi.Control.service
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.DebugInterface.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.TracerNotification.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Server.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.ControlManager.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Resource.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Agent.Status.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Agent.Control.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Tracer.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.Preprocessor.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.NotificationManager.xml
/usr/share/dbus-1/interfaces/org.freedesktop.Akonadi.AgentManager.xml
/usr/share/mime/packages/akonadi-mime.xml
/usr/share/config/akonadi/mysql-global.conf
/usr/share/config/akonadi/akonadiserverrc
/usr/bin/akonadiconsole
/usr/lib64/libakonadi-kcal_next.so.4.4.0
/usr/lib64/libakonadi_next.so.4.4.0
/usr/lib64/libakonadi_next.so
/usr/lib64/libakonadi_next.so.4
/usr/lib64/libakonadi-kcal_next.so
/usr/lib64/libakonadi-kcal_next.so.4
/usr/share/apps/akonadiconsole/akonadiconsoleui.rc
/usr/share/applications/kde4/akonadiconsole.desktop
/usr/share/doc/akonadi-4.3.95/README.xz
Comment 3 Torsten Veller (RETIRED) gentoo-dev 2010-01-28 12:38:03 UTC
q list --help:
-e, --exact  * Exact match (only CAT/PN or PN without PV)

is what you want.
Comment 4 Zac Medico gentoo-dev 2010-01-28 14:53:51 UTC
It's not supposed to work unless your system is in the correct state. With the current state of your system, it won't work because both packages appear to own the same file. In order to bring it back to the correct state, make a backup copy of /usr/bin/akonadiserver, uninstall one of the packages, and then restore the backup copy of /usr/bin/akonadiserver. Then if you try to re-merge the package that you've just unistalled, it should result in a collision.
Comment 5 Zac Medico gentoo-dev 2010-01-28 15:24:23 UTC
Oh, apparently you've just been confused by the way that qlist matches the akonadi argument to akonadi-server.
Comment 6 solar (RETIRED) gentoo-dev 2010-01-28 15:59:47 UTC
Dennis,
comment #3 is correct.