Banda Ancha EU

Comunidad de usuarios
de fibra, móvil y ADSL

Cómo saber el entorno de escritorio o gestor de ventanas de la distro de Linux que estamos usando

BocaDePez
BocaDePez

Si queremos o necesitamos averiguar qué entorno de escritorio (o gestor de ventanas en su defecto) emplea la distribución de GNU/Linux que estamos utilizando podemos tener en cuenta…

He probado las mejores opciones que he encontrado por ahí (con alguna adaptación) con:

  1. GNOME bajo Linux Mint instalado
  2. GNOME bajo Linux Mint Live USB
  3. MATE bajo Linux Mint
  4. LXDE bajo Lubuntu
  5. JWM bajo Puppy Linux (JWM no es un entorno de escritorio como los anteriores sino un gestor de ventanas, de pila concretamente).

Mis resultados

Regular

Comando (en terminal o consola) env | grep DESKTOP_SESSION=.

  1. DESKTOP_SESSION=gnome
  2. DESKTOP_SESSION=gnome
  3. DESKTOP_SESSION=default.desktop
  4. DESKTOP_SESSION=Lubuntu
  5. Nada

Regular

Comando (en terminal o consola) echo $GDMSESSION.

  1. gnome
  2. gnome
  3. Nada
  4. Lubuntu
  5. Nada

Bien, pero no perfecto

Comando (en terminal o consola) pgrep -l "gnome|kde|mate|cinnamon|lxde|xfce|jwm" o bien ps -A | egrep -i "gnome|kde|mate|cinnamon|lxde|xfce|jwm".

  1. Bien
  2. Bien
  3. Bien
  4. Mal
  5. Nada y bien

Muy bien, pero no perfecto

HardInfo, programa o aplicación que viene de serie con todos los probados (en distros que no, se podría instalar fácilmente).

  1. Nada
  2. GNOME 2.32.0
  3. MATE
  4. LXDE (Lubuntu)
  5. Unknown (Window Manager: JWM)

Conclusión

Una combinación de HardInfo y del comando ps -A | egrep -i "gnome|kde|mate|cinnamon|lxde|xfce|jwm" probablemente nos dará la respuesta buscada.

BocaDePez
BocaDePez

Este comando parece útil:

ls /usr/bin/*session*
  • En GNOME devuelve /usr/bin/gnome-session (y más)
  • En MATE devuelve /usr/bin/mate-session (y más)
  • En LXDE devuelve /usr/bin/lxsession (y más)
  • En JWM devuelve /usr/bin/icewm-session (debería ser jwm-session, ¿¡no!?)
🗨️ 1
BocaDePez
BocaDePez

Me temo que ese comando solo lista los ejecutables que existen en ese directorio con esa cadena.

Eso solo dice que está instalado, pero podrías tener instalados diversos gestores de ventanas y obviamente solo correr uno de ellos simultáneamente.

superllo
$ env | grep DESKTOP_SESSION=
DESKTOP_SESSION=mate

Ubuntu 12.10 con MATE 1.6.

🗨️ 4
BocaDePez
BocaDePez

¿No es más fácil echo $DESKTOP_SESSION?

🗨️ 3
superllo
$ echo $DESKTOP_SESSION
mate

Ahí lo tienes.

BocaDePez
BocaDePez

Efectivamente, en MATE bajo Linux Mint 13 echo $DESKTOP_SESSION devuelve default.desktop

BocaDePez
BocaDePez

KDE bajo Linux Mint 13:

env | grep DESKTOP_SESSION= devuelve DESKTOP_SESSION=default

echo $GDMSESSION no devuelve nada (lógico: GDM es de GNOME)

HardInfo no está. Viene KInfoCenter pero no informa sobre lo que se busca.

ls /usr/bin/*session* devuelve /usr/bin/x-session-manager (MAL)

echo $DESKTOP_SESSION devuelve default

Una ruina …

Pero por suerte …

pgrep -l "gnome|kde|mate|cinnamon|lxde|xfce|jwm" va bien, igual que ps -A | egrep -i "gnome|kde|mate|cinnamon|lxde|xfce|jwm" (muestran varios kde)

¡Uff!

🗨️ 3
BocaDePez
BocaDePez

Perdón, KInfoCenter sí da la info deseada: en el apartado Summary, arriba dice "KDE SC Version". También podemos ver sólo ese apartado abriendo Summary como programa aparte.

BocaDePez
BocaDePez

HardInfo se instala fácil y rápido en KDE (sólo hacen falta 2 paquetes) pero no se da la info deseada en el apartado "Operating System" (donde suele salir directamente en la línea "Desktop Environment") sino en el apartado "Environment variables" (en algunas líneas).

BocaDePez
BocaDePez

Vaya, que juegos entre distros:

[BocaPescao@Mor1 ~]$ env | grep DESKTOP_SESSION=
DESKTOP_SESSION=kde-plasma
[BocaPescao@Mor1 ~]$ echo $DESKTOP_SESSION
kde-plasma
BocaDePez
BocaDePez

En vez de 1) y 2) creo que van mejor:

env | egrep -i "gnome|kde|mate|cinnamon|lxde|xfce|jwm"

env | grep -i "session"

🗨️ 1
BocaDePez
BocaDePez

Estos no valen para JWM bajo Puppy.

BocaDePez
BocaDePez

Éstos va perfectos para LXDE bajo Lubuntu:

pgrep -l session

o

ps -A | grep -i session

Ambos devuelven una sola línea así:

[...] lxsession

🗨️ 4
BocaDePez
BocaDePez

Para KDE no valen. Así que estos 2, que toman de allá y acá, sí valen para todos los probados:

pgrep -l "gnome|kde|mate|cinnamon|lxde|xfce|jwm|session"

y

ps -A | egrep -i "gnome|kde|mate|cinnamon|lxde|xfce|jwm|session"

🗨️ 3
BocaDePez
BocaDePez

Bueno, van mejor:

pgrep -l "gnome|kde|mate|cinnamon|lx|xfce|jwm"

y

ps -A | egrep -i "gnome|kde|mate|cinnamon|lx|xfce|jwm"

🗨️ 2
BocaDePez
BocaDePez

En Cinnamon sale sólo 1 elemento con dicho nombre mientras salen varios gnome-*.

🗨️ 1
BocaDePez
BocaDePez
BocaDePez
BocaDePez

Para saber la versión del entorno de escritorio que usamos se puede abrir Synaptic y poner su nombre en la casilla de búsqueda rápida. Bajo "Versión instalada" está la respuesta. Al lado, bajo "Versión disponible" está la más alta a la que podemos actualizar (al menos si acabamos de pulsar en "Recargar" y por lo menos tratándose de software estable -por defecto el acceso a las versiones en desarrollo suele estar desactivado-).

BocaDePez
BocaDePez

Si usamos Linux Mint podemos ejecutar mintwelcome que abre la pantalla de bienvenida, donde se indica, entre otros, el entorno de escritorio activo.

BocaDePez
BocaDePez
systemctl status display-manager
BocaDePez
BocaDePez

Haciendo trampa: screenfetch

BocaDePez
BocaDePez

Buscaba saber la version y creo que esto puede ayudar:

jines@debian-t430:/$ gnome-shell --version
GNOME Shell 3.22.3

Saludos

🗨️ 1
BocaDePez
BocaDePez

Excelente respuesta.

Directo al grano y sin rodeos confusos¡