Capítulo 7. GUI System

Tabla de contenidos

7.1. Entorno de escritorio GUI
7.2. GUI communication protocol
7.3. GUI infrastructure
7.4. GUI applications
7.5. Fonts
7.5.1. Tipos de letras fundamentales
7.5.2. Rasterización de fuentes
7.6. Sandbox
7.7. Escritorio remoto
7.8. conexión del servidor X
7.8.1. Conexión local del servidor X
7.8.2. Conexión remota del servidor X
7.8.3. X server chroot connection
7.9. Portapapeles

Hay varias opciones para el entorno de escritorio completo GUI en el sistema Debian.


[Sugerencia] Sugerencia

Dependency packages selected by a task metapackage may be out of sync with the latest package transition state under the Debian unstable/testing environment. For task-gnome-desktop, you may need to adjust package selections as follows:

  • Start aptitude(8) as sudo aptitude -u.

  • Move cursor to "Tasks" and press "Enter".

  • Move cursor to "End-user" press "Enter".

  • Move cursor to "GNOME" press "Enter".

  • Move cursor to task-gnome-desktop and press "Enter".

  • Move cursor to "Depends" and press "m" (manually selected).

  • Move cursor to "Recommends" and press "m" (manually selected).

  • Move cursor to "task-gnome-desktop and press "-". (drop)

  • Adjust selected packages while dropping problematic ones causing package conflicts.

  • Press "g" to start install.

This chapter will focus mostly on the default desktop environment of Debian: task-gnome-desktop offering GNOME on wayland.

GUI communication protocol used on the GNOME desktop can be:

Consulte el sitio freedesktop.org para ver en qué se diferencia la arquitectura de Wayland de la arquitectura de X Window.

Desde la perspectiva del usuario, las diferencias se pueden resumir coloquialmente como:

  • Wayland es un protocolo de comunicación GUI del mismo host: nuevo, más simple, más rápido, sin setuid root binario.

  • X Window es un protocolo de comunicación GUI con capacidad de red: tradicional, complejo, más lento, setuid root binario

Para aplicaciones que utilizan el protocolo Wayland, el acceso a su contenido de visualización desde un host remoto es compatible con VNC o RDP. Ver Sección 7.7, “Escritorio remoto”

Los servidores X modernos tienen la Extensión de Memoria Compartida del MIT y se comunican con los clientes locales X utilizando memoria local compartida. Esto evita el canal de comunicación entre interprocesos transparentes Xlib de la red y mejora el rendimiento. Esta situación fue el antecedente de la creación de Wayland como un protocolo de comunicación GUI solo local.

Usando el programa xeyes iniciado desde la terminal GNOME, puede verificar el protocolo de comunicación GUI utilizado por cada aplicación GUI.

 $ xeyes
  • Si el cursor del ratón está en una aplicación como "Terminal GNOME" que usa el protocolo del servidor de pantalla Wayland, los ojos no se mueven con el cursor del ratón.

  • Si el cursor del ratón está en una aplicación como "xterm", que usa el protocolo del núcleo de X Window System, los ojos se mueven con el cursor del ratón y exponen la naturaleza no tan aislada de la arquitectura X Window.

As of April 2021, many popular GUI applications such as GNOME and LibreOffice (LO) applications have been migrated to the Wayland display server protocol. I see xterm, gitk, chromium, firefox, gimp, dia, and KDE applications still use X Window System core protocol.

[Nota] Nota

For both the xwayland on Wayland or the native X Window System, the old X server configuration file "/etc/X11/xorg.conf" shouldn't exist on the system. The graphics and input devices are now configured by the kernel with DRM, KMS, and udev. The native X server has been rewritten to use them. See "modedb default video mode support" in the Linux kernel documentation.

Here are notable GUI infrastructure packages for the GNOME on Wayland environment.


Here, "[auto]" means that these packages are automatically installed when task-gnome-desktop is installed.

[Sugerencia] Sugerencia

gnome-tweaks es la utilidad de configuración indispensable. Por ejemplo:

  • Puede forzar la "Sobreamplificación" del volumen del sonido desde "General".

  • Puede hacer que "Mayúsculas" se convierta en "Esc" desde "Keyboard & Mouse" -> "Keyboard" -> "Additional Layout Option".

Ahora hay disponible muchas aplicaciones GUI útiles en Debian. Instalar software como scribus (KDE) en el entorno de escritorio GNOME es correcta ya que la funcionalidad correspondiente no esta disponible en el entorno de escritorio GNOME. Pero la instalación de demasiados paquetes con funcionalidades solapadas puede saturar su sistema..

Aquí hay una lista de aplicaciones GUI que me llamaron la atención.

Tabla 7.3. Lista de aplicaciones GUI destacadas

paquete popularidad tamaño del paquete tipo descripción
evolution V:28, I:226 470 GNOME Gestor de información personal (trabajo en grupo y correo electrónico)
thunderbird V:56, I:123 193432 GTK Cliente de correo electrónico (Mozilla Thunderbird)
kontact V:1, I:12 2195 KDE Gestor de información personal (trabajo en grupo y correo electrónico)
libreoffice-writer V:122, I:414 38212 LO procesador de textos
abiword V:1, I:9 3467 GNOME procesador de textos
calligrawords V:0, I:6 5836 KDE procesador de textos
scribus V:1, I:20 30234 KDE desktop publishing editor para editar archivos PDF
glabels V:0, I:4 1338 GNOME editor de etiquetas
libreoffice-calc V:118, I:410 30647 LO hoja de cálculo
gnumeric V:4, I:18 10003 GNOME hoja de cálculo
calligrasheets V:0, I:5 11244 KDE hoja de cálculo
libreoffice-impress V:83, I:407 9098 LO presentación
calligrastage V:0, I:4 5142 KDE presentación
libreoffice-base V:46, I:171 5933 LO gestión de bases de datos
kexi V:0, I:1 7118 KDE gestión de bases de datos
libreoffice-draw V:84, I:408 13442 LO editor de gráficos vectoriales (dibujo)
inkscape V:17, I:147 99316 GNOME editor de gráficos vectoriales (dibujo)
karbon V:0, I:5 3581 KDE editor de gráficos vectoriales (dibujo)
dia V:2, I:25 3908 GTK editor de diagramas de flujos y otros diagramas
gimp V:53, I:272 19767 GTK editor de gráficos de mapas de bits (Pintura)
shotwell V:15, I:233 6548 GTK organizador de fotos digitales
digikam V:2, I:11 265 KDE organizador de fotos digitales
darktable V:4, I:14 29882 GTK mesa de luz y cuarto oscuro para fotógrafos
planner V:0, I:3 1458 GNOME gestión de proyectos
calligraplan V:0, I:1 19013 KDE gestión de proyectos
gnucash V:2, I:9 32579 GNOME finanzas personales
homebank V:0, I:2 1232 GTK finanzas personales
lilypond V:1, I:8 6424 - music typesetter
kmymoney V:0, I:2 13341 KDE finanzas personales
librecad V:1, I:16 8798 Qt-app computer-aided design (CAD) system (2D)
freecad I:16 53 Qt-app computer-aided design (CAD) system (3D)
kicad V:2, I:14 196806 GTK electronic schematic and PCB design software
xsane V:13, I:148 2339 GTK interfaz de usuario de escáner
libreoffice-math V:67, I:411 2234 LO editor matemático de fórmulas/ecuaciones
calibre V:8, I:30 62725 KDE gestión de bibliotecas y conversor de libros electrónicos
fbreader V:1, I:11 2631 GTK lector de libros electrónicos
evince V:96, I:306 974 GNOME visor de documentos (pdf)
okular V:35, I:109 17297 KDE visor de documentos (pdf)
x11-apps V:26, I:440 2476 pure X-app xeyes(1), etc.
x11-utils V:169, I:556 712 pure X-app xev(1), xwininfo(1)etc.

Hay disponibles muchas útiles fuentes escalables para los usuarios de Debian. Es asunto del usuario evitar la redundancia y cómo configurar partes de las fuentes instaladas para que se deshabiliten. De lo contrario, las opciones de fuente inútiles pueden saturar los menús de su aplicación GUI.

El sistema Debian usa la librería FreeType 2.0 para rasterizar muchos formatos de fuentes escalables para pantalla e impresión:

La siguiente tabla se compila con la esperanza de ayudar a los usuarios a elegir fuentes escalables apropiadas con una comprensión clara de la compatibilidad métrica y la cobertura de glifos. La mayoría de las fuentes cubren todas las fuentes latinas, los glifos de caracteres griegos y cirílicos. La elección final de las fuentes activadas también se puede ver afectada por su estética. Estas fuentes se pueden utilizar para la visualización en pantalla o para la impresión en papel.

Tabla 7.4. Lista de notables fuentes TrueType y OpenType

paquete popularidad tamaño sans serif mono note on font
fonts-cantarell V:124, I:288 572 59 - - Cantarell (GNOME 3, display)
fonts-noto I:130 35 61 63 40 Noto fonts (Google, multi-lingual with CJK)
fonts-dejavu I:422 39 58 68 40 DejaVu (GNOME 2, MCM:Verdana, extendida Bitstream Vera)
fonts-liberation2 V:114, I:378 4290 56 60 40 Liberation fonts para LibreOffice (Red Hat, MCMATC)
fonts-croscore V:20, I:44 5278 56 60 40 Chrome OS: Arimo, Tinos y Cousine (Google, MCMATC)
fonts-crosextra-carlito V:23, I:172 2728 57 - - Chrome OS: Carlito (Google, MCM:Calibri )
fonts-crosextra-caladea I:171 347 - 55 - Chrome OS: Caladea (Google, MCM:Cambria ) (Latin only )
fonts-freefont-ttf V:64, I:226 6656 57 59 40 GNU FreeFont (extended URW Nimbus)
fonts-quicksand I:391 392 56 - - Debian task-desktop, Quicksand (display, Latin only)
fonts-hack V:20, I:95 2508 - - 40 P Una tipografía diseñada para el código fuente Hack (Facebook)
fonts-sil-gentiumplus I:35 13568 - 54 - Gentium SIL
fonts-sil-charis I:26 6406 - 59 - Charis SIL
fonts-urw-base35 V:127, I:370 15558 56 60 40 URW Nimbus (Sans, Roman No. 9 L, Mono L, MCAHTC)
fonts-ubuntu V:2, I:5 4339 58 - 33 P Ubuntu fonts (display)
fonts-terminus V:0, I:2 453 - - 33 Cool retro terminal fonts
ttf-mscorefonts-installer V:1, I:54 85 ¿56? 60 40 Descargador de fuentes no libres de Microsoft (ver más abajo)

Here:

  • "MCM" stands for "metric compatible with fonts provided by Microsoft"

  • "MCMATC" significa "métrica compatible con las fuentes proporcionadas por Microsoft: Arial, Times New Roman, Courier New"

  • "MCAHTC" significa "métrica compatible con las fuentes proporcionadas por Adobe: Helvetica, Times, Courier"

  • Los números en las columnas de tipo de fuente representan el ancho "M" relativo aproximado para la fuente del mismo tamaño de punto.

  • La "P" en columnas de tipo de fuente mono representa su facilidad de uso para la programación con "0"/"O" y "1"/"I"/"l" claramente distinguibles.

  • El paquete ttf-mscorefonts-installer descarga Microsoft "fuentes Core para la Web" e instala Arial, Times New Roman, Courier New, Verdana, ... . Estos datos de fuentes instaladas son datos no libres.

Muchas fuentes latinas libres tienen su linaje trazado hasta la familia URW Nimbus o Bitstream Vera.

[Sugerencia] Sugerencia

Si su configuración regional necesita fuentes que no están bien cubiertas por las anteriores, utilice aptitude para verificar los paquetes de tareas enumerados en "Tasks" -> "Localization". Los paquetes de fuentes enumerados como "Depends:" o "Recommends:" en la tarea de localización de paquetes son los principales candidatos.

Muchas aplicaciones en Linux, en su mayoría GUI, están disponibles en formatos binarios de fuentes que no son de Debian.

[Aviso] Aviso

Los archivos binarios de estos sitios pueden incluir paquetes propietarios de software no libre.

Hay alguna razón de ser para estas distribuciones de formato binario para los aficionados al Software Libre que usan Debian, ya que pueden acomodar un conjunto limpio de bibliotecas utilizadas para cada aplicación por el respectivo desarrollador, independiente de las suministradas por Debian.

El riesgo inherente de ejecutar archivos binarios externos se puede reducir mediante el uso del entorno sandbox que aprovecha las modernas funciones de seguridad de Linux (ver Sección 4.7.4, “Características de seguridad de Linux”).

  • Para binarios de AppImage y algunos sitios upstream, ejecútelos en firejail con manual de configuración.

  • Para binarios de FLATHUB, ejecútelos en Flatpak . (No requiere configuración manual.)

  • For binaries from snapcraft, run them in Snap . (No manual configuration required. Compatible with daemon programs.)

The xdg-desktop-portal package provides a standardized API to common desktop features. See xdg-desktop-portal (flatpak) and xdg-desktop-portal (snap)


Esta tecnología de entorno de espacio aislado es muy parecida a las apps en el SO de los teléfonos inteligentes, donde las apps se ejecutan bajo accesos de recursos controlados.

Algunas grandes aplicaciones GUI, como los navegadores web en Debian, también usan tecnología de entorno de espacio aislado internamente para hacerlas más seguras.


Hay varias formas de conectarse desde una aplicación en un host remoto al servidor X, incluyendo xwayland en el host local.


El acceso al servidor X local de las aplicaciones locales que usan el protocolo central X se puede hacer localmente a través de un socket de dominio UNIX local. Esto lo puede autorizar el archivo de autoridad que contiene el cookie de acceso. La situación del archivo de autoridad se identifica mediante la variable de entorno "$XAUTHORITY" y la pantalla X se identifica mediante la variable de entorno "$DISPLAY". Dado que normalmente se configuran automáticamente, no se necesita ninguna acción especial, p. "gitk" como el que sigue.

username $ gitk
[Nota] Nota

Para xwayland, XAUTHORITY tiene valor como "/run/user/1000/.mutter-Xwaylandauth.YVSU30".

For clipping text to clipboard, see Sección 1.4.4, “Operaciones con el ratón”.

For clipping graphics to clipboard, see Sección 11.6, “Herramientas para información gráfica”.

Some CLI commands can manipulate character clipboard (PRIMARY and CLIPBOARD), too.