Where is all the software & how to install it (snap?)?

I am new to Almalinux and am struggling to find and install relevant software which I use frequently.

When I look into the software center, it is almost empty. I cant find a way to search for what is available rather than what is already installed.

At the moment I want to install qt5 and gcc and all the supporting packages to compile technical applications. A webpage suggests to install a qt5 snap package - is that the way to do it? Where/How to find and install all linux software? How to check what is already installed?

do not use snap, if you do that then you may as well be using archlinux or something, you will have defeated the point of using an enterprise-grade distro. ditch whatever website told you to do that.

ā€œdnf install qt5 gccā€ is what you want.

ā€œdnf search qt5ā€ would have helped you find it.

ā€œrpm -q qt5ā€ will tell you if its already installed.

software center is useless, donā€™t bother with the gui apps.

if you use the software frequently then what distro have you come from?

rpm -qa
dnf list installed

Alma has what RHEL has and RHEL does not have everything and then some.
There are third-party repositories that have for EL what EL does not have.

The most prominent is EPEL (Extra Packages for Enterprise Linux).
That repo is relatively safe, and easy to get access to:

sudo dnf install epel-release

Thank you for the quick responses!

@ sej7278: I have been using Solus Linux (stable, performant, current, easy to use) for the past 5 years, replacing Ubuntu which had reliability problems at the time after a rushed update cycle as I would call it. I have been using Redhat Linux in its early days for many years before it became RHEL. Now I am replacing Solus Linux as I want to port some scientific applications to run on AMD GPUs and need AMD Rocm which will hopefully soon be available for RHEL i.e. Almalinux 9. It would probably be too much effort required to install Rocm on Solus.

I donā€™t know Rocm.

The gcc is just one package. Installing it will probably install some other packages that gcc depends on, but probably not ā€œall the supportingā€ set. (For example, gcc does not require gcc-c++ and Qt is a C++ framework.)

There are some predefined sets of packages, ā€œgroupsā€ though for convenience. To see groups:

dnf group list
dnf group list --hidden

Among those lists is ā€œDevelopment Toolsā€. To see what it contains:

dnf group info -v "Development Tools"

The ā€˜-vā€™ option adds the ā€œsource repoā€, where the package comes from. If repoā€™s name starts with ā€˜@ā€™ then package is already installed.

To install that group:

sudo dnf group install "Development Tools"

The ā€˜qt5ā€™ does not belong to any group:

$ dnf repoquery --groupmember qt5
Last metadata expiration check: 2:09:47 ago on Tue 12 Jul 2022 07:41:43 PM EEST.
qt5-5.15.2-9.el9.noarch
$

It is actually a ā€œmetapackageā€ ā€“ has practically no files, but requires other packages:

dnf info qt5
dnf repoquery -l qt5
dnf repoquery --requires qt5

However, there are other qt5-relates packages too:

dnf list qt5\*

second that ! never worked the way it was billed - just left me with loads of crap to clear out.

some things I useā€¦

dnf list available
eg.
dnf list available | grep -i thingamajig
or
dnf list available > stuff-I-can-get.txt

of course that only covers stuff in your repos and not everything is in repos, you may need to download an rpm and install it from that

You may have repos which are disabled too.
dnf repolist --all
Powertools stands out as one to enableā€¦
dnf config-manager --enable powertools

Building software on linux is often not straight forward because distros can change the underlying code leading to binary/lib/api incompatabilities and what will build with no intervention on one distro will not build on another without a lot of effort - very often far far far too much effort.

There is another approach where a package is not easily available on your chosen OS - use multiple OSes either with multiple boot (via the bios/uefi not the loader) or more practically with virtual machines.

I needed Bugzilla on a server but it is not available for RHEL so I run a Fedora Server as a VM on a RL host because Fedora includes Bugzilla in its repos. Thereā€™s loads of MultiMedia stuff you would spend your life getting to work on RHEL but Ubuntu Studio has it all so I have a separate disk to boot that from when I need it (with access to the other disks if I need those) - bit of a pain and would run as a VM but you canā€™t get the latency. MS Office ! You just CANNOT get Excel on ANY linux distro :slight_smile: ā€¦so I run Windows as a VM on my RL Workstation and can switch as easily as switching to another app.

FWIW, I find several packages that I like missing on Alma9. As itā€™s just testing for me right now, I play with building packages from srpms. Most, though not all the time, I can take an FC34 srpm and successfully rebuild it for Alma. Iā€™ve done this with weechat ( had to edit the specfile), tint2, and zathura-pdf-mupdf, and mplayer. along with some dependencies, usually found with sudo dnf builddep, . If using alma9, what was powertools is now crb, enabled with sudo dnf config-manager --enable crb. (CRB stands for code ready builder).
Thereā€™s a bunch of articles on building srpms, I have my own, rather sparse page, at Building rpms

2 Likes

I use https://pkgs.org/ & Welcome to the RPM repository on fr2.rpmfind.net to find in which repo the RPM could be. If not in any repo I look in https://src.fedoraproject.org/ . If itā€™s in Fedora but not in EPEL I open a bugzilla ticket to branch and build the software for my required EPEL branch. If I donā€™t receive any response I build my own package from latest Fedora stable branch and do patches if required.