pystardust / ani-cli

A cli tool to browse and play anime
GNU General Public License v3.0
7.37k stars 529 forks source link

[Fedora COPR Repo] Updating ani-cli requires ffmpeg even when ffmpeg-free is installed, resulting in conflicts #1321

Closed SmollClover closed 2 weeks ago

SmollClover commented 2 months ago

Metadata (please complete the following information) Version: 4.8.0 OS: Nobara Linux 39 (KDE Plasma) x86_64 Shell: fish Anime: N/A

Describe the bug When ffmpeg-free is installed, which is the default on Nobara, it is impossible to update ani-cli due to the package in the COPR Repo requiring ffmpeg which conflicts with ffmpeg-free.

Steps To Reproduce

  1. Use Nobara 39 or a Fedora system with ffmpeg-free installed.
  2. Enable the COPR Repo using sudo dnf copr enable derisis13/ani-cli (if not already enabled)
  3. Try installing ani-cli or updating an already installed version using sudo dnf update --refresh

Expected behavior It should recognize ffmpeg-free as a suitable ffmpeg replacement and not try installing the normal ffmpeg package.

Additional context

Error: 
 Problem: package ani-cli-4.8.5-1.fc39.noarch from copr:copr.fedorainfracloud.org:derisis13:ani-cli requires ffmpeg, but none of the providers can be installed
  - package ffmpeg-6.0-16.fc39.x86_64 from rpmfusion-free conflicts with ffmpeg-free provided by ffmpeg-free-6.1.1-3.fc39.x86_64 from @System
  - package ffmpeg-6.1.1-5.fc39.x86_64 from rpmfusion-free-updates conflicts with ffmpeg-free provided by ffmpeg-free-6.1.1-3.fc39.x86_64 from @System
  - cannot install the best update candidate for package ffmpeg-free-6.1.1-3.fc39.x86_64
  - cannot install the best update candidate for package ani-cli-4.8.0.git.1.580830e6-1.fc39.noarch
port19x commented 2 months ago

Does ffmpeg-free "provide" ffmpeg? I'm unfamiliar with fedoras packaging format, but on arch linux, a metadata field is available for packages to, in effect, pretend to be sth else / denote that they fullfill a given dependency. I'd urge you to raise this as an issue with the ffmpeg-free package maintainer, as ani-cli will hardly be the only affected package

SmollClover commented 2 months ago

Based on the information given by the Fedora Packages Website, the package itself "provides" ffmpeg-free and ffmpeg-free(x86-64) despite being mostly a drop-in replacement apart from some missing codecs.

I'll look into raising an issue with the package maintainers to see if there would be a way to resolve such a conflict.

Derisis13 commented 2 months ago

Based on the information given by the Fedora Packages Website, the package itself "provides" ffmpeg-free and ffmpeg-free(x86-64) despite being mostly a drop-in replacement apart from some missing codecs.

I'll look into raising an issue with the package maintainers to see if there would be a way to resolve such a conflict.

Hi, I'm the package maintainer. I did not know of an ffmpeg-free package, maybe it's recent? Anyway I'll test ani-cli to see if it works with it or not, and see if I can make it depend on either. Just give me a few days, in the meantime you can always try dnf swap ffmpeg-free ffmpeg...

SmollClover commented 2 months ago

Whoops, I seem to have accidentally closed the Issue yesterday without realizing it.

Hi, I'm the package maintainer. I did not know of an ffmpeg-free package, maybe it's recent?

As far as I'm aware, it's been the standard for Nobara for some time now.

Just give me a few days, in the meantime you can always try dnf swap ffmpeg-free ffmpeg

I can give it a try later when I'm home again, but I do think it won't work for me since some of my installed packages do depend on ffmpeg-free.

Derisis13 commented 2 months ago

so it seems ffmpeg-free covers most cases, but not the rare occurances of HEVC. It's possible to depend on either, but the full version is preferred, as mpv already adds the rpmfusion dependency. I still need to test my hipothesis, but I'll do something about this issue

SmollClover commented 2 months ago

so it seems ffmpeg-free covers most cases, but not the rare occurances of HEVC. It's possible to depend on either, but the full version is preferred, as mpv already adds the rpmfusion dependency. I still need to test my hipothesis, but I'll do something about this issue

Well, I was using ani-cli via the COPR Repo before it had ffmpeg as a dependency with just ffmpeg-free installed. I didn't encounter any errors during the time I was using it. Maybe I just never used it in a specific way that would encounter an error due to a missing codec? But I'm unsure of that.

Just give me a few days, in the meantime you can always try dnf swap ffmpeg-free ffmpeg

I can give it a try later when I'm home again, but I do think it won't work for me since some of my installed packages do depend on ffmpeg-free.

I looked into swapping ffmpeg-free with the standard ffmpeg package, but due to Nobara basically having switched to ffmpeg-free as a default, I am unable to due to many package conflicts that would just take ages to look into and resolve. So in my case swapping the package isn't an option.

Derisis13 commented 2 months ago

so it seems ffmpeg-free covers most cases, but not the rare occurances of HEVC. It's possible to depend on either, but the full version is preferred, as mpv already adds the rpmfusion dependency. I still need to test my hipothesis, but I'll do something about this issue.

CoolnsX commented 1 month ago

ani-cli links are definately h264 in mp4 container and same with hls ones. so we can go with ffmpeg-free. I haven't tried this on fedora.

Derisis13 commented 2 weeks ago

Currently the copr package depends on either, and so far there were no complaints on that end. If there ever is, I'll revisit the problem. Until then, case closed.