fedora-silverblue / issue-tracker

Fedora Silverblue issue tracker
https://fedoraproject.org/atomic-desktops/silverblue/
123 stars 3 forks source link

ffmpeg-libs fail to install #461

Closed eightfiftytwo closed 1 year ago

eightfiftytwo commented 1 year ago

Describe the bug I can't install ffmpeg-libs on Fedora Silverblue 38.

❯ rpm-ostree install ffmpeg
Checking out tree 6a288fa... done
Enabled rpm-md repositories: fedora-cisco-openh264 fedora-modular updates-modular updates fedora rpmfusion-free-updates rpmfusion-free rpmfusion-nonfree-updates rpmfusion-nonfree updates-archive
Importing rpm-md... done
rpm-md repo 'fedora-cisco-openh264' (cached); generated: 2023-03-14T10:56:46Z solvables: 4
rpm-md repo 'fedora-modular' (cached); generated: 2023-04-14T09:25:02Z solvables: 1082
rpm-md repo 'updates-modular' (cached); generated: 2018-02-20T19:18:14Z solvables: 0
rpm-md repo 'updates' (cached); generated: 2023-04-23T01:01:40Z solvables: 4841
rpm-md repo 'fedora' (cached); generated: 2023-04-14T09:32:40Z solvables: 69222
rpm-md repo 'rpmfusion-free-updates' (cached); generated: 2023-04-20T14:12:32Z solvables: 0
rpm-md repo 'rpmfusion-free' (cached); generated: 2023-04-14T11:37:11Z solvables: 468
rpm-md repo 'rpmfusion-nonfree-updates' (cached); generated: 2023-04-20T14:30:08Z solvables: 0
rpm-md repo 'rpmfusion-nonfree' (cached); generated: 2023-04-14T12:02:51Z solvables: 235
rpm-md repo 'updates-archive' (cached); generated: 2023-04-23T01:10:54Z solvables: 3736
Resolving dependencies... done
error: Could not depsolve transaction; 1 problem detected:
 Problem: package ffmpeg-libs-6.0-6.fc38.x86_64 conflicts with libavcodec-free provided by libavcodec-free-6.0-4.fc38.x86_64
  - package ffmpeg-6.0-6.fc38.x86_64 requires ffmpeg-libs(x86-64) = 6.0-6.fc38, but none of the providers can be installed
  - conflicting requests

It seems like the problem is that libavcodec-free and libavfilter-free etc. has been included in the 38 base image when they were not in the 37 base image. This is causing all kinds of problems from rpm firefox not being able to play h264 videos, to ffmpegthumbnailer not generating thumbnails (upstream issue), and failing upgrades to 38. And people are resorting to hacky solutions. Also it seems like this problem already existed on Kinoite 37.

To Reproduce Please describe the steps needed to reproduce the bug:

  1. Try to install ffmpeg-libs on Fedora Silverblue 38 or Kinoite 37.

Expected behavior ffmpeg-libs successfully installed

Screenshots If applicable, add screenshots to help explain your problem.

OS version:

● fedora:fedora/38/x86_64/silverblue
                  Version: 38.20230424.0 (2023-04-24T01:59:45Z)
               BaseCommit: 6a288fa88c672a87dca40c44a9b4449e22e1c87c1acb4002f98d0c8b44e40885

Additional context Add any other context about the problem here.

fastrizwaan commented 1 year ago

Thanks for the hacky solution: https://discussion.fedoraproject.org/t/unable-to-install-ffmpeg-libs-on-fedora-38-silverblue-beta/79632/8

shoop commented 1 year ago

hi @travier , could you elaborate on why this is now "closed as completed" -- is the posted workaround now the official one? Thanks!

travier commented 1 year ago

ffmpeg-libs is a package from RPM Fusion and is thus not part of Silverblue. There is no "official" way to modify the base image. As far as I understand, there is nothing for us (Silverblue) to do here.

juhp commented 1 year ago

Probably worth trying ffmpeg-free too, which is part of Fedora now

eightfiftytwo commented 1 year ago

Thank you for your response! I'm not asking for ffmpeg-libs to be added to the base image, but to revert to when libavcodec-free libavfilter-free libavformat-free libavutil-free libpostproc-free libswresample-free libswscale-free are not included. I feel like it's against Silverblue's ethos of avoiding system entropy if users are forced to rpm-ostree override remove 7 packages to get basic functionality.

fastrizwaan commented 1 year ago

I need ffmpegthumbnailer for Nautilus (which should be part of the base image), which depends on ffmpeg-libs from RPMFusion. Video thumbnails are quite useful.

travier commented 1 year ago

I'm not asking for ffmpeg-libs to be added to the base image, but to revert to when libavcodec-free libavfilter-free libavformat-free libavutil-free libpostproc-free libswresample-free libswscale-free are not included. I feel like it's against Silverblue's ethos of avoiding system entropy if users are forced to rpm-ostree override remove 7 packages to get basic functionality.

As far as I know, we're including those packages in the image to increase the number of file format that we support by default. If you want to replace those versions by the one from RPM Fusion to get even more codec support then you have to remove them as done in the command above.

I need ffmpegthumbnailer for Nautilus (which should be part of the base image), which depends on ffmpeg-libs from RPMFusion. Video thumbnails are quite useful.

OK, so this is not the same request. If you want ffmpegthumbnailer to be added to Silverblue then:

Please make another issue to track that.

whs-dot-hk commented 4 months ago

This is the command for f40

rpm-ostree override remove \
  ffmpeg-free \
  libavcodec-free \
  libavdevice-free \
  libavfilter-free \
  libavformat-free \
  libavutil-free \
  libpostproc-free \
  libswresample-free \
  libswscale-free \
  --install ffmpeg