What is the root cause of "E: Unable to correct problems, you have held broken packages."
The PPA is broken. It contains a version of vlc-plugin-video-output
which
Breaks: vlc-plugin-base (<< 3.0.0~rc1~20171206-1~)
but the version of vlc-plugin-base
in the repository has a lower version number (thanks to the extra ~
in 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1
), so the packages can’t be installed!
There’s no easy fix, you’ll have to either wait for the PPA maintainers to fix things, or build VLC from source yourself (the package source is very easy to build).
Related videos on Youtube
Brandon Condrey
Consider opposing apartheid in Palestine and signing onto the BDS Movement; #1 User for DBA.SE 2017. Available for contracting: 281.901.0011 PostgreSQL & PostGIS / MySQL / SQL Server JavaScript, Typescript, Rx.js, Node.js, Angular Also: C / Perl / Python / Rust / x86 Assembly
Updated on September 18, 2022Comments
-
Brandon Condrey over 1 year
Previously, I was getting this error when I merely tried to update. I believe this problem is related to the VLC PPA which has always been total and utter trash on Ubuntu. I had to actually remove a file that was under package control with
rm
in order to purge the*vlc*
packages. Now, that I deleted that file, I was able to relatively easily delete the vlc packages. I figured this would take me back to the begining and I could again try to install, but when I do I get this error,sudo apt-get install vlc 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: vlc : Depends: vlc-plugin-video-output (= 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1) but it is not going to be installed E: Unable to correct problems, you have held broken packages.
Now, a few things
- I don't want to use Aptitude! That's not a solution, as was suggested here. I want to know what the problem is.
-
I don't have any marked packages. These commands return nothing.
dpkg --get-selections | grep hold apt-mark showhold
-
I have nothing with vlc. This command returns nothing.
dpkg -l | grep -i vlc
Where can I go looking for what is causing this problem?
sudo apt-get -s -o Debug::pkgProblemResolver=yes install vlc Reading package lists... Done Building dependency tree Reading state information... Done Starting pkgProblemResolver with broken count: 1 Starting 2 pkgProblemResolver with broken count: 1 Investigating (0) vlc:amd64 < none -> 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un puN Ib > Broken vlc:amd64 Depends on vlc-plugin-base:amd64 < none | 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un uH > (= 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1) Considering vlc-plugin-base:amd64 0 as a solution to vlc:amd64 9999 Re-Instated vlc-plugin-base:amd64 Investigating (0) vlc-plugin-video-output:amd64 < none -> 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un uN Ib > Broken vlc-plugin-video-output:amd64 Breaks on vlc-plugin-base:amd64 < none -> 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un uN > (< 3.0.0~rc1~20171206-1~) Considering vlc-plugin-base:amd64 0 as a solution to vlc-plugin-video-output:amd64 0 Holding Back vlc-plugin-video-output:amd64 rather than change vlc-plugin-base:amd64 Investigating (1) vlc:amd64 < none -> 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un puN Ib > Broken vlc:amd64 Depends on vlc-plugin-video-output:amd64 < none | 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un uH > (= 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1) Considering vlc-plugin-video-output:amd64 0 as a solution to vlc:amd64 9999 Re-Instated vlc-plugin-video-output:amd64 Investigating (1) vlc-plugin-video-output:amd64 < none -> 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un uN Ib > Broken vlc-plugin-video-output:amd64 Breaks on vlc-plugin-base:amd64 < none -> 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un uN > (< 3.0.0~rc1~20171206-1~) Considering vlc-plugin-base:amd64 0 as a solution to vlc-plugin-video-output:amd64 0 Holding Back vlc-plugin-video-output:amd64 rather than change vlc-plugin-base:amd64 Investigating (2) vlc:amd64 < none -> 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un puN Ib > Broken vlc:amd64 Depends on vlc-plugin-video-output:amd64 < none | 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 @un uH > (= 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1) Considering vlc-plugin-video-output:amd64 0 as a solution to vlc:amd64 9999 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: vlc : Depends: vlc-plugin-video-output (= 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1) but it is not going to be installed E: Unable to correct problems, you have held broken packages.
It was requested that I try
apt-get -f install
,sudo apt-get install -f [sudo] password for ecarroll: Reading package lists... Done Building dependency tree Reading state information... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Running a quick check with
apt-cache policy
as requested,apt-cache policy vlc vlc-plugin-video-output vlc-plugin-base vlc: Installed: (none) Candidate: 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 Version table: 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 500 500 http://ppa.launchpad.net/videolan/master-daily/ubuntu artful/main amd64 Packages 2.2.6-6 500 500 http://us.archive.ubuntu.com/ubuntu artful/universe amd64 Packages vlc-plugin-video-output: Installed: (none) Candidate: 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 Version table: 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 500 500 http://ppa.launchpad.net/videolan/master-daily/ubuntu artful/main amd64 Packages 2.2.6-6 500 500 http://us.archive.ubuntu.com/ubuntu artful/universe amd64 Packages vlc-plugin-base: Installed: (none) Candidate: 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 Version table: 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 500 500 http://ppa.launchpad.net/videolan/master-daily/ubuntu artful/main amd64 Packages 2.2.6-6 500 500 http://us.archive.ubuntu.com/ubuntu artful/universe amd64 Packages
Running,
sudo apt-get install vlc vlc-plugin-video-output vlc-plugin-base
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: vlc-plugin-video-output : Breaks: vlc-plugin-base (< 3.0.0~rc1~20171206-1~) but 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 is to be installed E: Unable to correct problems, you have held broken packages.
Running,
apt-cache show vlc-plugin-video-output vlc-plugin-base
Package: vlc-plugin-video-output Source: vlc Priority: optional Section: video Installed-Size: 747 Maintainer: Debian Multimedia Maintainers <[email protected]> Architecture: amd64 Version: 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 Replaces: vlc-plugin-base (<< 3.0.0~rc1~20171206-1~) Depends: libaa1 (>= 1.4p5), libavcodec57 (>= 7:3.3.4) | libavcodec-extra57 (>= 7:3.3.4), libavutil55 (>= 7:3.3.4), libc6 (>= 2.16), libcaca0 (>= 0.99.beta17-1), libegl1-mesa (>= 7.8.1) | libegl1-x11, libgl1-mesa-glx | libgl1, libgles2-mesa (>= 7.8.1) | libgles2, libva-drm1 (>= 1.1.0), libva-wayland1 (>= 1.3.0), libva-x11-1 (>= 1.0.3), libva1 (>= 1.7.3), libvlccore9 (>= 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1~), libwayland-client0 (>= 1.9.91), libwayland-egl1-mesa (>= 10.0.2) | libwayland-egl1, libx11-6, libxcb-keysyms1 (>= 0.4.0), libxcb-shm0, libxcb-xv0 (>= 1.2), libxcb1, vlc-plugin-abi-4-0-0 Enhances: vlc Breaks: vlc-plugin-base (<< 3.0.0~rc1~20171206-1~) Filename: pool/main/v/vlc/vlc-plugin-video-output_3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1_amd64.deb Size: 187422 MD5sum: 0d25595004292437bbc298de8ce0ffdd SHA1: 4be5a204b9aeedfc444e8520010fc3ac02363873 SHA256: fb8f64cb8ba1344e73e666c0621a974ccc313ffcbe8c38760765e40f9c0b637d Description-en: multimedia player and streamer (video output plugins) VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs, podcasts, and multimedia streams from various network sources. . This package contains the video output plugins. Description-md5: 304efe8a3dcaf595b6085adb45316c41 Multi-Arch: same Package: vlc-plugin-video-output Architecture: amd64 Version: 2.2.6-6 Multi-Arch: same Priority: optional Section: universe/video Source: vlc Origin: Ubuntu Maintainer: Ubuntu Developers <[email protected]> Original-Maintainer: Debian Multimedia Maintainers <[email protected]> Bugs: https://bugs.launchpad.net/ubuntu/+filebug Installed-Size: 249 Depends: libvlccore8 (= 2.2.6-6), libaa1 (>= 1.4p5), libc6 (>= 2.14), libcaca0 (>= 0.99.beta17-1), libegl1-mesa (>= 7.8.1) | libegl1-x11, libgl1-mesa-glx | libgl1, libgles2-mesa (>= 7.8.1) | libgles2, libx11-6, libxcb-keysyms1 (>= 0.4.0), libxcb-shm0, libxcb-xv0 (>= 1.2), libxcb1 Enhances: vlc Filename: pool/universe/v/vlc/vlc-plugin-video-output_2.2.6-6_amd64.deb Size: 53992 MD5sum: b781e5a9bd6f9f513914f3bd5ab5e5f3 SHA1: 5e7a6a24e7ecb9c3944447303f7a276ec8dd592b SHA256: e3e66e617cee1e9db3d26b37de8c26b4d8a55901eee3e16c6e1a94f1d37be988 Homepage: https://www.videolan.org/vlc/ Description-en: multimedia player and streamer (video output plugins) VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs, podcasts, and multimedia streams from various network sources. . This package contains the video output plugins. Description-md5: 304efe8a3dcaf595b6085adb45316c41 Task: kubuntu-desktop, kubuntu-full, edubuntu-desktop-gnome, lubuntu-qt-desktop, ubuntustudio-video, ubuntustudio-graphics, ubuntu-mate-desktop Package: vlc-plugin-base Source: vlc Priority: optional Section: video Installed-Size: 10845 Maintainer: Debian Multimedia Maintainers <[email protected]> Architecture: amd64 Version: 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1 Recommends: xdg-utils Replaces: vlc-plugin-zvbi (<< 3.0.0~rc1~20171206-1~) Suggests: libdvdcss2 Depends: vlc-data (= 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1), liba52-0.7.4, libarchive13 (>= 3.1.2), libaribb24-0 (>= 1.0.3), libasound2 (>= 1.0.27), libass9 (>= 1:0.13.6), libavahi-client3 (>= 0.6.16), libavahi-common3 (>= 0.6.16), libavc1394-0 (>= 0.5.3), libavcodec57 (>= 7:3.3.4) | libavcodec-extra57 (>= 7:3.3.4), libavformat57 (>= 7:3.3.4), libavutil55 (>= 7:3.3.4), libbasicusageenvironment1, libbluray2 (>= 1:1.0.0), libc6 (>= 2.16), libcairo2 (>= 1.13.1), libcddb2, libchromaprint1 (>= 1.3.2), libcrystalhd3 (>= 1:0.0~git20110715.fdd2f19), libdbus-1-3 (>= 1.9.14), libdc1394-22, libdca0 (>= 0.0.5), libdvbpsi10 (>= 1.3.0), libdvdnav4 (>= 5.0.3), libdvdread4 (>= 4.1.3), libebml4v5 (>= 1.3.4-2~), libfaad2 (>= 2.7), libflac8 (>= 1.3.0), libfontconfig1 (>= 2.11.94), libfreetype6 (>= 2.2.1), libfribidi0 (>= 0.19.2), libgcc1 (>= 1:3.4), libgcrypt20 (>= 1.7.0), libglib2.0-0 (>= 2.28.0), libgnutls30 (>= 3.5.6), libgpg-error0 (>= 1.14), libgroupsock8, libharfbuzz0b (>= 0.9.4), libjpeg8 (>= 8c), libkate1 (>= 0.3.0), liblirc-client0, liblivemedia58, liblua5.2-0, libmad0 (>= 0.15.1b-3), libmatroska6v5 (>= 1.4.5), libmicrodns0 (>= 0.0.3), libmpcdec6 (>= 1:0.1~r435), libmpeg2-4 (>= 0.5.1), libmpg123-0 (>= 1.13.7), libmtp9 (>= 1.1.0), libncursesw5 (>= 6), libnfs8 (>= 1.9.7), libogg0 (>= 1.1.0), libopenmpt-modplug1 (>= 0.2.7386~beta20.3), libopus0 (>= 1.1), libpng16-16 (>= 1.6.2-1), libpostproc54 (>= 7:3.3.4), libpulse0 (>= 0.99.4), libraw1394-11, libresid-builder0c2a, librsvg2-2 (>= 2.14.4), libsamplerate0 (>= 0.1.7), libsdl-image1.2 (>= 1.2.10), libsdl1.2debian (>= 1.2.11), libsecret-1-0 (>= 0.7), libshine3 (>= 3.1.0), libshout3, libsidplay2, libsndio6.1 (>= 1.1.0), libsoxr0 (>= 0.1.0), libspeex1 (>= 1.2~beta3-1), libspeexdsp1 (>= 1.2~beta3.2-1), libssh2-1 (>= 1.2.3), libstdc++6 (>= 5.2), libswscale4 (>= 7:3.3.4), libsystemd0, libtag1v5 (>= 1.9.1-2.2~), libtheora0 (>= 1.0), libtinfo5 (>= 6), libtwolame0 (>= 0.3.6), libudev1 (>= 183), libupnp6 (>= 1:1.6.19), libusageenvironment3, libva-drm1 (>= 1.1.0), libva1 (>= 1.7.3), libvlccore9 (>= 3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1~), libvorbis0a (>= 1.1.2), libvorbisenc2 (>= 1.1.2), libx264-148, libx265-130 (>= 2.5), libxcb-keysyms1 (>= 0.4.0), libxcb1, libxml2 (>= 2.7.4), libzvbi0 (>= 0.2.35), zlib1g (>= 1:1.1.4), vlc-plugin-abi-4-0-0 Breaks: vlc-plugin-zvbi (<< 3.0.0~rc1~20171206-1~) Filename: pool/main/v/vlc/vlc-plugin-base_3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1_amd64.deb Size: 2726256 MD5sum: 02cfa70575f76df46096e0f9df8dac74 SHA1: 0c45fa13a2c3473e27fdc32d5d4da7bdd0237907 SHA256: fcfc90a4c13a0c695bb342ca980087e1235cdf955173b18c23056615618a288a Description-en: multimedia player and streamer (base plugins) VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs, podcasts, and multimedia streams from various network sources. . This package contains most plugins which are shipped in more specialied plugin packages. Description-md5: 103cb021db8e172eaddc03ab0f07e203 Multi-Arch: same Package: vlc-plugin-base Architecture: amd64 Version: 2.2.6-6 Multi-Arch: same Priority: optional Section: universe/video Source: vlc Origin: Ubuntu Maintainer: Ubuntu Developers <[email protected]> Original-Maintainer: Debian Multimedia Maintainers <[email protected]> Bugs: https://bugs.launchpad.net/ubuntu/+filebug Installed-Size: 27372 Depends: libvlccore8 (= 2.2.6-6), liba52-0.7.4, libasound2 (>= 1.0.27), libass9 (>= 1:0.13.6), libavahi-client3 (>= 0.6.16), libavahi-common3 (>= 0.6.16), libavc1394-0 (>= 0.5.3), libbasicusageenvironment1, libbluray2 (>= 1:0.5.0), libbz2-1.0, libc6 (>= 2.17), libcairo2 (>= 1.13.1), libcddb2, libcdio13 (>= 0.83), libchromaprint1 (>= 1.3.2), libcrystalhd3 (>= 1:0.0~git20110715.fdd2f19), libdbus-1-3 (>= 1.9.14), libdc1394-22, libdca0 (>= 0.0.5), libdvbpsi10 (>= 1.3.0), libdvdnav4 (>= 5.0.3), libdvdread4 (>= 4.1.3), libebml4v5 (>= 1.3.4-2~), libfaad2 (>= 2.7), libflac8 (>= 1.3.0), libfontconfig1 (>= 2.11.94), libfreetype6 (>= 2.2.1), libfribidi0 (>= 0.19.2), libgcc1 (>= 1:3.4), libgcrypt20 (>= 1.7.0), libglib2.0-0 (>= 2.12.0), libgme0 (>= 0.5.5), libgnutls30 (>= 3.5.6), libgpg-error0 (>= 1.14), libgroupsock8, libgsm1 (>= 1.0.13), libjpeg8 (>= 8c), libkate1 (>= 0.3.0), liblirc-client0, liblivemedia58, liblua5.2-0, liblzma5 (>= 5.1.1alpha+20120614), libmad0 (>= 0.15.1b-3), libmatroska6v5 (>= 1.4.5), libmp3lame0, libmpcdec6 (>= 1:0.1~r435), libmpeg2-4 (>= 0.5.1), libmtp9 (>= 1.1.0), libncursesw5 (>= 6), libogg0 (>= 1.1.0), libopenmpt-modplug1 (>= 0.2.7386~beta20.3), libopus0 (>= 1.1), libpng16-16 (>= 1.6.2-1), libpulse0 (>= 0.99.4), libraw1394-11, libresid-builder0c2a, librsvg2-2 (>= 2.14.4), librtmp1 (>= 2.3), libsamplerate0 (>= 0.1.7), libsdl-image1.2 (>= 1.2.10), libsdl1.2debian (>= 1.2.11), libshine3 (>= 3.1.0), libshout3, libsidplay2, libsnappy1v5, libsndio6.1 (>= 1.1.0), libspeex1 (>= 1.2~beta3-1), libspeexdsp1 (>= 1.2~beta3.2-1), libssh-gcrypt-4 (>= 0.4.2), libssh2-1 (>= 1.2), libstdc++6 (>= 5.2), libtag1v5 (>= 1.9.1-2.2~), libtheora0 (>= 1.0), libtinfo5 (>= 6), libtwolame0 (>= 0.3.10), libudev1 (>= 183), libupnp6 (>= 1:1.6.19), libusageenvironment3, libva-drm1 (>= 1.1.0), libva-x11-1 (>= 1.0.3), libva1 (>= 1.7.3), libvcdinfo0 (>= 0.7.21), libvorbis0a (>= 1.1.2), libvorbisenc2 (>= 1.1.2), libvpx4 (>= 1.6.0), libwavpack1 (>= 4.40.0), libwebp6 (>= 0.5.1), libwebpmux3 (>= 0.6.0-3), libx11-6, libx264-148, libx265-130 (>= 2.5), libxcb-keysyms1 (>= 0.4.0), libxcb1, libxml2 (>= 2.7.4), libxvidcore4 (>= 1.2.2), libzvbi0 (>= 0.2.35), zlib1g (>= 1:1.2.0.2), vlc-data (= 2.2.6-6) Recommends: xdg-utils Suggests: libdvdcss2 Filename: pool/universe/v/vlc/vlc-plugin-base_2.2.6-6_amd64.deb Size: 7822760 MD5sum: 18b84f38bd2569d84b8ad409e0053267 SHA1: e3832d8afbeffc6d320ed42e5a0ad55a25701412 SHA256: e564b23d60b45de85576cb0add1fc31b21586f8c05f24323f148a3cf579951ed Homepage: https://www.videolan.org/vlc/ Description-en: multimedia player and streamer (base plugins) VLC is the VideoLAN project's media player. It plays MPEG, MPEG-2, MPEG-4, DivX, MOV, WMV, QuickTime, WebM, FLAC, MP3, Ogg/Vorbis files, DVDs, VCDs, podcasts, and multimedia streams from various network sources. . This package contains most plugins which are shipped in more specialied plugin packages. Description-md5: 103cb021db8e172eaddc03ab0f07e203 Task: kubuntu-desktop, kubuntu-full, edubuntu-desktop-gnome, lubuntu-qt-desktop, ubuntustudio-video, ubuntustudio-graphics, ubuntu-mate-desktop
-
Brandon Condrey over 6 yearsAhh so the
~
at the end ofvlc-plugin-base
's version number did it! What ever is canonicalizing the version number should be a lot louder, and less cryptic. that makes sense. -
Stephen Kitt over 6 yearsNo, it’s not the
~
at the end of the version number, it’s the~
before thegit
.apt
compares3.0.0~rc1~~git20171215+r73271+108~ubuntu17.10.1
to3.0.0~rc1~20171206-1~
and finds that the former is less than the latter. I agree it would be nice to have better error messages!