is it normal to bring icon themes, GTK3, and others for headless server? How can I avoid it? Not install qemu or change distro are bad choice How do you think, there is a possibility, that maintainer reviews spec file for reduce dependencies list?
I haven’t revisited the idea of a minimalist KVM hypervisor-only install (Did you really mean you wanted QEMU support, because that’s a whole different situation), especially since QEMU integration.
A lot of those graphics libraries are likely needed for remote graphical management tools like the VNC based connection you’d normally use when you use virt manager to connect to a remote machine.
But, if you were willing to use only CLI and not use libvirt?
That’d be an interesting exploration.
If you’re looking for a practical approach, my recommendation is…
Even if headless, you may want to support remote graphical consoles and for that you need to install a full graphical environment.
You <may> be able to get everything you need to work in a MinimalX configuration which is not a full Desktop, but an OpenBox implementation (IIRC).
But, for a long term configuration guaranteed to support every possible situation you should install a full Desktop, if even only a lightweight Desktop like LXQt or XFCE.
Note that if you have already installed a text-only “Server” configuration, you cannot just install a Desktop, I’ve forgotten the name of the pattern at the moment, but that pattern which is installed only on text-only Servers provides missing functionality without a Desktop but also prevents a simple Desktop install. When I dealt with this years ago, there is a convoluted process which starts by removing the pattern but understand that removing a pattern does not uninstall the packages in the pattern so you might have to also remove packages manually.
Since that experience, I’ve personally preferred to pave and re-build with LXQt or XFCE instead. IIRC the result can be only about 200MB additional storage used for the Desktop files. Additional resource usage to support a graphical environment should be nearly non-existent if no one is logged in. There is additional attack surface that needs to be locked down, but for the most part should not be an issue if this is a single purpose machine. If your machine is already providing network services, then you should already be dealing with that.
I forget about virtualbox. And it has much less dependencies:
The following 10 NEW packages are going to be installed:
libICE6 libSM6 libXext6 libXmu6 libXt6 libvpx1 systemd-logger virtualbox virtualbox-host-kmp-default xbitmaps
10 new packages to install.
Overall download size: 13.1 MiB. Already cached: 0 B. After the operation, additional 38.0 MiB will be used.
So I decide to switch to it, because it has full-featured cli interface, possibility to start guests in headless mode and much more. But major for me is modest appetit for unneeded for me packages.