158?Linux DietPi 3.10.105+ #1 SMP PREEMPT Mon Aug 7 10:09:24 CEST 2017 armv7l GNU/Linux?Unable to install FFMPEG from dietpi-software
ffmpeg installed
apt-get error
The following packages have unmet dependencies:
ffmpeg : Depends: libavcodec57 (>= 7:3.4) but it is not going to be installed or
libavcodec-extra57 (>= 7:3.4) but it is not going to be installed
Depends: libavdevice57 (>= 7:3.4) but it is not going to be installed
Depends: libavfilter6 (>= 7:3.4) but it is not going to be installed or
libavfilter-extra6 (>= 7:3.4) but it is not going to be installed
Depends: libavformat57 (>= 7:3.4) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
Install ffmpeg from dietpi-software
dietpi-bugreport?
c67ca81e-3042-456c-af0a-127222a9df27-0
The reason is that ffmpeg just exists in Stretch and Jessie backports: https://packages.debian.org/stretch/ffmpeg
As backports are by default added to apt sources, but handled with low priorities, apt requests recognize it to install, but finds too low versions/non-existence of its dependencies inside the (stable) Jessie repo.
So you need to force that apt also pulls the dependencies from jessie-backports repo, or let's say DietPi need to ensure that, when offering backport packages.
Use: apt -t jessie-backports install ffmpeg
@Fourdee
Seems to be new/temporary that ffmpeg is not available in stable jessie repo?
https://github.com/Fourdee/DietPi/blob/master/dietpi/dietpi-software#L8127-L8132
We would need to add -t jessie-backports there for the moment at least.
€: Hmm, seems to be handled different in cases. On my VirtualBox Jessie image, the dependencies from jessie-backport got pullled automatically even without -t jessie-backports:
# apt-get install ffmpeg
Reading package lists... Done
Building dependency tree
Reading state information... Done
... will be installed:
ffmpeg libasound2 libasound2-data libass5 libasyncns0 libavc1394-0 libavcodec57 libavdevice57 libavfilter6 libavformat57 libavresample3 libavutil55
libbluray1 libbs2b0 libcaca0 libcdio-cdda1 libcdio-paranoia1 libcdio13 libchromaprint1 libcrystalhd3 libdbus-1-3 libdc1394-22 libdrm-nouveau2 libdrm-radeon1
libdrm2 libegl1-mesa libelf1 libenca0 libfftw3-double3 libflac8 libflite1 libfribidi0 libgbm1 libgl1-mesa-glx libglapi-mesa libglib2.0-0 libglu1-mesa
libgme0 libgomp1 libgraphite2-3 libgsm1 libharfbuzz0b libice6 libiec61883-0 libjack-jackd2-0 libllvm3.5 libmodplug1 libmp3lame0 libnuma1 libogg0
libopenal-data libopenal1 libopencv-core2.4 libopencv-imgproc2.4 libopenjp2-7 libopus0 libpgm-5.1-0 libpostproc54 libpulse0 libraw1394-11 librubberband2
libsamplerate0 libsdl2-2.0-0 libshine3 libsm6 libsnappy1 libsndfile1 libsodium13 libsoxr0 libspeex1 libssh-gcrypt-4 libswresample2 libswscale4 libtbb2
libtheora0 libtwolame0 libva-drm1 libva-x11-1 libva1 libvdpau1 libvorbis0a libvorbisenc2 libwavpack1 libwayland-client0 libwayland-cursor0
libwayland-egl1-mesa libwayland-server0 libwebp5 libx11-xcb1 libx264-142 libx265-87 libxcb-dri2-0 libxcb-dri3-0 libxcb-glx0 libxcb-present0 libxcb-render0
libxcb-shape0 libxcb-shm0 libxcb-sync1 libxcb-xfixes0 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxinerama1 libxkbcommon0 libxrandr2 libxrender1
libxshmfence1 libxss1 libxtst6 libxv1 libxvidcore4 libxxf86vm1 libzmq3 libzvbi-common libzvbi0 x11-common xkb-data
0 upgraded, 120 newly installed, 0 to remove and 1 not upgraded.
Need to get 47.6 MB of archives.
After this operation, 141 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
...
Get:13 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libavutil55 amd64 7:3.2.5-1~bpo8+1 [211 kB]
...
Get:24 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libswresample2 amd64 7:3.2.5-1~bpo8+1 [91.3 kB]
...
Get:34 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libx265-87 amd64 2.0-4~bpo8+1 [992 kB]
...
Get:38 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libavcodec57 amd64 7:3.2.5-1~bpo8+1 [4,341 kB]
Get:39 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libchromaprint1 amd64 1.3.2-2~bpo8+1 [35.8 kB]
...
Get:110 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libavformat57 amd64 7:3.2.5-1~bpo8+1 [931 kB]
Get:111 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libavresample3 amd64 7:3.2.5-1~bpo8+1 [88.9 kB]
...
Get:113 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libpostproc54 amd64 7:3.2.5-1~bpo8+1 [89.4 kB]
Get:114 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libswscale4 amd64 7:3.2.5-1~bpo8+1 [184 kB]
Get:115 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libavfilter6 amd64 7:3.2.5-1~bpo8+1 [791 kB]
...
Get:119 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main libavdevice57 amd64 7:3.2.5-1~bpo8+1 [109 kB]
Get:120 https://debian.inf.tu-dresden.de/debian/ jessie-backports/main ffmpeg amd64 7:3.2.5-1~bpo8+1 [1,531 kB]
@MichaIng
Hmm, seems to be handles different in cases. On my VirtualBox Jessie image, the dependencies from jessie-backport got pullled automatically even withou -t jessie-backports
Confirmed on my XU4 👍
https://manpages.debian.org/stretch/apt/apt_preferences.5.en.html
cat << _EOF_ > /etc/apt/preferences.d/ffmpeg
Package: *
Pin: release a=jessie-backports
Pin-Priority: 600
_EOF_
root@DietPi:~# apt-get update
root@DietPi:~# apt-cache policy ffmpeg
ffmpeg:
Installed: (none)
Candidate: 7:3.2.5-1~bpo8+1
Version table:
7:3.4-3~bpo8 0
500 http://fuzon.co.uk/meveric/ jessie/backports armhf Packages
7:3.2.5-1~bpo8+1 0
600 http://ftp.debian.org/debian/ jessie-backports/main armhf Packages
🈯️
I'll apply the fix for XU4 Jessie for now. If we see this error on other devices/distros, we'll need to investigate a wider fix.
Tested on XU4, completed.
@Fourdee
Package: ffmpeg
Pin: release a=jessie-backports
Pin-Priority: 600
Does this also ensure that dependencies are pulled from backports? I remember that for pulling redis-server from stretch-backports on RPi, I needed to add it's dependency redis-tools also to the preferences package list.
@MichaIng
Does this also ensure that dependencies are pulled from backports? I remember that for pulling redis-server from stretch-backports on RPi, I needed to add it's dependency redis-tools also to the preferences package list.
Yep for redis-server, unsure for deps, 600 is a higher priority:
root@DietPi:~# apt-cache policy redis-server
redis-server:
Installed: (none)
Candidate: 3:3.2.8-2~bpo8+1
Version table:
3:3.2.8-2~bpo8+1 0
600 http://ftp.debian.org/debian/ jessie-backports/main armhf Packages
2:2.8.17-1+deb8u5 0
500 http://ftp.debian.org/debian/ jessie/main armhf Packages
500 http://security.debian.org/ jessie/updates/main armhf Packages
Before hand:
root@DietPi:~# apt-cache policy redis-server
redis-server:
Installed: (none)
Candidate: 2:2.8.17-1+deb8u5
Version table:
3:3.2.8-2~bpo8+1 0
100 http://ftp.debian.org/debian/ jessie-backports/main armhf Packages
2:2.8.17-1+deb8u5 0
500 http://ftp.debian.org/debian/ jessie/main armhf Packages
500 http://security.debian.org/ jessie/updates/main armhf Packages
So, to be consistent with default system-wide settings, its probably best I lower the Meveric repo, instead of increasing the backports.
🈯️ Tested:
root@DietPi:~# apt-cache policy ffmpeg
ffmpeg:
Installed: (none)
Candidate: 7:3.2.5-1~bpo8+1
Version table:
7:3.4-3~bpo8 0
99 http://fuzon.co.uk/meveric/ jessie/backports armhf Packages
7:3.2.5-1~bpo8+1 0
100 http://ftp.debian.org/debian/ jessie-backports/main armhf Packages
@Fourdee
Ah, meveric repo explains different behaviours.
But I am wondering, as now I find all dependencies including right versions on meveric: http://fuzon.co.uk/meveric/dists/jessie/backports/binary-armhf/Packages
Maybe this was just a temporary issue during updating ffmpeg and all related dependency packages on repo?
@MichaIng
Maybe this was just a temporary issue during updating ffmpeg and all related dependency packages on repo?
Appears that way, hopefully. We'll soon find out and be able to resolve if other software titles are effected by this change.