So what is a DNF group?
Well, a DNF group is a collection of packages.
And they were created to make package management easier.
A regular group is just a collection of packages.
There's also the environment group,
which is used to install a specific usage pattern
and may consist of multiple packages and groups.
Environment groups is basically what
you see when you install Red Hat Enterprise Linux.
And it goes beyond.
So you're looking for a specific functionality.
Then you would get the environment group.
For a complete overview, use DNF group list.
Some groups are normally only installed
through environment groups and not separately.
And for that reason, you don't always see these groups
while you use DNF group list.
If that is the case, use DNF group list hidden
to see these groups as well.
Now, once you have found your group
and you want to see more, use DNF group info
to see packages within the group.
Packages are marked as mandatory, default,
or optional.
And when you use DNF group install,
only mandatory and default packages are installed.
And if you want to install optional packages as well,
use DNF group install minus minus with optional.
As group names often contain spaces,
the entire group name must be referred
to using double quotes.
Let me show you how to work with this.
So first, DNF group list.
It's showing all the groups that are available.
And if I use DNF groups list hidden,
then you can see that there's much more, including,
for instance, the virtualization tools.
So let me use a DNF group info on virtualization tools.
Don't forget the double quotes, because otherwise,
DNF group info would be looking for a group virtualization
and a group tools.
And that is not going to be very successful.
So what do we see here?
Well, it's not very spectacular.
We have default packages and we have optional packages.
And if I want to install all of them,
then I'm using DNF group install minus minus
with optional virtualization tools.
And that is doing what?
Oh my goodness, that's installing much more
as what we have just seen, isn't it?
And that is because we have a bunch of dependencies
that are included as well.
And I'm just wondering if I really
want to waste half a gigabyte of disk space.
No, I don't.
So I'm going to Control-C out of here and abort the operation.
You get the idea.
This is how you can work with DNF groups.