How many ways to download apps?

I’m brand new to Opensuse. A first day noobie actually. My main question right now is how many ways are there to download software?

I’ve used so far zypper through terminal, Yast, then i find out about Packman and Flatpacks. Then the “Get Software” web page.

So what’s like the main way to download, or is it just a combo of all? If i can’t find an app one way i can find it another way?

Any clarification would be great. Thanks!

You have the right idea. There are multiple ways to download software. I almost exclusively use yast to download software because the gui makes it so easy. The important thing is to have repo’s installed that have the software you are interested in. Be careful not to add too many repos. It is unnecessary. I have the basic ones plus packman and google because I use the chrome browser. I rarely add more unless I want to just take a look at a particular piece of software. You could certainly use flatpak. I just have little interest in doing that.

Zypper is a good way to install. I just prefer the gui, except for one thing: updating already installed software. I do that only at the cli with zypper dup. So, you can use the different methods you listed but using yast is the easiest way.

To add to @Prexy’s useful post.

You are a bit mixing terms. E.g. Packman is NOT a way to install something. It is a repository, like other repositories used by the native to openSUSE way to manage software: zypper/YaST.

That brings us to the following.

As said, the native way to manage (not only install, but also remove, update, …) software on openSUSE is zypper (as a command line tool) and YaST > Software (as a software management module of the great system management tool YaST). You can use both, as they are both interfaces to the same software managment environment. Mix them as you like. Both are able to do the majority of same things and show the same things, doing it their own CLI or GUI way. As usual, mass actions can often be done better (or only) by the CLI. E.g. I would not know how exactly to do the equivalent of zypper dup in the GUI (and for Tumbleweed users this is the only way of updating to the next Tumbleweed snapshot).

Then there is PackageKit. It is a tool that in theory can do the same things as zypper (and thus YaST > Software). It was designed as a sort of wrapper around the software management tools of the most important Linux distributions to offer the system manager with the same interface regardless of the distribution in use. Might be interesting for those that manage systems running different distributions. But IMHO, when you just use openSUSE, then it is better to use the native tools, like almost every other openSUSE user here. Also, I assume that while such a wrapper can no doubt do common actions like “installing a package” the same on different distributions, when it comes to the finer details that are particular to one of the native tools, it will fail to translate that to something that works on all distributions. Saying it a bit different: PackageKit will at the most cover a common set of commands.

The system software on openSUSE is available in packages (of the type RPM) and available on so called “repositories”. See them as libraries where you can get books. After installation the basic set of repositories is available in your system to be used. But the world is full of extra repositories. You can add them to your repo list and then use that “library” to get “books”. One very important extra repo is the Packman one, because that makes it possible to replace the, mostly multi-media, packages from the standard repo, that are often not supporting multi-media codecs that are protected by licencies in some countries, by those that"work". But there are many more repos. And please note the warning that @Prexy gave: do restrict your repo list to what you really need.

All the above is about software that is installed on the system as “system software”. That is, they are there to be used by all users on the system. Many of them will be startable from the main menu of GUI users.

But nothing will forbid a user to have an executable (set of) programs inside his/her home directory (e.g. in ~/bin, already pre-installed for each user) to use for her/himself. The user can program such him/herself (e.g. a script or a C program, or whatever) or copy it from elsewhere (a friend, a web-site). Specially the latter (importing it from elsewhere) can run into problems, because the original programmer uses his own environment, which may differ from yours. For this things like Flatpak were designed. They give the end-user the possibility to install a program in his own home directory without much hassle. But remark, this is NOT system software. It is not available to all users (though you can, by setting permission, allow other to use it), it will not be subject to update from openSUSE (e.g. because of security issues), you can not write bug-reports about them to openSUSE, etc. I quote from the Wikipedia page about Flatpak: “It is advertised as offering a sandbox environment in which users can run application software in isolation from the rest of the system.”

So, first lesson :wink:
HTH and when you have questions about it (or want more) please ask.

Wow…that was way more than I was expecting. I’ve heard good things about this community.

hcvv, Prexy, I read both of your posts in full and I have a better understanding now, thanks to you two. The only repo I’ve add so far is Packman. But if Chrome is in the Google repo then maybe the Brave browser is too. Which I’ve been searching and searching on how to get it installed. I tried snaps but I’m getting an error. Oh well. I’ll try the Google repo(didn’t even know there was one).

Well a HUGE thank you to the two of you. You’ve welcomed me eventhough I had some pretty stupid questions, so I really appreciate that. I’m sure I’ll be asking more dumb questions here in the future. :wink:

Oh! I did think of another question. I’ve been trying to get XFCE installed, which I finally did with a command. But on this site it tells how to do it through the GUI. When I search XFCE nothing pops up. But that link tells me to click on the “Patterns” option in the GUI. Once I did that the XFCE appeared. But for some reason when I right-click and hit Install, like the link says, I get a window that just hangs there. Samething with LXDE.

And when I try to install LXDE by

sudo zypper install lxde

, I get an error message of “No Provider for LXDE Found”. Weird…

Anyone happen to know why I couldn’t get XFCE to install by GUI and not by

sudo zypper install xfce

(got the same error as LXDE), but when I used the command

sudo zypper in -t pattern xfce

it did install? And I found that command on another site. I don’t really even know what it means.

I would’ve edited my above post but the site only gives you 10 min to edit after making it.

Thank you for any and all help.

A pattern is a list of packages that someone thought they should be installed when a certain broader functionality (like the desktop XFCE) is wanted. That often was good thinking and thus installing the pattern is much easier then finding out by oneself what is needed. When knowing the pattern name it is easy to use zypper in -t <pattern>, but when just looking after some more vague idea as “how do I install the packages I need for …”, it might be more easy to use YaST > Software > Software Management and then choose from the View menu: Patterns. Scroll down and you will see XFCE Desktop Environment. Check, see the packages belonging to the pattern at right and accept.

I see. So ‘in -t pattern xfce’ is what I was trying to do under “Patterns” in the Software Manager. I’ll probably use the ‘in -t pattern’ command more when I have to as I’m more comfortable on the command line.

I finally got LXDE installed from the command line Yast. I don’t know how it was different than using “Patterns” in the GUI. But in the terminal, once I searched and ok’d LXDE to install, it installed. Where in the GUI the install window just hung there.

Anyways, thanks again hcvv for the better understanding!

I doubt. There aren’t so many patterns (see the list with YaST) and they are for particular purposes where I doubt you will need many (may be yet another DE to try or so). Most people will add a certain package now and then.

Ah, I see now. Yeah, patterns in the GUI looks to have desktops more than anything, so I can see why I wouldn’t need that command much.

I’m catching on slowly but surely. :slight_smile: Thank you for all the help.

You got it.

There are people who do “developing” (maybe writing programs, but often only building packages) and the advice is then to install some of the Development pattern (e.g. Basic and C/C++).

I run a web site and the easiest way to get the whole bunch you might need is from the Server Functions the Web- and LAMP server pattern (which will give you Apache, PHP and Mariadb).

Probably things you will never be after, but OTOH, you never know :wink: