What's the difference between "YaST Software" and "YaST Software Management"?

/usr/share/applications/org.opensuse.yast.Packager.desktop

/usr/share/applications/YaST2/YaST2-org.opensuse.yast.SWSingle.desktop

Both show

  1. Screenshot_20231001_030423

so I’m confused by the duplication.

Probably just owned by different packages. They do the same thing, as evidenced by the output.

You can find which package they each come from with:

rpm -q --whatprovides <filename>

Replacing <filename> with the name of the file. I don’t have the latter installed on my TW system, but the first comes from:

$ rpm -q --whatprovides /usr/share/applications/org.opensuse.yast.Packager.desktop
yast2-packager-4.6.2-1.1.x86_64
1 Like

@rokejulianlockhart one uses the mime type rpm to install if you right click on it, the other is the software the tool for multiple packages and any maintenance/searching/installing you wish to do…

@malcolmlewis, can you elaborate, maybe with some screenshots of what you refer to?

@rokejulianlockhart On GNOME I see…

cat .config/mimeapps.list | grep x-rpm

application/x-rpm=org.gnome.FileRoller.desktop;

@hendersj,

  1. RokeJulianLockhart@s1e8h4:~> rpm -q --whatprovides '/usr/share/applications/YaST2/YaST2-org.opensuse.yast.SWSingle.desktop'
    error: file /usr/share/applications/YaST2/YaST2-org.opensuse.yast.SWSingle.desktop: No such file or directory
    RokeJulianLockhart@s1e8h4:~> rpm -q --whatprovides '/usr/share/applications/YaST2/YaST2-org.opensuse.yast.SWSingle'
    error: file /usr/share/applications/YaST2/YaST2-org.opensuse.yast.SWSingle: No such file or directory
    
  2. RokeJulianLockhart@s1e8h4:~> rpm -q --whatprovides '/usr/share/applications/YaST2/org.opensuse.yast.Packager.desktop'
    error: file /usr/share/applications/YaST2/org.opensuse.yast.Packager.desktop: No such file or directory
    RokeJulianLockhart@s1e8h4:~> rpm -q --whatprovides '/usr/share/applications/YaST2/org.opensuse.yast.Packager'
    error: file /usr/share/applications/YaST2/org.opensuse.yast.Packager: No such file or directory
    

I don’t know what to make of this. It’s not lying, though - I can’t find these .desktop files that plasmashell references.

Really sorry, but I don’t know what that demonstrates, @malcolmlewis.

@rokejulianlockhart that’s the default on GNOME, Fileroller integration, I don’t use Plasma, so can’t help.

1 Like

You’ve got the wrong filename. The filename is in the banner of the window. The filename is org.opensuse.yast.SWSingle.desktop (for example).

1 Like

They both come from the same package, @hendersj.

RokeJulianLockhart@s1e8h4:~> rpm -q --whatprovides '/usr/share/applications/YaST2/org.opensuse.yast.SWSingle.desktop'
yast2-packager-5.0.1-1.1.x86_64
RokeJulianLockhart@s1e8h4:~> rpm -q --whatprovides '/usr/share/applications/org.opensuse.yast.Packager.desktop'
yast2-packager-5.0.1-1.1.x86_64
RokeJulianLockhart@s1e8h4:~>

So they’re part of the same package - they’re basically the same in terms of functionality and use.

What is it that you’re looking to understand? They do the same thing (install packages), and they use the same backend. Use whichever one you want.

I don’t understand what it is that you want to understand or know - or why it’s important to you.

1 Like

@hendersj, I’d like to know why the package creates two seemingly identical shortcuts, because if they’re identical, it’s probably a bug, and if not, I’ll gain new knowledge about how to use my system.

It would be strange to be content with an application menu containing duplicate entries.

You probably would get a better answer to that question by asking the package maintainer.

It is a waste of time to worry about this. It is no bug and something like that exists in nearly all distributions.

org.opensuse.yast.Packager.desktop executes /usr/lib/YaST2/bin/sw_single_wrapper %F. This is a simple wrapper script which can easily be inspected:

#! /bin/bash

# This is a small wrapper around "yast2 sw_single"
# which quotes all arguments before passing them
# to xdg-su (to properly process file names contaning
# spaces or special shell characters like quotes, ampersand...)

ARGS=""
for ARG in "$@"
do
    QUOTED_ARG=$(printf %q "$ARG")
    ARGS="$ARGS $QUOTED_ARG"
done

xdg-su -c "/sbin/yast2 sw_single $ARGS"

org.opensuse.yast.SWSingle.desktop executes xdg-su -c '/sbin/yast2 sw_single'

As you can easily see, this two desktop files provide two different ways to reach the same goal: open YaST software…one with a wrapper which includes all arguments, and one where you append arguments to the main command…

1 Like

@rokejulianlockhart what @hui says, one is via mime type via the desktop file (MimeType=application/x-rpm;application/x-redhat-package-manager;) the other is all tied up with the actual YaST system…

1 Like