16 problems with packages relating to "gstreamer"???

Folks:

Tried to run a zypper dup -l a few minutes ago and it showed something like “286 packages to upgrade” but before it would run the upgrade it found “16 problems” seemingly with dependencies and “gstreamer” where the two “solutions” offered were either to drop back to the previous “5.4x” version of it, or “keep the obsolete” but numerically newer “5.6x” version . . . ???

I tried keeping the obsolete option but it seemed like it was going to ask me for all 16 of the “problems” . . . I canceled out of it.

Is there a “correct” answer, or, best to wait a day or two until the zypper gets these dependency questions answered, before asking me what I want to do??? :open_mouth:

I think it is an issue with packman, not sure if they have dropped those packages entirely or just ‘forgotten’.
I’ve let them switch to the opensuse version and have not had an issue so far.

@swannema:

OK, thanks for the reply on it . . . but what does that mean, “I’ve let them switch to the opensuse version”??? Would that be the seemingly “older” package, dropping back so to speak, rather than “keep obsolete, but newer package” choice??

So, that would be “solution #1”???

I’ve restarted out of TW, so I can’t just check it to see if the “obsolete” package is showing a “packman repo” address or which . . . ???

[edit: Never mind on the question, back in TW and I see that it is #1 that you are referring to . . . switching to “opensuse” . . . . I’ll give it a fly.]

You got it right. If packman gets it act together you can always switch back, it will be done with a zypper dup as long as the packman repo has a higher priority than the opensuse repo.

@swannema:

Cool. Yep, the zypper dup -l seemed to run cleanly after I answered all 16 of the questions . . . . So I guess we’ll see how long it goes before the next set of zypper questions comes down the pike . . . .

I ran into this today.

There were 16 packages that were switched from “packman” to “opensuse” repos. I did not hit any problems, but that’s because my configuration allows vendor-change for “zypper dup”.

I will make a wild guess on what might be happening.

Some of the packages have restrictions due to licenses or patents. And the packman packages provide unrestricted versions of those.

My wild guess: some of those restriction may have expired, so that the standard Tumbleweed repos now have unrestricted versions. And thus there is no need for packman to provide those.

Again, this is only a wild guess.

@nrickert:

Wild guesses are often more amusing than the non-wild type of guess . . . . lol!

The guess is not too wild. This happened earlier with the expiring of the restrictions on (a guess) mp3 years ago.

@hcvv:

Ah, yeah, a “guess” based upon previous historical evidence is less than “wild” . . . might be “slightly wild” . . . ???

If the switch was owing to restrictions no longer applying, why was that information not include in the snapshot announcement? :question:

In the announcement for 20220122 I read:

==== gstreamer-plugins-bad ====
Subpackages: gstreamer-plugins-bad-lang gstreamer-transcoder libgstadaptivedemux-1_0-0 libgstbadaudio-1_0-0 libgstbasecamerabinsrc-1_0-0 libgstcodecparsers-1_0-0 libgstcodecs-1_0-0 libgstisoff-1_0-0 libgstmpegts-1_0-0 libgstphotography-1_0-0 libgstplayer-1_0-0 libgstsctp-1_0-0 libgsttranscoder-1_0-0 libgsturidownloader-1_0-0 libgstvulkan-1_0-0 libgstwayland-1_0-0 libgstwebrtc-1_0-0 typelib-1_0-GstTranscoder-1_0

  • Drop conditionals for fdk_aac, explicitly add fdk-aac-free-devel
    BuildRequires, and build it for the main package.

and apparently those are the packages we are writing about here.

I never mind packages switching between openSUSE and packman. Changed default:

**erlangen:~ #** grep -v ^\# /etc/zypp/zypp.conf |grep -v ^\$ 
[main] 
solver.onlyRequires = true 
**solver.dupAllowVendorChange = true **
multiversion = provides:multiversion(kernel) 
multiversion.kernels = latest,latest-1,running 
**erlangen:~ #**

However users may want to delete unneeded packages:

**erlangen:~ #** zypper packages --unneeded | grep ^i | cut -d '|' -f 3 |xargs zypper remove  
Reading installed packages... 
Resolving package dependencies... 

The following 20 packages are going to be REMOVED:
  libKF5Bookmarks5-lang libKF5Codecs5-lang libKF5Completion5-lang libKF5ConfigCore5-lang libKF5DBusAddons5-lang libKF5DNSSD5-lang libKF5GlobalAccel5-lang libKF5Holidays5-lang libKF5ItemViews5-lang libKF5JobWidgets5-lang libKF5Notifications5-lang libKF5Solid5-lang libKF5SonnetCore5-lang libKF5SyntaxHighlighting5-lang libKF5WidgetsAddons5-lang libKF5WindowSystem5-lang libgdbm_compat4-32bit ntfs-3g pam-doc python38-systemd 

20 packages to remove. 
After the operation, 6.9 MiB will be freed. 
**Continue? [y/n/v/...? shows all options] (y): **n 
**erlangen:~ #** zypper packages --unneeded | grep ^i | cut -d '|' -f 3 |xargs zypper remove --clean-deps  
Reading installed packages... 
Resolving package dependencies... 

The following 20 packages are going to be REMOVED:
  libKF5Bookmarks5-lang libKF5Codecs5-lang libKF5Completion5-lang libKF5ConfigCore5-lang libKF5DBusAddons5-lang libKF5DNSSD5-lang libKF5GlobalAccel5-lang libKF5Holidays5-lang libKF5ItemViews5-lang libKF5JobWidgets5-lang libKF5Notifications5-lang libKF5Solid5-lang libKF5SonnetCore5-lang libKF5SyntaxHighlighting5-lang libKF5WidgetsAddons5-lang libKF5WindowSystem5-lang libgdbm_compat4-32bit ntfs-3g pam-doc python38-systemd 

20 packages to remove. 
After the operation, 6.9 MiB will be freed. 
**Continue? [y/n/v/...? shows all options] (y): **
( 1/20) Removing libKF5Bookmarks5-lang-5.90.0-1.1.noarch ...

(20/20) Removing python38-systemd-234-5.13.x86_64 ...
There are running programs which still use files and libraries deleted or updated by recent upgrades. They should be restarted to benefit from the latest updates. Run 'zypper ps -s' to list these programs. 
  
**erlangen:~ #** zypper packages --unneeded  
Loading repository data... 
Reading installed packages... 
No packages found. 
**erlangen:~ #**

[QUOTE=karlmistelberger;3102126]I never mind packages switching between openSUSE and packman. Changed default:

Yes, I make a similar change here. But I do give the packman repo a better priority (lower priority number) so that it will be preferred.

However users may want to delete unneeded packages:

Best to be careful with that. Unneeded does not imply unwanted.

There is a discussion about this issue at the packman mailing list, seems like a package building issue due to differences with fdk-aac-free and non-free (at least this is my understanding).

That doesn’t make sense. Packman is built with some features that are disabled in official builds. If moving packages back to the official ones don’t cause issues, it means you don’t need packman at all. For those who need codecs from packman (Firefox users) then switching repos when eventually the official repos bump their version, will notice that functionality is lost.

Nope. This thread is about “zypper dup”. Default settings can result in annoying questions.

Repo packman has higher priority:

**erlangen:~ #** zypper lr -uEP            
#  | Alias                            | Name                            | Enabled | GPG Check | Refresh | Priority | URI 
---+----------------------------------+---------------------------------+---------+-----------+---------+----------+-------------------------------------------------------------------------------- 
 5 | Packman                          | Packman                         | Yes     | (r ) Yes  | Yes     |   90     | http://ftp.fau.de/packman/suse/openSUSE_Tumbleweed/ 
 8 | download.opensuse.org-non-oss    | Haupt-Repository (NON-OSS)      | Yes     | (r ) Yes  | Yes     |   99     | http://download.opensuse.org/tumbleweed/repo/non-oss/ 
 9 | download.opensuse.org-oss        | Haupt-Repository (OSS)          | Yes     | (r ) Yes  | Yes     |   99     | http://download.opensuse.org/tumbleweed/repo/oss/ 
10 | download.opensuse.org-tumbleweed | Hauptaktualisierungs-Repository | Yes     | (r ) Yes  | Yes     |   99     | http://download.opensuse.org/update/tumbleweed/ 
**erlangen:~ #**

Frequent duping since August 2016 has shown the following works best:

**erlangen:~ #** **zypper dist-upgrade --allow-vendor-change --allow-downgrade**  
Loading repository data... 
Reading installed packages... 
Warning: You are about to do a distribution upgrade with all enabled repositories. Make sure these repositories are compatible before you continue. See 'man zypper' for more information about this command. 
Computing distribution upgrade... 

The following 13 packages are going to be upgraded:
  fdkaac ffmpeg-4 jalbum libavcodec58_134 libavdevice58_13 libavfilter7_110 libavformat58_76 libavresample4_0 libavutil56_70 libgstphotography-1_0-0 libpostproc55_9 libswresample3_9 libswscale5_9 

The following package is going to be downgraded:
  libfdk-aac2 

The following 2 packages are going to change vendor:
  libfdk-aac2              http://packman.links2linux.de -> openSUSE 
  libgstphotography-1_0-0  openSUSE -> http://packman.links2linux.de 

13 packages to upgrade, 1 to downgrade, 2  to change vendor. 
Overall download size: 153.0 MiB. Already cached: 0 B. After the operation, 629.0 KiB will be freed. 
**Continue? [y/n/v/...? shows all options] (y): **
Retrieving package libgstphotography-1_0-0-1.18.5-7.1.x86_64 ...
...
Checking for file conflicts: ...
...
[FONT=monospace](14/14) Installing: fdkaac-1.0.2-1.15.x86_64 ...
 There are running programs which still use files and libraries deleted or updated by recent upgrades. They should be restarted to benefit from the latest updates. Run 'zypper ps -s' to list these programs. 
  
**erlangen:~ #**[/FONT] 

One of us doesn’t understand the problem. Possibly both of us.

Take libgstphotography-1_0-0 for instance. Previously you moved from packman to OSS. Why bother going back to packman? If it where to happen with pipewire, moving it back to OSS you make you prevent aptx from working. This is not how repos are meant to be used. zypper haven’t learned these packages are less functional in OSS, that’s why it needs to pose annoying questions.

Actually, it does make sense.

Packman is built with some features that are disabled in official builds. If moving packages back to the official ones don’t cause issues, it means you don’t need packman at all.

Agreed. However, allowing vendor change doesn’t switch the packages back and forth arbitrarily. If the packman repo has a higher priority (lower priority number), then “zypper” will still prefer the packman package. It will only switch away from packman to resolve a conflict (usually a dependency issue).

I occasionally see a package switch to opensuse, and then switch back at the next update. Presumably there was a conflict, and the next packman build fixed it, so the package could switch back. Yes, I might have lost some functionality for that brief period.

That’ a concise and precise comment on a subtle issue!

Hi
Bottom line is you only need gstreamer-plugins-bad-orig-addon and gstreamer-plugins-ugly-orig-addon from packman, everything else from openSUSE. No changing repository priorities, no zypper dupping (vendor stickiness will take control).