
On Wed, 12 Mar 2025 19:28:01 +0900, Masaru Nomiya <nomiya@lake.dti.ne.jp> wrote:
Hello, Sorry for late reply.
In the Message; Subject : Re: [oS-en] YaST2 update conflict Message-ID : <6f8d7044-02ca-4ce1-9068-e10742d1d29e@accesscomm.ca> Date & Time: Tue, 11 Mar 2025 16:44:56 -0600 [DG] == Darryl Gregorash <raven@accesscomm.ca> has written:
DG> On 2025-03-11 00:25, Masaru Nomiya wrote: [...] MN> > If you are not using Tumbleweed, you don't need to do anything, just MN> > leave it to the installer.
DG> I'm runninng 15.6, and actually the problem exists there also.
After reading your email and Carlos's email, I think I understand why you are confused.
I think the maintainer of the package you are trying to use created it in a way that all openSUSE users can use it.
Naturally, since the environment is different for each user's distro, I thought that the following script could control those differences in environment.
%if 0%{?suse_version} < 1600 Requires: python312-yt-dlp = %version %else Requires: python3-yt-dlp = %version %endif However, my hypothesis is that this script is wrong. In other words, I think that the maintainer created the script assuming that, except for Tumbleweed, the value of $ rpm --eval %{suse_version} would be less than 1600, but in reality a large value is returned and the installer works in a way that is different from the maintainer's intention.
If you run $ rpm --eval %{suse_version} in your environment, it should return a value greater than 1600, right?
On a Leap 15.6 Live system: $ rpm --eval '%{suse_version}' 1500 $ cat /etc/os-release NAME="openSUSE Leap" VERSION="15.6" ID="opensuse-leap" ID_LIKE="suse opensuse" VERSION_ID="15.6" PRETTY_NAME="openSUSE Leap 15.6" ANSI_COLOR="0;32" CPE_NAME="cpe:/o:opensuse:leap:15.6" BUG_REPORT_URL="https://bugs.opensuse.org" HOME_URL="https://www.opensuse.org/" DOCUMENTATION_URL="https://en.opensuse.org/Portal:Leap" LOGO="distributor-logo-Leap"
I asked Google, but I couldn't find the value of suse_version after Leap 15.
Incidentally, this is the current Tumbleweed;
$ rpm --eval %{suse_version} 1699
My Tumbleweed system reports the same.
As you can see from the above, the maintainer believes that if you use the package, python312-yt-dlp = %version will be installed on Leap 15.6, and that Tumbleweed users will install python3XX-yt-dlp on their own choice.
On Leap 15.6, with Packman: The value of %{suse_version} does not look wrong. The conditional logic above for it does not look wrong. But the packaging is incorrect still. yt-dlp requires "python3-yt-dlp = 2025.02.19" python312-yt-dlp provides "python312-yt-dlp = 2025.02.19-150600.3.pm.1" $ zypper if --provides --requires --recommends --suggests --conflicts --obsoletes --supplements \ > yt-dlp python3\*-yt-dlp Loading repository data... Reading installed packages... Information for package yt-dlp: ------------------------------- Repository : packman Name : yt-dlp Version : 2025.02.19-150600.3.pm.1 Arch : noarch Vendor : http://packman.links2linux.de Installed Size : 270.9 KiB Installed : Yes Status : up-to-date Source package : yt-dlp-2025.02.19-150600.3.pm.1.src Upstream URL : https://github.com/yt-dlp/yt-dlp Summary : Enhanced fork of youtube-dl, a video site downloader for offline watching Description : yt-dlp is a command-line program to retrieve videos from YouTube.com and other video sites for later watching. Provides : [4] yt-dlp = 2025.02.19-150600.3.pm.1 yt-dlp-bash-completion = 2025.02.19-150600.3.pm.1 yt-dlp-fish-completion = 2025.02.19-150600.3.pm.1 yt-dlp-zsh-completion = 2025.02.19-150600.3.pm.1 Requires : [2] /usr/bin/python3.12 python3-yt-dlp = 2025.02.19 Conflicts : --- Obsoletes : [3] yt-dlp-bash-completion < 2025.02.19-150600.3.pm.1 yt-dlp-fish-completion < 2025.02.19-150600.3.pm.1 yt-dlp-zsh-completion < 2025.02.19-150600.3.pm.1 Recommends : --- Suggests : --- Supplements : --- Information for package python312-yt-dlp: ----------------------------------------- Repository : packman Name : python312-yt-dlp Version : 2025.02.19-150600.3.pm.1 Arch : noarch Vendor : http://packman.links2linux.de Installed Size : 30.1 MiB Installed : Yes Status : up-to-date Source package : yt-dlp-2025.02.19-150600.3.pm.1.src Upstream URL : https://github.com/yt-dlp/yt-dlp Summary : yt-dlp Python library Description : The direct Python interface into yt-dlp. Provides : python312-yt-dlp = 2025.02.19-150600.3.pm.1 Requires : [2] ffmpeg python(abi) = 3.12 Conflicts : --- Obsoletes : --- Recommends : --- Suggests : --- Supplements : --- Information for package python311-yt-dlp: ----------------------------------------- Repository : Update repository of openSUSE Backports Name : python311-yt-dlp Version : 2024.08.01-bp156.2.3.1 Arch : noarch Vendor : openSUSE Installed Size : 22.8 MiB Installed : No Status : not installed Source package : yt-dlp-2024.08.01-bp156.2.3.1.src Upstream URL : https://github.com/yt-dlp/yt-dlp Summary : yt-dlp Python library Description : The direct Python interface into yt-dlp. Provides : python311-yt-dlp = 2024.08.01-bp156.2.3.1 Requires : [2] ffmpeg python(abi) = 3.11 Conflicts : --- Obsoletes : --- Recommends : --- Suggests : [5] python311-Brotli python311-certifi python311-mutagen python311-pycryptodomex python311-websockets Supplements : --- -- Robert Webb