Virtualization no longer listed as a group

I’ve noticed this for a while and hadn’t thought to ask about it, but when I do dnf group list, “virtualization” is no longer listed. When I do dnf group install virtualization it still installs everything fine. I just wanted to know if this is a bug or by design, and if so, why?

2 Likes

I’m not sure what the specific design reasoning is, but it does appear to be a feature to hide that group from the default listing and not a bug.

There’s a ‘hidden’ flag for groups (mentioned but not described in much detail in the man pages for dnf), and virtualization has that flag set. You can run dnf group list --hidden to see all groups regardless of that hidden flag status, and at least on my machine Virtualization showed up toward the end, in between Vagrant with libvirt support and Headless Virtualization.

If I had to guess based on inferring a reason, it looks like many of the hidden groups are ones that are relevant to spins or other choices that are conceptually designed to be made when choosing a version to install, or during the installer’s process - but that’s a pure guess (e.g. there are various KDE-related groups that are hidden, perhaps because they’re supposed to be only used in concert with the KDE environment/spin?)

Hope that helps!

4 Likes

The package groups are defined in the “comps” files. For example, here’s the one for F38 (currently rawhide), and at least here, one can see that the virtualization group is set to hidden (“uservisible” is false):

https://www.pagure.io/fedora-comps/blob/main/f/comps-f38.xml.in#_5341

More info in the repo readme, and this wiki page:

https://fedoraproject.org/wiki/How_to_use_and_edit_comps.xml_for_package_groups

Some grepping tells me this change was made in F18:

$ for f in $(ls -v comps-f*); do echo "** $f **" ; rg "<id>virtualization</id>" -A4  $f ; echo ; done
** comps-f7.xml.in **
3715:    <id>virtualization</id>
3716-    <_name>Virtualization</_name>
3717-    <_description>These packages provide a virtualization environment.</_description>
3718-    <default>false</default>
3719-    <uservisible>true</uservisible>

** comps-f8.xml.in **
4050:    <id>virtualization</id>
4051-    <_name>Virtualization</_name>
4052-    <_description>These packages provide a virtualization environment.</_description>
4053-    <default>false</default>
4054-    <uservisible>true</uservisible>

** comps-f9.xml.in **
4302:    <id>virtualization</id>
4303-    <_name>Virtualization</_name>
4304-    <_description>These packages provide a virtualization environment.</_description>
4305-    <default>false</default>
4306-    <uservisible>true</uservisible>

** comps-f10.xml.in **
4952:    <id>virtualization</id>
4953-    <_name>Virtualization</_name>
4954-    <_description>These packages provide a virtualization environment.</_description>
4955-    <default>false</default>
4956-    <uservisible>true</uservisible>

** comps-f11.xml.in **
5765:    <id>virtualization</id>
5766-    <_name>Virtualization</_name>
5767-    <_description>These packages provide a virtualization environment.</_description>
5768-    <default>false</default>
5769-    <uservisible>true</uservisible>

** comps-f12.xml.in **
6089:    <id>virtualization</id>
6090-    <_name>Virtualization</_name>
6091-    <_description>These packages provide a virtualization environment.</_description>
6092-    <default>false</default>
6093-    <uservisible>true</uservisible>

** comps-f13.xml.in **
6221:    <id>virtualization</id>
6222-    <_name>Virtualization</_name>
6223-    <_description>These packages provide a virtualization environment.</_description>
6224-    <default>false</default>
6225-    <uservisible>true</uservisible>

** comps-f14.xml.in **
6239:    <id>virtualization</id>
6240-    <_name>Virtualization</_name>
6241-    <_description>These packages provide a virtualization environment.</_description>
6242-    <default>false</default>
6243-    <uservisible>true</uservisible>

** comps-f15.xml.in **
6578:    <id>virtualization</id>
6579-    <_name>Virtualization</_name>
6580-    <_description>These packages provide a virtualization environment.</_description>
6581-    <default>false</default>
6582-    <uservisible>true</uservisible>

** comps-f16.xml.in **
6733:    <id>virtualization</id>
6734-    <_name>Virtualization</_name>
6735-    <_description>These packages provide a virtualization environment.</_description>
6736-    <default>false</default>
6737-    <uservisible>true</uservisible>

** comps-f17.xml.in **
6287:    <id>virtualization</id>
6288-    <_name>Virtualization Client</_name>
6289-    <_description>These packages provide a virtualization environment.</_description>
6290-    <default>false</default>
6291-    <uservisible>true</uservisible>

** comps-f18.xml.in **
5497:    <id>virtualization</id>
5498-    <_name>Virtualization</_name>
5499-    <_description>These packages provide a virtualization environment.</_description>
5500-    <default>false</default>
5501-    <uservisible>false</uservisible>

** comps-f19.xml.in **
5752:    <id>virtualization</id>
5753-    <_name>Virtualization</_name>
5754-    <_description>These packages provide a virtualization environment.</_description>
5755-    <default>false</default>
5756-    <uservisible>false</uservisible>

** comps-f20.xml.in **
5955:    <id>virtualization</id>
5956-    <_name>Virtualization</_name>
5957-    <_description>These packages provide a virtualization environment.</_description>
5958-    <default>false</default>
5959-    <uservisible>false</uservisible>

** comps-f21.xml.in **
6238:    <id>virtualization</id>
6239-    <_name>Virtualization</_name>
6240-    <_description>These packages provide a virtualization environment.</_description>
6241-    <default>false</default>
6242-    <uservisible>false</uservisible>

** comps-f22.xml.in **
6295:    <id>virtualization</id>
6296-    <_name>Virtualization</_name>
6297-    <_description>These packages provide a virtualization environment.</_description>
6298-    <default>false</default>
6299-    <uservisible>false</uservisible>

** comps-f23.xml.in **
6222:    <id>virtualization</id>
6223-    <_name>Virtualization</_name>
6224-    <_description>These packages provide a graphical virtualization environment.</_description>
6225-    <default>false</default>
6226-    <uservisible>false</uservisible>

** comps-f24.xml.in **
6274:    <id>virtualization</id>
6275-    <_name>Virtualization</_name>
6276-    <_description>These packages provide a graphical virtualization environment.</_description>
6277-    <default>false</default>
6278-    <uservisible>false</uservisible>

** comps-f25.xml.in **
6292:    <id>virtualization</id>
6293-    <_name>Virtualization</_name>
6294-    <_description>These packages provide a graphical virtualization environment.</_description>
6295-    <default>false</default>
6296-    <uservisible>false</uservisible>

** comps-f26.xml.in **
6406:    <id>virtualization</id>
6407-    <_name>Virtualization</_name>
6408-    <_description>These packages provide a graphical virtualization environment.</_description>
6409-    <default>false</default>
6410-    <uservisible>false</uservisible>

** comps-f27.xml.in **
6377:    <id>virtualization</id>
6378-    <_name>Virtualization</_name>
6379-    <_description>These packages provide a graphical virtualization environment.</_description>
6380-    <default>false</default>
6381-    <uservisible>false</uservisible>

** comps-f28.xml.in **
6421:    <id>virtualization</id>
6422-    <_name>Virtualization</_name>
6423-    <_description>These packages provide a graphical virtualization environment.</_description>
6424-    <default>false</default>
6425-    <uservisible>false</uservisible>

** comps-f29.xml.in **
6467:    <id>virtualization</id>
6468-    <_name>Virtualization</_name>
6469-    <_description>These packages provide a graphical virtualization environment.</_description>
6470-    <default>false</default>
6471-    <uservisible>false</uservisible>

** comps-f30.xml.in **
5725:    <id>virtualization</id>
5726-    <_name>Virtualization</_name>
5727-    <_description>These packages provide a graphical virtualization environment.</_description>
5728-    <default>false</default>
5729-    <uservisible>false</uservisible>

** comps-f31.xml.in **
5720:    <id>virtualization</id>
5721-    <_name>Virtualization</_name>
5722-    <_description>These packages provide a graphical virtualization environment.</_description>
5723-    <default>false</default>
5724-    <uservisible>false</uservisible>

** comps-f32.xml.in **
5649:    <id>virtualization</id>
5650-    <_name>Virtualization</_name>
5651-    <_description>These packages provide a graphical virtualization environment.</_description>
5652-    <default>false</default>
5653-    <uservisible>false</uservisible>

** comps-f33.xml.in **
5297:    <id>virtualization</id>
5298-    <_name>Virtualization</_name>
5299-    <_description>These packages provide a graphical virtualization environment.</_description>
5300-    <default>false</default>
5301-    <uservisible>false</uservisible>

** comps-f34.xml.in **
5393:    <id>virtualization</id>
5394-    <_name>Virtualization</_name>
5395-    <_description>These packages provide a graphical virtualization environment.</_description>
5396-    <default>false</default>
5397-    <uservisible>false</uservisible>

** comps-f35.xml.in **
5444:    <id>virtualization</id>
5445-    <_name>Virtualization</_name>
5446-    <_description>These packages provide a graphical virtualization environment.</_description>
5447-    <default>false</default>
5448-    <uservisible>false</uservisible>

** comps-f36.xml.in **
5533:    <id>virtualization</id>
5534-    <_name>Virtualization</_name>
5535-    <_description>These packages provide a graphical virtualization environment.</_description>
5536-    <default>false</default>
5537-    <uservisible>false</uservisible>

** comps-f37.xml.in **
5483:    <id>virtualization</id>
5484-    <_name>Virtualization</_name>
5485-    <_description>These packages provide a graphical virtualization environment.</_description>
5486-    <default>false</default>
5487-    <uservisible>false</uservisible>

** comps-f38.xml.in **
5337:    <id>virtualization</id>
5338-    <_name>Virtualization</_name>
5339-    <_description>These packages provide a graphical virtualization environment.</_description>
5340-    <default>false</default>
5341-    <uservisible>false</uservisible>

Using git blame, I get this commit as the one that made this change. Looks to just be part of a general cleanup to reduce the number of groups being shown in the installer—that’s another place where comps is used:

https://www.pagure.io/fedora-comps/c/2adbfb571?branch=main

1 Like

I’m on F37 and get the following:

$ sudo dnf group install virtualization
Last metadata expiration check: 0:31:19 ago on ter 22 nov 2022 09:09:43.
Dependencies resolved.
==============================================================================================================================
 Package                       Architecture                 Version                       Repository                     Size
==============================================================================================================================
Installing Groups:
 Virtualization                                                                                                              

Transaction Summary
==============================================================================================================================

Is this ok [y/N]: y
Complete!

I can not confirm that everything is fine.
My guess is that libvirt is by default installed =>F37 and just have to be activated if we do want to use it ?!
Mine is a from F36 Updated system, so I can not check if it was there already.

1 Like

I’m not sure why you think it’s not ok. You can just take a look at what packages it installs:

# dnf group info virtualization
Group: Virtualization
 Description: These packages provide a graphical virtualization environment.
 Mandatory Packages:
   virt-install
 Default Packages:
   libvirt-daemon-config-network
   libvirt-daemon-kvm
   qemu-kvm
   virt-manager
   virt-viewer
 Optional Packages:
   guestfs-tools
   libguestfs-tools
   python3-libguestfs
   virt-top

I just was thinking that the system at least should tell me that i already have it installed or list at least which packages Virtualization contains.
Instead it just said (complete output see above ):
Complete!

If I check the dnf history I got confirmed that i installed it on:

dnf history |grep @virtualization
     8 | install @virtualization                                                                                         | 2022-03-31 17:44 | Install        |  131 EE

I checked with the “Fedora Workstation” group. There I saw that packages have been installed. Even if I also installed them in the middle of the year. My base install was the Spin “Mate Compiz”

dnf history |grep "Fedora Workstation"
   263 | group install Fedora Workstation                                                                                              | 2022-11-22 11:37 | Install        |   49   
    14 | group install Fedora Workstation                                                                                              | 2022-06-21 23:54 | Install        |  270 EE

So there is definitely something different than other groups.

Because you already had them installed. When you installed the group, it only had to install the meta package for the group.

1 Like