Comments on What desktop environment am I running?
Parent
What desktop environment am I running?
I'm a complete beginner, and just installed Linux for the first time. I chose a popular distribution, but I've run into some issues, or have a few questions. However, I don't know if I have Gnome, Xfce, Cinnamon, Cosmic, or another desktop environment. How do I figure that out?
Post
There will be various clues, but sometimes they can mislead. "I'm on Gnome" means something very different in a modern Ubuntu vs one still hanging around from 10 years ago. (best not to do that)
Start with universal
There are many graphical environments, but the underlying command line has a continuity and consistency which is valuable here.
Let's start with something basic, simple and safe. Something that is almost guaranteed to work everywhere, without installing extra tools.
If it helps you start building some skills then it's a bonus for later.
- Open a terminal window.
- Often this is on the keyboard shortcut
ctrl alt t
. Hold down the keysctrl
andalt
, then type onet
and release the other keys. - You may also find it in the menu system or list of apps as Xterm, Console, Terminal, rxvt, Command Line or Command Prompt. It might have an icon like
>_
- If you search thoroughly and cannot find a command prompt, you may have some kind of "kiosk" computer that is deliberately restricted to prevent access to running commands.
- Often this is on the keyboard shortcut
- You should see a blank window with a line like
myname@computer:~$
but they can vary. This is the command prompt. It is a powerful tool, and like any tool you want to know that you're going to be safe using it. - If you have very little confidence and knowledge with such things, do remember that this is a place to be cautious. You want to be sure that advice you follow is trying to help you, not trying to steal your banking details.
- Enter
lsb_release -a
and press Enter. You will get a few lines of output.- Spell it right or it won't work. The spaces, underscore
_
and hyphen-
all need to be just so; as does other punctuation you may see later. - Yes, you can copy-paste the command from a web page to a terminal, but there are good reasons to cultivate a habit of not doing that. A question for another day.
- Spell it right or it won't work. The spaces, underscore
- Later you may want to find out what it will do before running it. You can use
man lsb_release
and press Enter to see the manual page. Press space to scroll down andq
to quit. - The output should look similar to
mcast@beeep:~$ lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 24.04.2 LTS Release: 24.04 Codename: noble
- Now you know that it is Ubuntu 24, and a web search for "ubuntu noble" will take you to the release information.
- If you got an error message instead, another safe universal command is
uname -a
- Keep the error message. Even if you don't understand it yet, it's useful to show to anyone who might help you.
- It works on many more types of computer - really old Linux, Android (if you can reach it), MacOS, other BSDs and more...
- It is an almost universally accepted command giving a short, distinctive answer.
- Except on Microsoft Windows where if it works it could mislead.
- The rest of the information is useful to paste into questions you may ask later, even if it didn't help you it will help guide the answers people may offer you.
- There is nothing secret in the output of this command. (In others, there might be.)
- When you've finished, you can close the window with any of
- type
exit
and press Enter, or - type
ctrl d
which in this context on a blank line is a shortcut forexit
, because it means "end of input", or - use the usual window close button. People who "live" on the command line make a habit of avoiding that, question for another day.
- type
More examples of output
mcast@baked:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
mcast@baked:~$ uname -a
Linux baked 6.1.0-32-cloud-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.129-1 (2025-03-06) x86_64 GNU/Linux
mcast@toffeepi:~ $ lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 11 (bullseye)
Release: 11
Codename: bullseye
mcast@toffeepi:~ $ uname -a
Linux toffeepi 5.10.103-v7+ #1529 SMP Tue Mar 8 12:21:37 GMT 2022 armv7l GNU/Linux
These are not Ubuntu but Debian and Raspbian; not Noble Numbat but Bookworm and Bullseye. It happens that I like these flavours best in recent years.
The next command you need to run work the same way on these, but other distros are different. That's why we ask lsb_release -a
first.
Ask it what desktop package is installed
The different Linux distributors have their own ways to list package information, which is why the above it the first place to start. Some (such as Ubuntu and Debian) share a lot of tools.
The different release versions also have their own ways of collecting a desktop operating system into different packages, and these have changed over time.
Individual releases of any Linux distribution, especially the larger ones, may have multiple desktop environments. You might have a desktop environment for a large or small computer; a KDE one or a Gnome one. The questions you ask later will depend on these next answers.
Distributor | Query command |
---|---|
Debian, Ubuntu, Raspbian / Raspberry Pi OS |
dpkg -l '*desktop*' dpkg -s ubuntu-desktop
|
Red Hat, Fedora | (um, some rpm -q thing but I don't have one here to test) |
These should produce a table with quite a few lines of output, some of which is irrelevant. I suggest these commands because they are safe, reasonably likely to cover the necessary information, and always available.
At this point it starts to get complicated, and what is needed next (which I don't have) would be a good overview of the names of metapackages or key dependencies for a wide range of desktop environments on the major distros.
However I believe this answer puts the OP in a much better position for asking a more specific question which can get better results.
2 comment threads