[Aptitude-devel] Bug#598485: aptitude suggests to remove unrelated packages to resolve dependencies

Axel Beckert abe at debian.org
Wed Oct 31 13:21:11 UTC 2012


Version: 0.6.6-1ubuntu1

Hi,

Michal Suchanek wrote:
> Package: aptitude
> Version: 0.6.3-3.1

JFTR: This is close to the version Squeeze and Natty:

Debian Squeeze currently has 0.6.3-3.2+squeeze1
Ubuntu Natty currently has 0.6.3-3.2ubuntu1

> The expected (minimal) solution:
> 
> --\ Packages to be upgraded (2)                                                                                              
> iuA  dpkg-dev +8,192B 1.15.8.4   1.15.8.5  
> iuA  libdpkg-perl +41.0kB 1.15.8.4   1.15.8.5  
> 
> what aptitude suggests:
> 
> aptitude install dpkg-dev/sid
> The following packages will be REMOVED:  
>   libdpkg-perl{u} 
> The following packages will be upgraded:
>   dpkg-dev{b} 
> 1 packages upgraded, 0 newly installed, 1 to remove and 8 not upgraded.
> Need to get 773kB of archives. After unpacking 1,724kB will be freed.
> The following packages have unmet dependencies:
>   dpkg-dev: Depends: libdpkg-perl (= 1.15.8.5) but it is not going to be
> installed.
> The following actions will resolve these dependencies:
> 
>       Remove the following packages:              
> 1)      build-essential                           
> 2)      cdbs                                      
> 3)      debhelper                                 
> 4)      devscripts                                
> 5)      dh-make                                   
> 6)      dpkg-dev                                  
> 7)      equivs                                    
> 8)      hsetroot-build-deps                       
> 9)      insightapplications-build-deps            
> 10)     insighttoolkit-build-deps                 
> 11)     javahelper                                
> 12)     kernel-package                            
> 13)     libapt-pkg-perl-build-deps                
> 14)     lintian                                   
> 15)     mesa-build-deps                           
> 16)     piglit-build-deps                         
> 17)     qemu-build-deps                           
> 18)     usmb-build-deps                           
> 19)     wine1.3-build-deps                        
> 20)     xserver-xorg-video-ati-build-deps         
> 
>       Leave the following dependencies unresolved:
> 21)     dpatch recommends dpkg-dev                
> 22)     devscripts recommends equivs              
> 23)     devscripts recommends lintian             
> 24)     libgtk2.0-dev recommends debhelper        
> 25)     libpango1.0-dev recommends debhelper      
> 
> 
> Accept this solution? [Y/n/q/?] n

I think we run into the same problem on those of our workstations
which run Ubuntu Precise (and so far only there). Precise currently
has version 0.6.6-1ubuntu1. So without this bug report I'd have
expected this issue to be more recent, but it sounds very similar to
what we experienced.

Scenario:

Both, kde-plasma-netbook and plasma-netbook are installed and not
marked as automatically installed, but kde-plasma-netbook depends on
plasma-netbook and it's plasma-netbook's only reverse dependency.

Now if I try to remove plasma-netbook, the obvious solution is to
remove kde-plasma-netbook, too. Interestingly aptitude does so, but
also tries to remove hundreds of unrelated packages.

# aptitude remove plasma-netbook
The following packages will be REMOVED:  
  plasma-netbook 
0 packages upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
Need to get 0 B of archives. After unpacking 1,012 kB will be freed.
The following packages have unmet dependencies:
 kde-plasma-netbook : Depends: plasma-netbook (>= 4:4.8.2) but it is not going to be installed.
open: 101; closed: 712; defer: 61; conflict: 101                                                                                                            oInternal error: the solver Install(fontconfig-config:amd64 2.8.0-3ubuntu9 <libfontconfig1:i386 2.8.0-3ubuntu9 -> {fontconfig-config:amd64 2.8.0-3ubuntu9}>) of a supposedly unresolved dependency is already installed in step 1271
open: 222; closed: 1935; defer: 160; conflict: 276                                                                                                          .The following actions will resolve these dependencies:

       Remove the following packages:        
1)       acroread                            
2)       bluez-alsa:i386                     
3)       glib-networking:i386                
4)       google-earth-stable                 
5)       gstreamer0.10-plugins-base:i386     
6)       gstreamer0.10-plugins-good:i386     
7)       gtk2-engines:i386                   
8)       gtk2-engines-murrine:i386           
9)       gtk2-engines-oxygen:i386            
10)      gtk2-engines-pixbuf:i386            
11)      gvfs:i386                           
12)      gvfs-libs:i386                      
13)      ia32-libs                           
14)      ia32-libs-multiarch:i386            
15)      ibus-gtk:i386                       
16)      kde-plasma-netbook                  
17)      libaa1:i386                         
18)      libacl1:i386                        
19)      libao4:i386                         
20)      libasn1-8-heimdal:i386              
21)      libasound2:i386                     
22)      libasound2-plugins:i386             
23)      libasyncns0:i386                    
24)      libatk1.0-0:i386                    
25)      libattr1:i386                       
26)      libaudio2:i386                      
27)      libaudiofile1:i386                  
28)      libavahi-client3:i386               
29)      libavahi-common3:i386               
30)      libavc1394-0:i386                   
31)      libbz2-1.0:i386                     
32)      libc6:i386                          
33)      libcaca0:i386                       
34)      libcairo-gobject2:i386              
35)      libcairo2:i386                      
36)      libcanberra-gtk-module:i386         
37)      libcanberra-gtk0:i386               
38)      libcanberra0:i386                   
39)      libcap2:i386                        
40)      libcapi20-3:i386                    
41)      libcdparanoia0:i386                 
42)      libcomerr2:i386                     
43)      libcroco3:i386                      
44)      libcups2:i386                       
45)      libcupsimage2:i386                  
46)      libcurl3:i386                       
47)      libdatrie1:i386                     
48)      libdb5.1:i386                       
49)      libdbus-1-3:i386                    
50)      libdbus-glib-1-2:i386               
51)      libdrm2:i386                        
52)      libdv4:i386                         
53)      libesd0:i386                        
54)      libexif12:i386                      
55)      libexpat1:i386                      
56)      libffi6:i386                        
57)      libflac8:i386                       
58)      libfontconfig1:i386                 
59)      libfreetype6:i386                   
60)      libgail-common:i386                 
61)      libgail18:i386                      
62)      libgcc1:i386                        
63)      libgconf-2-4:i386                   
64)      libgcrypt11:i386                    
65)      libgd2-xpm:i386                     
66)      libgdbm3:i386                       
67)      libgdk-pixbuf2.0-0:i386             
68)      libgettextpo0:i386                  
69)      libgl1-mesa-glx:i386                
70)      libglapi-mesa:i386                  
71)      libglib2.0-0:i386                   
72)      libglu1-mesa:i386                   
73)      libgnome-keyring0:i386              
74)      libgnutls26:i386                    
75)      libgomp1:i386                       
76)      libgpg-error0:i386                  
77)      libgphoto2-2:i386                   
78)      libgphoto2-port0:i386               
79)      libgpm2:i386                        
80)      libgssapi-krb5-2:i386               
81)      libgssapi3-heimdal:i386             
82)      libgstreamer-plugins-base0.10-0:i386
83)      libgstreamer0.10-0:i386             
84)      libgtk2.0-0:i386                    
85)      libgudev-1.0-0:i386                 
86)      libhcrypto4-heimdal:i386            
87)      libheimbase1-heimdal:i386           
88)      libheimntlm0-heimdal:i386           
89)      libhx509-5-heimdal:i386             
90)      libibus-1.0-0:i386                  
91)      libice6:i386                        
92)      libidn11:i386                       
93)      libiec61883-0:i386                  
94)      libieee1284-3:i386                  
95)      libjack-jackd2-0:i386               
96)      libjasper1:i386                     
97)      libjpeg-turbo8:i386                 
98)      libjpeg8:i386                       
99)      libjson0:i386                       
100)     libk5crypto3:i386                   
101)     libkeyutils1:i386                   
102)     libkrb5-26-heimdal:i386             
103)     libkrb5-3:i386                      
104)     libkrb5support0:i386                
105)     liblcms1:i386                       
106)     libldap-2.4-2:i386                  
107)     libltdl7:i386                       
108)     libmad0:i386                        
109)     libmikmod2:i386                     
110)     libmng1:i386                        
111)     libmpg123-0:i386                    
112)     libncurses5:i386                    
113)     libncursesw5:i386                   
114)     libnspr4:i386                       
115)     libnss3:i386                        
116)     libodbc1:i386                       
117)     libogg0:i386                        
118)     libopenal1:i386                     
119)     liborc-0.4-0:i386                   
120)     libp11-kit0:i386                    
121)     libpango1.0-0:i386                  
122)     libpcre3:i386                       
123)     libpixman-1-0:i386                  
124)     libpng12-0:i386                     
125)     libproxy1:i386                      
126)     libpulse-mainloop-glib0:i386        
127)     libpulse0:i386                      
128)     libpulsedsp:i386                    
129)     libqt4-dbus:i386                    
130)     libqt4-declarative:i386             
131)     libqt4-designer:i386                
132)     libqt4-network:i386                 
133)     libqt4-opengl:i386                  
134)     libqt4-qt3support:i386              
135)     libqt4-script:i386                  
136)     libqt4-scripttools:i386             
137)     libqt4-sql:i386                     
138)     libqt4-svg:i386                     
139)     libqt4-test:i386                    
140)     libqt4-xml:i386                     
141)     libqt4-xmlpatterns:i386             
142)     libqtcore4:i386                     
143)     libqtgui4:i386                      
144)     libqtwebkit4:i386                   
145)     libraw1394-11:i386                  
146)     libroken18-heimdal:i386             
147)     librsvg2-2:i386                     
148)     librsvg2-common:i386                
149)     librtmp0:i386                       
150)     libsamplerate0:i386                 
151)     libsane:i386                        
152)     libsasl2-2:i386                     
153)     libsdl-image1.2:i386                
154)     libsdl-mixer1.2:i386                
155)     libsdl-net1.2:i386                  
156)     libsdl-ttf2.0-0:i386                
157)     libsdl1.2debian:i386                
158)     libselinux1:i386                    
159)     libshout3:i386                      
160)     libslang2:i386                      
161)     libsm6:i386                         
162)     libsndfile1:i386                    
163)     libsoup-gnome2.4-1:i386             
164)     libsoup2.4-1:i386                   
165)     libspeex1:i386                      
166)     libspeexdsp1:i386                   
167)     libsqlite3-0:i386                   
168)     libssl0.9.8:i386                    
169)     libssl1.0.0:i386                    
170)     libstdc++5:i386                     
171)     libstdc++6:i386                     
172)     libtag1-vanilla:i386                
173)     libtag1c2a:i386                     
174)     libtasn1-3:i386                     
175)     libtdb1:i386                        
176)     libthai0:i386                       
177)     libtheora0:i386                     
178)     libtiff4:i386                       
179)     libtinfo5:i386                      
180)     libudev0:i386                       
181)     libunistring0:i386                  
182)     libusb-0.1-4:i386                   
183)     libuuid1:i386                       
184)     libv4l-0:i386                       
185)     libv4lconvert0:i386                 
186)     libvisual-0.4-0:i386                
187)     libvorbis0a:i386                    
188)     libvorbisenc2:i386                  
189)     libvorbisfile3:i386                 
190)     libwavpack1:i386                    
191)     libwind0-heimdal:i386               
192)     libwrap0:i386                       
193)     libx11-6:i386                       
194)     libx11-xcb1:i386                    
195)     libxau6:i386                        
196)     libxaw7:i386                        
197)     libxcb-glx0:i386                    
198)     libxcb-render0:i386                 
199)     libxcb-shm0:i386                    
200)     libxcb1:i386                        
201)     libxcomposite1:i386                 
202)     libxcursor1:i386                    
203)     libxdamage1:i386                    
204)     libxdmcp6:i386                      
205)     libxext6:i386                       
206)     libxfixes3:i386                     
207)     libxft2:i386                        
208)     libxi6:i386                         
209)     libxinerama1:i386                   
210)     libxml2:i386                        
211)     libxmu6:i386                        
212)     libxp6:i386                         
213)     libxpm4:i386                        
214)     libxrandr2:i386                     
215)     libxrender1:i386                    
216)     libxslt1.1:i386                     
217)     libxss1:i386                        
218)     libxt6:i386                         
219)     libxtst6:i386                       
220)     libxv1:i386                         
221)     libxxf86vm1:i386                    
222)     nspluginviewer:i386                 
223)     nspluginwrapper                     
224)     odbcinst1debian2:i386               
225)     wine                                
226)     wine1.4                             
227)     wine1.4-amd64                       
228)     wine1.4-common                      
229)     wine1.4-i386:i386                   
230)     xaw3dg:i386                         
231)     zlib1g:i386                         

Accept this solution? [Y/n/q/?] ^C

Even after a handful of further solutions it doesn't find the obvious
one. Happens on the commandline as well as in TUI mode.

Besides the strange solutions I noticed also the following error message:

Internal error: the solver Install(fontconfig-config:amd64 2.8.0-3ubuntu9 <libfontconfig1:i386 2.8.0-3ubuntu9 -> {fontconfig-config:amd64 2.8.0-3ubuntu9}>) of a supposedly unresolved dependency is already installed in step 1271

I think at least this internal error is fixed in more recent aptitude
versions, so we'll try to reproduce the issue with a more recent
version and with one from Debian, e.g. from Wheezy.

I also already created an state bundle in case that's of help.

		Regards, Axel
-- 
 ,''`.  |  Axel Beckert <abe at debian.org>, http://people.debian.org/~abe/
: :' :  |  Debian Developer, ftp.ch.debian.org Admin
`. `'   |  1024D: F067 EA27 26B9 C3FC 1486  202E C09E 1D89 9593 0EDE
  `-    |  4096R: 2517 B724 C5F6 CA99 5329  6E61 2FF9 CD59 6126 16B5



More information about the Aptitude-devel mailing list