Hi there!
BTW, this is *not* a bug in any X.Org package, but in apt/aptitude.
When not specified, aptitude does the same as apt-get.
On Wed, 20 Aug 2008 01:37:50 +0200, Luca Capello wrote:
> BTW, this is particular annoying since when installing Debian on the
> Opemoko FreeRunner [1], we need to first install all the -video-* and
> -input-* packages and then remove them [2].
[...]
> Footnotes:
> [1] http://wiki.debian.org/DebianOnFreeRunner
> [2] http://git.debian.org/?p=pkg-fso/files.git;a=blob;f=install.sh
The situation has evolved WRT X.Org after the new X.Org dependency on
HAL/kbd as per
http://bugs.debian.org/515214
1) on my ThinkPad X60, with install-recommends false and kbd already
installed (around mid-April 2009, but not checked with aptitude):
=====
gismo:~# apt-get install xserver-xorg-video-intel
[...]
The following extra packages will be installed:
acl consolekit hal libaudit0 libck-connector0 libdrm-intel1
libfontenc1 libpciaccess0 libpolkit-dbus2 libpolkit-grant2
libpolkit2 libxaw7 libxfont1 libxkbfile1 libxmu6 policykit
x11-xkb-utils xserver-common xserver-xorg xserver-xorg-core
xserver-xorg-input-evdev
[...]
gismo:~# apt-get install xserver-xorg
[...]
The following extra packages will be installed:
acl consolekit hal libaudit0 libck-connector0 libdrm-intel1
libfontenc1 libpciaccess0 libpolkit-dbus2 libpolkit-grant2
libpolkit2 libxaw7 libxfont1 libxkbfile1 libxmu6 policykit
x11-xkb-utils xserver-common xserver-xorg-core
xserver-xorg-input-evdev xserver-xorg-video-all
xserver-xorg-video-apm xserver-xorg-video-ark
xserver-xorg-video-ati xserver-xorg-video-chips
xserver-xorg-video-cirrus xserver-xorg-video-fbdev
xserver-xorg-video-i128 xserver-xorg-video-intel
xserver-xorg-video-mach64 xserver-xorg-video-mga
xserver-xorg-video-neomagic xserver-xorg-video-nv
xserver-xorg-video-openchrome xserver-xorg-video-r128
xserver-xorg-video-radeon xserver-xorg-video-radeonhd
xserver-xorg-video-rendition xserver-xorg-video-s3
xserver-xorg-video-s3virge xserver-xorg-video-savage
xserver-xorg-video-siliconmotion xserver-xorg-video-sis
xserver-xorg-video-sisusb xserver-xorg-video-tdfx
xserver-xorg-video-trident xserver-xorg-video-tseng
xserver-xorg-video-v4l xserver-xorg-video-vesa
xserver-xorg-video-vmware xserver-xorg-video-voodoo
[...]
gismo:~#
=====
2) apt-get on a clean chroot created by cdebootstrap my Openmoko
FreeRunner, again with install-recommends false:
=====
root@om-gta02:/# apt-get install xserver-xorg-video-fbdev
[...]
The following extra packages will be installed:
acl console-common console-data console-setup console-terminus
consolekit cpp cpp-4.3 dbus gcc-4.3-base hal hal-info kbd libaudit0
libck-connector0 libdbus-1-3 libdbus-glib-1-2 libdrm2 libexpat1
libfontenc1 libfreetype6 libgcrypt11 libglib2.0-0 libgmp3c2
libgpg-error0 libhal-storage1 libhal1 libice6 libmpfr1ldbl libpci3
libpciaccess0 libpcre3 libpixman-1-0 libpolkit-dbus2
libpolkit-grant2 libpolkit2 libsm6 libx11-6 libx11-data libxau6
libxaw7 libxcb1 libxdmcp6 libxext6 libxfont1 libxkbfile1 libxmu6
libxpm4 libxt6 pciutils pm-utils policykit powermgmt-base usbutils
x11-common x11-xkb-utils xkb-data xserver-common xserver-xorg
xserver-xorg-core xserver-xorg-input-evdev
[...]
root@om-gta02:/# apt-get install xserver-xorg
[...]
The following extra packages will be installed:
acl console-common console-data console-setup console-terminus
consolekit cpp cpp-4.3 dbus gcc-4.3-base hal hal-info kbd libaudit0
libck-connector0 libdbus-1-3 libdbus-glib-1-2 libdrm2 libexpat1
libfontenc1 libfreetype6 libgcrypt11 libglib2.0-0 libgmp3c2
libgpg-error0 libhal-storage1 libhal1 libice6 libmpfr1ldbl libpci3
libpciaccess0 libpcre3 libpixman-1-0 libpolkit-dbus2
libpolkit-grant2 libpolkit2 libsm6 libx11-6 libx11-data libxau6
libxaw7 libxcb1 libxdmcp6 libxext6 libxfont1 libxkbfile1 libxmu6
libxpm4 libxt6 pciutils pm-utils policykit powermgmt-base usbutils
x11-common x11-xkb-utils xkb-data xserver-common xserver-xorg-core
xserver-xorg-input-evdev xserver-xorg-video-all
xserver-xorg-video-apm xserver-xorg-video-ark
xserver-xorg-video-ati xserver-xorg-video-chips
xserver-xorg-video-cirrus xserver-xorg-video-fbdev
xserver-xorg-video-i128 xserver-xorg-video-i740
xserver-xorg-video-mach64 xserver-xorg-video-mga
xserver-xorg-video-neomagic xserver-xorg-video-nv
xserver-xorg-video-r128 xserver-xorg-video-radeon
xserver-xorg-video-radeonhd xserver-xorg-video-rendition
xserver-xorg-video-s3 xserver-xorg-video-s3virge
xserver-xorg-video-savage xserver-xorg-video-siliconmotion
xserver-xorg-video-sis xserver-xorg-video-sisusb
xserver-xorg-video-tdfx xserver-xorg-video-trident
xserver-xorg-video-tseng xserver-xorg-video-v4l
xserver-xorg-video-vesa xserver-xorg-video-voodoo
[...]
root@om-gta02:/#
=====
3) aptitude on the same chroot as above:
=====
root@om-gta02:/# aptitude install xserver-xorg-video-fbdev
[...]
The following NEW packages will be installed:
acl{a} console-common{a} console-data{a} console-setup{a} console-terminus{a}
consolekit{a} cpp{a} cpp-4.3{a} dbus{a} gcc-4.3-base{a} hal{a} hal-info{a} kbd{a} libaudit0{a}
libck-connector0{a} libdbus-1-3{a} libdbus-glib-1-2{a} libdrm2{a} libexpat1{a}
libfontenc1{a} libfreetype6{a} libgcrypt11{a} libglib2.0-0{a} libgmp3c2{a}
libgpg-error0{a} libhal-storage1{a} libhal1{a} libice6{a} libmpfr1ldbl{a} libpci3{a}
libpciaccess0{a} libpcre3{a} libpixman-1-0{a} libpolkit-dbus2{a}
libpolkit-grant2{a} libpolkit2{a} libsm6{a} libx11-6{a} libx11-data{a} libxau6{a}
libxaw7{a} libxcb1{a} libxdmcp6{a} libxext6{a} libxfont1{a} libxkbfile1{a} libxmu6{a}
libxpm4{a} libxt6{a} pciutils{a} pm-utils{a} policykit{a} powermgmt-base{a} usbutils{a}
x11-common{a} x11-xkb-utils{a} xkb-data{a} xserver-common{a} xserver-xorg{a}
xserver-xorg-core{a} xserver-xorg-input-evdev{a}
xserver-xorg-video-fbdev
[...]
root@om-gta02:/#
=====
While people can now choose a single xserver-xorg-video-* package,
however the apt/aptitude bug is still there, only now related to the
console-* packages. This because of:
- kbd depends on "console-common | console-setup"
- console-common depends on both "console-data, kbd | console-tools"
- xserver-xorg depends on "console-setup"
http://bugs.debian.org/523960
Thus, if I install *both* kbd and xserver-xorg, I do not need
console-common (and the dependent console-data). However, apt (and
aptitude as well) still wants to install it. This is indeed a bug.
However, while looking at the situation in more details I discovered a
second bug, this time restricted to apt only. Since now on the
"offending" package is kbd.
1) for apt-get, the order in which packages are asked to be installed
counts:
=====
root@om-gta02:/# apt-get install kbd
[...]
The following extra packages will be installed:
console-common console-data
[...]
root@om-gta02:/# apt-get install kbd console-setup
[...]
The following extra packages will be installed:
console-common console-data console-terminus xkb-data
[...]
root@om-gta02:/# apt-get install console-setup kbd
[...]
The following extra packages will be installed:
console-terminus xkb-data
[...]
root@om-gta02:/#
=====
2) apt-get behaves correctly if asked to remove the not-needed package:
=====
root@om-gta02:/# apt-get install kbd console-data-
[...]
Package console-data is not installed, so not removed
The following extra packages will be installed:
console-setup console-terminus xkb-data
[...]
root@om-gta02:/#
=====
3) aptitude correctly resolves the dependencies when explicitly asked,
independently of the package order:
=====
root@om-gta02:/# aptitude install kbd
[...]
The following NEW packages will be installed:
console-common{a} console-data{a} kbd
[...]
root@om-gta02:/# aptitude install kbd console-setup
[...]
The following NEW packages will be installed:
console-setup console-terminus{a} kbd xkb-data{a}
[...]
root@om-gta02:/#
=====
Note that because of this second bug, if someone (like the Debian
FreeSmartphone.Org team) wants to install one single
xserver-xorg-video-* package avoiding the console-data installation,
this has to be done with:
# apt-get install xserver-xorg-video-fbdev console-data-
or
# aptitude install xserver-xorg-video-fbdev console-setup
Thx, bye,
Gismo / Luca
Attachment:
pgp2HAspFrckc.pgp
Description: PGP signature