Public bug reported: I initially found this problem with the plainbox-provider-certification- client package from ppa:checkbox-dev/ppa, but later was able to reproduce it with a minimal, dummy debian metapackage which simply has this in debian/control:
Source: depends-on-glmark2-es2 Maintainer: Daniel Manrique <roa...@ubuntu.com> Section: misc Priority: optional Standards-Version: 3.9.2 Build-Depends: debhelper (>= 9) Package: depends-on-glmark2-es2 Architecture: all Recommends: glmark2, glmark2-es2 Description: depend on glmark2-es2 A simple package to glmark2-es2 and enablement stack problems On Ubuntu releases which include the backported LTS hardware enablement stack, trying to install glmark2-es2 indirectly causes apt-get to want to remove a large set of x-related packages, attempting to replace them with older non-LTS-stack versions, but ultimately in some cases leaving the system unusable due to removal of packages essential to boot to the graphical desktop. This appears to be because glmark2-es2 has this: libegl1-mesa (>= 7.8.1) | libegl1-x11, ..., libgles2-mesa (>= 7.8.1) | libgles2 libegl1-x11 and libgles2 are virtual packages provided by some packages in the corresponding enablement stack; however apt-get is not always smart enough to figure this out, and tries instead to install the libegl1-mesa and libgles2-mesa packages, which cause the removal of conflicting packages in the installed stack. Interestingly, if installed on its own on 12.04.4, apt-get *does* realize that a good solution is to install the corresponding package from the existing stack. Trying to install glmark2-es2 directly (apt-get install glmark2-es2) in 12.04.4 (Saucy enablement stack) correctly installs libgles2-mesa-lts-saucy (http://paste.ubuntu.com/7830857), but this direct installation in 12.04.3 and .2 (Raring and Quantal stacks) also attempts removal of those X-related packages (http://paste.ubuntu.com/7830923/). Assume $EXISTING_STACK represents the currently-installed-stack's release codename (saucy, raring, quantal). On 12.04.3 and .2, manually installing libegl1-mesa-lts-$EXISTING_STACK then enables installing glmark2-es2 without problems. Note that in all cases, if I manually install libgles2-mesa- lts-$EXISTING_STACK and libgles2-mesa-lts-$EXISTING_STACK, installing glmark2-es2 succeeds without strange behaviors. To reiterate, the main problem I'm seeing is that if a package recommends or depends on glmark2-es2, I get one of two possible behaviors: 1- Attempt to remove many x-stack-related packages (if glmark2-es2 is a recommends). 2- Failure to install due to unsatisfied dependencies (if glmark2-es2 is a depends). Steps to reproduce: - Boot a 12.04.4, 12.04.3, 12.04.2 live CD image in "try without installing" mode. - Enable universe and multiverse - Try to install a package recommending or depending on glmark2-es2 (try the one mentioned at the beginning, or build the dummy metapackage as described). What I expected to happen: - apt-get figures out whether to install libegl1-mesa-lts-$EXISTING_STACK or libgles2-mesa-lts-$EXISTING_STACK and both glmark2-es2 and my package are installed correctly. What actually happens: - Either attempt to remove x-related packages, or failure to install with unsatisfied dependencies. ** Affects: xorg-lts-transitional (Ubuntu) Importance: Undecided Status: New -- You received this bug notification because you are a member of Desktop Packages, which is subscribed to xorg-lts-transitional in Ubuntu. https://bugs.launchpad.net/bugs/1346409 Title: Installing a package depending on glmark2-es2 attempts to remove a lot of lts backport packages Status in “xorg-lts-transitional” package in Ubuntu: New Bug description: I initially found this problem with the plainbox-provider- certification-client package from ppa:checkbox-dev/ppa, but later was able to reproduce it with a minimal, dummy debian metapackage which simply has this in debian/control: Source: depends-on-glmark2-es2 Maintainer: Daniel Manrique <roa...@ubuntu.com> Section: misc Priority: optional Standards-Version: 3.9.2 Build-Depends: debhelper (>= 9) Package: depends-on-glmark2-es2 Architecture: all Recommends: glmark2, glmark2-es2 Description: depend on glmark2-es2 A simple package to glmark2-es2 and enablement stack problems On Ubuntu releases which include the backported LTS hardware enablement stack, trying to install glmark2-es2 indirectly causes apt-get to want to remove a large set of x-related packages, attempting to replace them with older non-LTS-stack versions, but ultimately in some cases leaving the system unusable due to removal of packages essential to boot to the graphical desktop. This appears to be because glmark2-es2 has this: libegl1-mesa (>= 7.8.1) | libegl1-x11, ..., libgles2-mesa (>= 7.8.1) | libgles2 libegl1-x11 and libgles2 are virtual packages provided by some packages in the corresponding enablement stack; however apt-get is not always smart enough to figure this out, and tries instead to install the libegl1-mesa and libgles2-mesa packages, which cause the removal of conflicting packages in the installed stack. Interestingly, if installed on its own on 12.04.4, apt-get *does* realize that a good solution is to install the corresponding package from the existing stack. Trying to install glmark2-es2 directly (apt- get install glmark2-es2) in 12.04.4 (Saucy enablement stack) correctly installs libgles2-mesa-lts-saucy (http://paste.ubuntu.com/7830857), but this direct installation in 12.04.3 and .2 (Raring and Quantal stacks) also attempts removal of those X-related packages (http://paste.ubuntu.com/7830923/). Assume $EXISTING_STACK represents the currently-installed-stack's release codename (saucy, raring, quantal). On 12.04.3 and .2, manually installing libegl1-mesa- lts-$EXISTING_STACK then enables installing glmark2-es2 without problems. Note that in all cases, if I manually install libgles2-mesa- lts-$EXISTING_STACK and libgles2-mesa-lts-$EXISTING_STACK, installing glmark2-es2 succeeds without strange behaviors. To reiterate, the main problem I'm seeing is that if a package recommends or depends on glmark2-es2, I get one of two possible behaviors: 1- Attempt to remove many x-stack-related packages (if glmark2-es2 is a recommends). 2- Failure to install due to unsatisfied dependencies (if glmark2-es2 is a depends). Steps to reproduce: - Boot a 12.04.4, 12.04.3, 12.04.2 live CD image in "try without installing" mode. - Enable universe and multiverse - Try to install a package recommending or depending on glmark2-es2 (try the one mentioned at the beginning, or build the dummy metapackage as described). What I expected to happen: - apt-get figures out whether to install libegl1-mesa-lts-$EXISTING_STACK or libgles2-mesa-lts-$EXISTING_STACK and both glmark2-es2 and my package are installed correctly. What actually happens: - Either attempt to remove x-related packages, or failure to install with unsatisfied dependencies. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/xorg-lts-transitional/+bug/1346409/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : desktop-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp