[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: APT Pinning Broken?



Hello Andreas, thanks for the reply!

The problem with adding mpv's dependencies to list.pref.chroot​ is that the same error will occur again for the dependencies of those dependencies.

 libasound2t64 : Depends: libasound2-data (>= 1.2.12-1) but 1.2.8-1 is to be installed
 libavcodec61 : Depends: libcodec2-1.2 (>= 1.2.0) but it is not installable
                Depends: libdav1d7 (>= 1.1.0) but it is not installable
                Depends: libglib2.0-0t64 (>= 2.12.0) but it is not installable
                Depends: libjxl0.9 (>= 0.8.0) but it is not installable
                Depends: librav1e0.7 (>= 0.5.1) but it is not installable
                Depends: libsnappy1v5 (>= 1.2.1) but 1.1.9-3 is to be installed
                Depends: libsvtav1enc2 (>= 2.1.0+dfsg) but it is not installable
                Depends: libvpl2 (>= 2023.3.0) but 2023.1.1-1 is to be installed
                Depends: libvpx9 (>= 1.12.0) but it is not installable
                Depends: libwebp7 (>= 1.4.0) but 1.2.4-0.2+deb12u1 is to be installed
                Depends: libwebpmux3 (>= 1.4.0) but 1.2.4-0.2+deb12u1 is to be installed
                Depends: libx264-164 (>= 2:0.164.3108+git31e19f9)
                ............

I tracked down every single dependency (and their dependencies) with this:

apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances mpv | grep "^\w" | sort -u

Then I added them to list.pref.chroot but the error always comes back for something else.
Package: mpv libasound2t64 libavcodec61 libavdevice61 libavfilter10 libavformat61 .......

I found a dirty fix with a live.chroot.hook​ that installs mpv from unstable and includes the correct dependencies from unstable too:
apt-get install -y mpv/unstable

But that's not a solution. I would really like to understand why APT Pinning does not or cannot include the dependencies of a package from the release it is pinned to. Doesn't even make any sense tbh.
On Wednesday, July 31st, 2024 at 8:56 PM, Andreas Heinlein <aheinlein@gmx.com> wrote:
Hello,

you will have to manually pin the dependencies as well. So it should read:

Package: mpv libasound2t64 libavcodec61 libavdevice61 libavfilter10 libavformat61
Pin: release n=sid
Pin-Priority: 600

That should do the trick.

Bye
Andreas


Am 31. Juli 2024 21:06:22 MESZ schrieb "maria.shrivinski" <maria.shrivinski@proton.me>:
Hello, I would like to build with bookworm as the distribution while installing the package mpv and ffmpeg from sid (unstable).

According to the Debian Live Manual this should do the trick:

config/archives/live.list.chroot
deb http://deb.debian.org/debian sid main

config/archives/live.pref.chroot
Package: mpv
Pin: release n=sid
Pin-Priority: 600

Package: *
Pin: release n=sid
Pin-Priority: 1

This gives a low version error because live-build tries to install mpv's dependencies from bookworm release, which has default Priority 500, while sid now only has Priority 1 for anything but mpv.

The following packages have unmet dependencies:
 mpv : Depends: libarchive13t64 (>= 3.4.0) but it is not going to be installed
       Depends: libasound2t64 (>= 1.0.27)
       Depends: libavcodec61 (>= 7:7.0)
       Depends: libavdevice61 (>= 7:7.0) but it is not going to be installed
       Depends: libavfilter10 (>= 7:7.0)
       Depends: libavformat61 (>= 7:7.0)
.......

If I set the sid Priority higher or equal to bookworm's, all packages are installed from sid because of higher version numbers.

Is there a way to only install mpv including its dependencies from sid, while all other packages are still installed from bookworm release?

Thank you so much and have a nice day!


Reply to: