"Server with GUI" vs "Workstation"

I have installed RL with option “Server with GUI”. It is running okay, no problems. Have been testing it and learning the OS (coming from Debian OS).

My question is: can I switch from “Server with GUI” to “Workstation” without doing a new installation?

$ sudo dnf group install Workstation
$ sudo dnf group list
Installed Environment Groups:
Server with GUI

Can I logout from Environment “Server with GUI” and login to “Workstation”?

P.S.: sorry if this is a silly beginner question :wink:

The options shown at the initial installation are really just a list or group of packages to be installed. So a Server installation will include such things as httpd and a Workstation installation will include stuff like Libreoffice and Gimp.

After the initial installation you can customize your installation to whatever you think you need. The groups are just a starting point. Add or delete packages as you need them or don’t need them. After the initial installation there’s no distinction between a Workstation installation and a Server installation. It’s just a difference in the list of rpms that were installed when you set it up and you can change that however you wish. You can have Libreoffice on your Server installation and httpd on your Workstation installation if you want.

When I do a setup it really doesn’t matter what initial option I choose. After the initial setup I have a list of rpms that I want to install and a list of rpms that I want to remove. The starting point (server or workstation) doesn’t really matter.


You can look what dnf groups / packages are included in each environment:

dnf group info Workstation
dnf group info "Server with GUI"

Then you can uninstall the groups/packages that only in the environment that you do not want.

If you log into console, then it is the same on both.
If you log into (GUI) Desktop Environment, then it is the same (GNOME) on both.

I have shifted to using config management system “Ansible”. (RHEL 8 documentation has paragraphs about it.)
All I need to initially install is “Minimal install” (although I could strip it further down with custom kickstart file) and after installation I run an “Ansible play” that reads a list of packages from my config and installs them and finishes other config too.

This means that I have a copy of the config (in Ansible “inventory”) and reinstall from scratch is really easy, quick, and repeatable. You never know when you have to restore from backups, so better have some ready that you know you can restore from.

1 Like

This is the best way to learn about RL. Try, mistake, do it again and again and then you wikk know all you need.

thanks for the awesome information.