Mesa BPO to Stretch breaking Gnome and NVidia drivers

Julien Aubin julien.aubin at gmail.com
Sat May 12 06:35:23 BST 2018


Hi Stuart,

Conflicts appear if you have Mesa from BPO. Otherwise there's no issue.

Here's what I get on a box w/o NVidia card and my pins disabled.

administrateur at pccore2duo:/etc/apt$ LANG=C sudo apt -t
stretch-backports -s install nvidia-driver
[sudo] password for administrateur:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
nvidia-driver : Depends: nvidia-driver-libs (= 390.48-2~bpo9+2) but it
is not going to be installed or
                         nvidia-driver-libs-nonglvnd (=
390.48-2~bpo9+2) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.


P.S : for much of the stuff I pinned, I did so to avoid problems when
upgrading afterwards.

2018-05-12 5:31 GMT+02:00 Stuart Young <cefiar at gmail.com>:
> Hi Julien,
>
> I would disable all your pinning (eg: move preferences out of the /etc/apt/
> dir so you still have it if needed) then `apt-get update` and try `apt-get
> -s upgrade` to see if it can resolve it without the pinning in place.
>
> I note that, on boxes without nvidia cards, that doing `apt-get -t
> stretch-backports -s install nvidia-driver` (on stretch) or `apt-get -s
> install nvidia-driver` (on testing) doesn't produce any conflicts, saying
> that things will succeed.
>
> Note: If you install something from backports, you should not need to pin it
> to continue getting it from backports, just `apt-get -t stretch-backports
> install pkg`. In general, apt is smart enough to realise that you want to
> get the version (and any necessary dependencies) from backports and not
> elsewhere.
>
> PS: I had a bunch of pinning on similar stuff in stretch-backports that
> caused apt to continually want to 'downgrade' things to what was in stable,
> and it looked similar to what you had.
>
>
> On 12 May 2018 at 07:21, Julien Aubin <julien.aubin at gmail.com> wrote:
>>
>> 2018-05-11 19:10 GMT+02:00 Julien Aubin <julien.aubin at gmail.com>:
>> > 2018-05-11 18:55 GMT+02:00 Julien Aubin <julien.aubin at gmail.com>:
>> >> 2018-05-11 11:30 GMT+02:00 Julien Aubin <julien.aubin at gmail.com>:
>> >>>
>> >>>
>> >>> Le ven. 11 mai 2018 à 11:18, Julien Aubin <julien.aubin at gmail.com> a
>> >>> écrit :
>> >>>>
>> >>>>
>> >>>>
>> >>>> Le ven. 11 mai 2018 à 11:14, Julien Aubin <julien.aubin at gmail.com> a
>> >>>> écrit
>> >>>> :
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> Le ven. 11 mai 2018 à 11:11, Luca Boccassi <bluca at debian.org> a
>> >>>>> écrit :
>> >>>>>>
>> >>>>>> Right, I updated from p-u - could you please try to update to the
>> >>>>>> version in p-u first?
>> >>>>>>
>> >>>>>> On Fri, 11 May 2018, 10:07 Julien Aubin, <julien.aubin at gmail.com>
>> >>>>>> wrote:
>> >>>>>>>
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> Le ven. 11 mai 2018 à 11:04, Luca Boccassi <bluca at debian.org> a
>> >>>>>>> écrit :
>> >>>>>>>>
>> >>>>>>>> On Fri, 2018-05-11 at 05:24 +0200, Julien Aubin wrote:
>> >>>>>>>> > 2018-05-10 20:13 GMT+02:00 Julien Aubin
>> >>>>>>>> > <julien.aubin at gmail.com>:
>> >>>>>>>> > > 2018-05-10 19:03 GMT+02:00 Andreas Beckmann
>> >>>>>>>> > > <anbe at debian.org>:
>> >>>>>>>> > > > On 2018-05-08 18:43, Julien Aubin wrote:
>> >>>>>>>> > > > > 2018-05-08 14:16 GMT+02:00 Andreas Beckmann
>> >>>>>>>> > > > > <anbe at debian.org>:
>> >>>>>>>> > > > > > I've prepared in SVN an update to the
>> >>>>>>>> > > > > > nvidia-graphics-drivers
>> >>>>>>>> > > > > > backport
>> >>>>>>>> > > > > > that Conflicts with the src:libglvnd packages from
>> >>>>>>>> > > > > > stretch-
>> >>>>>>>> > > > > > backports.
>> >>>>>>>> > > > > > That should solve the issues of pulling them in while
>> >>>>>>>> > > > > > installing
>> >>>>>>>> > > > > > nvidia-driver/stretch-backports, avoiding the trouble
>> >>>>>>>> > > > > > caused
>> >>>>>>>> > > > > > by the
>> >>>>>>>> > > > > > libglvnd backport. Luca plans to give it more testing
>> >>>>>>>> > > > > > later
>> >>>>>>>> > > > > > this week.
>> >>>>>>>> > > > >
>> >>>>>>>> > > > > If you wanna some more test feedback don't hesitate to
>> >>>>>>>> > > > > ask me.
>> >>>>>>>> > > >
>> >>>>>>>> > > > Uploaded to stretch-backports.
>> >>>>>>>> > > >
>> >>>>>>>> > > > Please tell us if you encounter more issues in your use
>> >>>>>>>> > > > cases.
>> >>>>>>>> > > >
>> >>>>>>>> > > >
>> >>>>>>>> > > > Andreas
>> >>>>>>>> > >
>> >>>>>>>> > > Thanks. Once I have the packages (they're still not in the
>> >>>>>>>> > > archive)
>> >>>>>>>> > > I'll give you feedback.
>> >>>>>>>> >
>> >>>>>>>> >
>> >>>>>>>> > Hi,
>> >>>>>>>> >
>> >>>>>>>> > Still not good :-/
>> >>>>>>>> >
>> >>>>>>>> > administrateur at pccorei7-4770:~$ LANG=C sudo apt upgrade
>> >>>>>>>> > [sudo] password for administrateur:
>> >>>>>>>> > Reading package lists... Done
>> >>>>>>>> > Building dependency tree
>> >>>>>>>> > Reading state information... Done
>> >>>>>>>> > Calculating upgrade... Done
>> >>>>>>>> > Some packages could not be installed. This may mean that you
>> >>>>>>>> > have
>> >>>>>>>> > requested an impossible situation or if you are using the
>> >>>>>>>> > unstable
>> >>>>>>>> > distribution that some required packages have not yet been
>> >>>>>>>> > created
>> >>>>>>>> > or been moved out of Incoming.
>> >>>>>>>> > The following information may help to resolve the situation:
>> >>>>>>>> >
>> >>>>>>>> > The following packages have unmet dependencies:
>> >>>>>>>> > libgles2-glvnd-nvidia : Conflicts: libgles2 (> 0)
>> >>>>>>>> > libgles2-glvnd-nvidia:i386 : Conflicts: libgles2 (> 0)
>> >>>>>>>> > libglvnd0-nvidia : Conflicts: libglvnd0 but 1.0.0+git20180308-
>> >>>>>>>> > 2~bpo9+1
>> >>>>>>>> > is to be installed
>> >>>>>>>> > libglvnd0-nvidia:i386 : Conflicts: libglvnd0 but
>> >>>>>>>> > 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>>>>>>> > nvidia-driver-libs : Conflicts: libgles2 (> 0)
>> >>>>>>>> >                      Conflicts: libglvnd0 (> 0) but
>> >>>>>>>> > 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>>>>>>> > nvidia-driver-libs:i386 : Conflicts: libgles2 (> 0)
>> >>>>>>>> >                           Conflicts: libglvnd0 (> 0) but
>> >>>>>>>> > 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>>>>>>> > E: Broken packages
>> >>>>>>>>
>> >>>>>>>> Where are you starting from? Is it just what's purely in stretch,
>> >>>>>>>> or
>> >>>>>>>> stretch-p-u, or something else? glvnd or nonglvnd flavours?
>> >>>>>>>>
>> >>>>>>>> Also try with aptitude, the resolver there seems to figure out a
>> >>>>>>>> bit
>> >>>>>>>> better what's going on with complex situations
>> >>>>>>>>
>> >>>>>>>>
>> >>>>>>>> --
>> >>>>>>>> Kind regards,
>> >>>>>>>> Luca Boccassi
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> I am starting with stretch (no PU). GLVND flavors.
>> >>>>>>>
>> >>>>>>> Reproducible on two boxes.
>> >>>>>>>
>> >>>>>>> NVidia blob comes from BPO.
>> >>>>>>> _______________________________________________
>> >>>>>>> pkg-nvidia-devel mailing list
>> >>>>>>> pkg-nvidia-devel at alioth-lists.debian.net
>> >>>>>>>
>> >>>>>>>
>> >>>>>>> https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-nvidia-devel
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> Do you mean the nvidia blob from pu indtead of bpo ?
>> >>>>>
>> >>>>> I actually see that libglvnd0 is marked as conflicts with nvidia's
>> >>>>> glvnd.
>> >>>>> As mesa depends on libglvnd0 if you indicate that nvidia's libglvnd0
>> >>>>> provides libglvnd0 it shoulddo the trick.
>> >>>>
>> >>>>
>> >>>> I try w/ aptitude tonight and keep you informed.
>> >>>
>> >>>
>> >>> Okay after a bit of investigation it turns out that package
>> >>> libgles2-glvnd-nvidia exists only in stretch-bpo.
>> >>>
>> >>> I try with aptitude tonight or apt install -f
>> >>
>> >> Hi Luca,
>> >>
>> >> Tried apt install -f and aptitude upgrade, and both do not find any
>> >> solution.
>> >>
>> >> If I try to run sudo aptitude dist-upgrade here's the output :
>> >> administrateur at pccorei7-4770:~$ LANG=C sudo aptitude dist-upgrade
>> >> [sudo] password for administrateur:
>> >> The following NEW packages will be installed:
>> >>  libegl1{b} libgl1{b} libgles2 libglvnd0{a} libglx-mesa0 libglx0{ab}
>> >> libllvm5.0{a}
>> >> The following packages will be upgraded:
>> >>  libegl1-mesa{b} libgl1-mesa-dri{b} libgl1-mesa-glx{b}
>> >> libglapi-mesa{b} libgles2-mesa libosmesa6{b} libwayland-egl1-mesa{b}
>> >> 7 packages upgraded, 7 newly installed, 0 to remove and 0 not upgraded.
>> >> Need to get 21.4 MB of archives. After unpacking 78.9 MB will be used.
>> >> The following packages have unmet dependencies:
>> >> libglx0-glvnd-nvidia : Conflicts: libglx0 but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libglx0-glvnd-nvidia:i386 : Conflicts: libglx0 but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libegl1 : Breaks: libegl1-mesa:i386 (< 17.2.0~rc4-1) but 13.0.6-1+b2
>> >> is installed
>> >> libgl1 : Breaks: libgl1-mesa-glx:i386 (< 17.2.0~rc4-1) but 13.0.6-1+b2
>> >> is installed
>> >> libglvnd0-nvidia : Conflicts: libglvnd0 but 1.0.0+git20180308-2~bpo9+1
>> >> is to be installed
>> >> libglvnd0-nvidia:i386 : Conflicts: libglvnd0 but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libglapi-mesa : Breaks: libglapi-mesa:i386 (!= 17.3.9-1~bpo9+1) but
>> >> 13.0.6-1+b2 is installed
>> >> libglapi-mesa:i386 : Breaks: libglapi-mesa (!= 13.0.6-1+b2) but
>> >> 17.3.9-1~bpo9+1 is to be installed
>> >> libegl1-mesa : Breaks: libegl1-mesa:i386 (!= 17.3.9-1~bpo9+1) but
>> >> 13.0.6-1+b2 is installed
>> >> libegl1-mesa:i386 : Breaks: libegl1-mesa (!= 13.0.6-1+b2) but
>> >> 17.3.9-1~bpo9+1 is to be installed
>> >> libwayland-egl1-mesa : Breaks: libwayland-egl1-mesa:i386 (!=
>> >> 17.3.9-1~bpo9+1) but 13.0.6-1+b2 is installed
>> >> libwayland-egl1-mesa:i386 : Breaks: libwayland-egl1-mesa (!=
>> >> 13.0.6-1+b2) but 17.3.9-1~bpo9+1 is to be installed
>> >> libglx0 : Breaks: libgl1-mesa-glx:i386 (< 17.2.0~rc4-1) but
>> >> 13.0.6-1+b2 is installed
>> >> nvidia-driver-libs : Conflicts: libegl1 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                      Conflicts: libgl1 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                      Conflicts: libgles2 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                      Conflicts: libglvnd0 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                      Conflicts: libglx0 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> nvidia-driver-libs:i386 : Conflicts: libegl1 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                           Conflicts: libgl1 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                           Conflicts: libgles2 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                           Conflicts: libglvnd0 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                           Conflicts: libglx0 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libgl1-mesa-dri : Breaks: libgl1-mesa-dri:i386 (!= 17.3.9-1~bpo9+1)
>> >> but 13.0.6-1+b2 is installed
>> >> libgl1-mesa-dri:i386 : Breaks: libgl1-mesa-dri (!= 13.0.6-1+b2) but
>> >> 17.3.9-1~bpo9+1 is to be installed
>> >> libosmesa6 : Breaks: libosmesa6:i386 (!= 17.3.9-1~bpo9+1) but
>> >> 13.0.6-1+b2 is installed
>> >> libosmesa6:i386 : Breaks: libosmesa6 (!= 13.0.6-1+b2) but
>> >> 17.3.9-1~bpo9+1 is to be installed
>> >> libgl1-mesa-glx : Breaks: libgl1-mesa-glx:i386 (!= 17.3.9-1~bpo9+1)
>> >> but 13.0.6-1+b2 is installed
>> >> libgl1-mesa-glx:i386 : Conflicts: libgl1 but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >>                        Breaks: libgl1-mesa-glx (!= 13.0.6-1+b2) but
>> >> 17.3.9-1~bpo9+1 is to be installed
>> >> libgl1-glvnd-nvidia-glx : Conflicts: libgl1 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libgl1-glvnd-nvidia-glx:i386 : Conflicts: libgl1 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libegl1-glvnd-nvidia : Conflicts: libegl1 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libegl1-glvnd-nvidia:i386 : Conflicts: libegl1 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libgles2-glvnd-nvidia : Conflicts: libgles2 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> libgles2-glvnd-nvidia:i386 : Conflicts: libgles2 (> 0) but
>> >> 1.0.0+git20180308-2~bpo9+1 is to be installed
>> >> The following actions will resolve these dependencies:
>> >>
>> >>      Remove the following packages:
>> >> 1)      libegl1-mesa:i386 [13.0.6-1+b2 (now, stable)]
>> >> 2)      libgl1-mesa-glx:i386 [13.0.6-1+b2 (now, stable)]
>> >> 3)      libglu1-mesa:i386 [9.0.0-2.1 (now, stable)]
>> >> 4)      libqt4-opengl:i386 [4:4.8.7+dfsg-11 (now, stable)]
>> >> 5)      libqtwebkit4:i386 [2.3.4.dfsg-9.1 (now, stable)]
>> >> 6)      libsdl2-2.0-0:i386 [2.0.5+dfsg1-2 (now, stable)]
>> >> 7)      libvisual-0.4-plugins:i386 [1:0.4.0+dfsg1-10 (now, stable)]
>> >> 8)      libwayland-egl1-mesa:i386 [13.0.6-1+b2 (now, stable)]
>> >>
>> >>      Keep the following packages at their current version:
>> >> 9)      libegl1 [Not Installed]
>> >> 10)     libegl1-mesa [13.0.6-1+b2 (now, stable)]
>> >> 11)     libgl1 [Not Installed]
>> >> 12)     libgl1-mesa-dri [13.0.6-1+b2 (now, stable)]
>> >> 13)     libgl1-mesa-glx [13.0.6-1+b2 (now, stable)]
>> >> 14)     libglapi-mesa [13.0.6-1+b2 (now, stable)]
>> >> 15)     libgles2 [Not Installed]
>> >> 16)     libgles2-mesa [13.0.6-1+b2 (now, stable)]
>> >> 17)     libglvnd0 [Not Installed]
>> >> 18)     libglx-mesa0 [Not Installed]
>> >> 19)     libglx0 [Not Installed]
>> >> 20)     libosmesa6 [13.0.6-1+b2 (now, stable)]
>> >> 21)     libwayland-egl1-mesa [13.0.6-1+b2 (now, stable)]
>> >>
>> >>      Leave the following dependencies unresolved:
>> >> 22)     wine-devel-i386:i386 recommends libglu1-mesa:i386 |
>> >> libglu1:i386
>> >> 23)     wine-devel-i386:i386 recommends libsdl2-2.0-0:i386 (>= 2.0.4)
>> >>
>> >> To me the problematic packages are :
>> >> nvidia-driver-libs
>> >> libglvnd0-nvidia
>> >> libgles2-glvnd-nvidia
>> >>
>> >> If I try a simple dist-upgrade I get :
>> >> LANG=C sudo apt dist-upgrade
>> >> [sudo] password for administrateur:
>> >> Reading package lists... Done
>> >> Building dependency tree
>> >> Reading state information... Done
>> >> Calculating upgrade... Done
>> >> The following packages have been kept back:
>> >>  libegl1-mesa libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa
>> >> libgles2-mesa libosmesa6 libwayland-egl1-mesa
>> >> 0 upgraded, 0 newly installed, 0 to remove and 7 not upgraded.
>> >>
>> >>
>> >> Now if I try to manually upgrade mesa using command :
>> >> LANG=C sudo apt -t stretch-backports install libegl1-mesa
>> >> libgl1-mesa-dri libgl1-mesa-glx libglapi-mesa
>> >> libgles2-mesa libosmesa6 libwayland-egl1-mesa libegl1
>> >> libegl1-mesa:i386 libgl1-mesa-glx:i386 libglu1-mesa:i386
>> >> libwayland-egl1-mesa:i3
>> >> 86 libegl1:i386 libgl1:i386
>> >>
>> >> I get :
>> >>
>> >> Reading package lists... Done
>> >> Building dependency tree
>> >> Reading state information... Done
>> >> libglu1-mesa:i386 is already the newest version (9.0.0-2.1).
>> >> libglu1-mesa:i386 set to manually installed.
>> >> The following packages were automatically installed and are no longer
>> >> required:
>> >>  libnvidia-egl-wayland1 libnvidia-egl-wayland1:i386
>> >> nvidia-egl-wayland-common nvidia-egl-wayland-icd
>> >> nvidia-egl-wayland-icd:i386
>> >> Use 'sudo apt autoremove' to remove them.
>> >> The following additional packages will be installed:
>> >>  libegl-mesa0 libegl-mesa0:i386 libgbm1 libgbm1:i386 libgl1
>> >> libgl1-mesa-dri:i386 libgl1-nvidia-glx libglapi-mesa:i386 libgles2
>> >>  libglvnd0 libglvnd0:i386 libglx-mesa0 libglx-mesa0:i386 libglx0
>> >> libglx0:i386 libllvm5.0 libllvm5.0:i386 libosmesa6:i386
>> >> The following packages will be REMOVED:
>> >>  libegl1-glvnd-nvidia libegl1-glvnd-nvidia:i386
>> >> libgl1-glvnd-nvidia-glx libgl1-glvnd-nvidia-glx:i386
>> >> libgl1-nvidia-glvnd-glx
>> >>  libgl1-nvidia-glvnd-glx:i386 libgles-nvidia1 libgles-nvidia1:i386
>> >> libgles-nvidia2 libgles-nvidia2:i386 libgles1-glvnd-nvidia
>> >>  libgles1-glvnd-nvidia:i386 libgles1-nvidia libgles2-glvnd-nvidia
>> >> libgles2-glvnd-nvidia:i386 libgles2-nvidia libglvnd0-nvidia
>> >>  libglvnd0-nvidia:i386 libglx0-glvnd-nvidia libglx0-glvnd-nvidia:i386
>> >> libopengl0-glvnd-nvidia libopengl0-glvnd-nvidia:i386
>> >>  nvidia-driver nvidia-driver-libs nvidia-driver-libs:i386
>> >> nvidia-driver-libs-i386:i386 nvidia-egl-icd nvidia-egl-icd:i386
>> >>  nvidia-vulkan-common nvidia-vulkan-icd nvidia-vulkan-icd:i386
>> >> The following NEW packages will be installed:
>> >>  libegl-mesa0 libegl-mesa0:i386 libegl1 libegl1:i386 libgl1
>> >> libgl1:i386 libgl1-nvidia-glx libgles2 libglvnd0 libglvnd0:i386
>> >>  libglx-mesa0 libglx-mesa0:i386 libglx0 libglx0:i386 libllvm5.0
>> >> libllvm5.0:i386
>> >> The following packages will be upgraded:
>> >>  libegl1-mesa libegl1-mesa:i386 libgbm1 libgbm1:i386 libgl1-mesa-dri
>> >> libgl1-mesa-dri:i386 libgl1-mesa-glx libgl1-mesa-glx:i386
>> >>  libglapi-mesa libglapi-mesa:i386 libgles2-mesa libosmesa6
>> >> libosmesa6:i386 libwayland-egl1-mesa libwayland-egl1-mesa:i386
>> >>
>> >> I'm on NVidia BPO driver (390.48)
>> >
>> > To help you reproduce the issue :
>> > From Stretch (or -pu)
>> > 1/ Upgrade nvidia-driver to BPO 390.48 while keeping mesa to stable
>> > 2/ Upgrade mesa to BPO (see my pins)
>>
>> I tried fully removing the BPO nvidia driver and then reinstalling it
>> and running the update. Out of luck.
>
>
>
>
> --
> Stuart Young (aka Cefiar)



More information about the pkg-nvidia-devel mailing list