ff-multiconverter, multimedia, audio, video, linux, ubuntu ubuntu kylin, china, releases, linux terminal, ubuntu, linux, comandos, shell conky, gadgets, ubuntu, linux SpeedTest-Cli, velocidad, red, consola, terminal tag foto 6 pinta, grafica, linux, ubuntu djl, juegos, yum, synaptic, paquetes ubuntu, releases, canonical psensor, ubuntu, linux, sistema, monitor

Guía de MATE entorno de escritorio clásico y ligero: Mozo editor de menús,

Mozo es un editor de menús para MATE que utiliza la especificación de menús de freedesktop.org. Es una bifurcación de Alacarte.

 

¿Qué es Mozo?

Mozo es el editor gráfico de menús de MATE. Permite modificar la estructura del menú de aplicaciones del escritorio sin tener que editar manualmente los archivos .desktop y los archivos XML que definen la organización del menú.

Forma parte del ecosistema de aplicaciones de MATE Desktop Environment y está pensado para integrarse con el sistema de menús basado en freedesktop.org.

La idea fundamental es esta:

                 ESCRITORIO MATE
                       │
                       ▼
                ┌─────────────┐
                │    Mozo     │
                │             │
                │ Editor de   │
                │ menús       │
                └──────┬──────┘
                       │
                       ▼
              configuración del
               menú de aplicaciones
                       │
             ┌─────────┴─────────┐
             ▼                   ▼
       archivos .desktop    archivos XML
             │                   │
             └─────────┬─────────┘
                       ▼
                 MENÚ DE MATE

Mozo no es el menú en sí. Es una herramienta para editar la información que posteriormente utilizan el panel y el menú de aplicaciones de MATE.


1. ¿Qué problema resuelve Mozo?

En Linux, las aplicaciones gráficas normalmente no aparecen en el menú simplemente porque exista un ejecutable en:

/usr/bin/

Por ejemplo:

/usr/bin/firefox
/usr/bin/gedit
/usr/bin/vlc

El menú necesita información adicional:

Nombre: Firefox
Descripción: Navegador web
Icono: firefox
Comando: firefox
Categoría: Internet

Esa información se almacena principalmente mediante archivos:

.desktop

Por ejemplo, conceptualmente:

[Desktop Entry]
Name=Firefox
Comment=Web Browser
Exec=firefox
Icon=firefox
Type=Application
Categories=Network;WebBrowser;

Mozo proporciona una interfaz gráfica para modificar este tipo de información y, sobre todo, decidir cómo aparece organizada en el menú.


2. La arquitectura que hay detrás

Para comprender Mozo en profundidad conviene separar tres elementos:

Aplicación
    │
    ▼
archivo .desktop
    │
    ▼
sistema de menús
    │
    ▼
MATE panel / menú

El archivo .desktop describe una aplicación.

El sistema de menús determina dónde aparece.

Mozo actúa sobre esa configuración.

Por tanto:

          .desktop
             │
             │ describe
             ▼
        Aplicación
             │
             │ pertenece a
             ▼
          Categorías
             │
             ▼
       Sistema de menú
             │
             ▼
       Menú de MATE

3. ¿Qué es un archivo .desktop?

Un .desktop es, simplificando, el equivalente Linux de una "ficha" que describe una aplicación gráfica.

Por ejemplo:

[Desktop Entry]
Name=Mi aplicación
Comment=Una aplicación de ejemplo
Exec=/usr/local/bin/mi-programa
Icon=mi-icono
Terminal=false
Type=Application
Categories=Utility;

Aquí encontramos información como:

Campo
Función

Name
Nombre mostrado

Comment
Descripción

Exec
Programa que se ejecuta

Icon
Icono

Terminal
Si necesita terminal

Type
Tipo de entrada

Categories
Categorías

NoDisplay
Si debe ocultarse del menú

Hidden
Si la entrada está oculta

Mozo trabaja sobre este ecosistema.


4. Mozo no modifica el ejecutable

Esto es muy importante.

Si tienes:

/usr/bin/mi-programa

y utilizas Mozo para cambiar:

Nombre:
"Mi programa"

por:

"Mi fantástico programa"

Mozo no modifica:

/usr/bin/mi-programa

Modifica la información utilizada para presentar el programa en el menú.

Es decir:

                  Mozo
                   │
                   ▼
       información del menú
                   │
                   ▼
             .desktop
                   │
                   ▼
       "cómo aparece"
                   │
                   ▼
          aplicación real

5. Crear lanzadores personalizados

Una de las funciones más útiles de Mozo es la posibilidad de crear un lanzador.

Imagina que tienes un programa que puedes ejecutar desde:

/opt/mis-programas/editor

pero no tiene una entrada en el menú.

Puedes crear desde Mozo una nueva entrada con:

Nombre:
Editor especial

Comando:
/opt/mis-programas/editor

Comentario:
Mi editor personalizado

Icono:
...

Entonces puedes conseguir:

Aplicaciones
 └── Oficina
      └── Editor especial

sin tener que escribir manualmente el archivo .desktop.


6. Crear una entrada para cualquier comando

Esto abre posibilidades interesantes.

Por ejemplo, puedes crear un lanzador para:

htop

o:

mate-terminal

o incluso:

mate-terminal --working-directory=/home/usuario/proyecto

Así puedes transformar un comando en una aplicación accesible desde el menú gráfico.

Conceptualmente:

Mozo
 │
 ├── Nombre
 ├── Comando
 ├── Comentario
 └── Icono
       │
       ▼
   .desktop
       │
       ▼
 menú MATE

7. Organización jerárquica

Mozo permite trabajar con la estructura jerárquica del menú.

Por ejemplo:

Aplicaciones
│
├── Accesorios
│   ├── Calculadora
│   ├── Editor de texto
│   └── Terminal
│
├── Gráficos
│   ├── Visor de imágenes
│   └── Editor de imágenes
│
├── Internet
│   ├── Navegador
│   └── Cliente de correo
│
├── Oficina
│   ├── Procesador de textos
│   └── Hoja de cálculo
│
└── Sonido y vídeo
    ├── Reproductor
    └── Grabador

Puedes modificar esta estructura mediante la interfaz gráfica.

Esto es especialmente útil si tienes muchas aplicaciones instaladas y quieres construir una organización personalizada.


8. Crear submenús

No solamente puedes modificar entradas.

También puedes crear categorías/submenús personalizados.

Por ejemplo:

Aplicaciones
│
├── Desarrollo
│   ├── IDE
│   ├── Terminal
│   ├── Git
│   └── Docker
│
├── Servidores
│   ├── SSH
│   ├── Logs
│   └── Monitorización
│
└── Mis aplicaciones
    ├── Aplicación A
    ├── Aplicación B
    └── Aplicación C

Esto es una de las funciones que hacen que Mozo sea mucho más interesante que simplemente editar nombres de aplicaciones.


9. Mover aplicaciones

Puedes cambiar la posición de las entradas dentro de una categoría.

Por ejemplo:

Internet
├── Firefox
├── Thunderbird
├── Transmission
└── Cliente IRC

podría reorganizarse como:

Internet
├── Firefox
├── Cliente IRC
├── Thunderbird
└── Transmission

Esto afecta principalmente a la presentación del menú, no al funcionamiento de las aplicaciones.


10. Ocultar aplicaciones

Otra función importante es ocultar entradas que no quieres que aparezcan.

Supongamos que tienes:

Aplicaciones
├── Desarrollo
├── Juegos
├── Oficina
├── Programación
└── Utilidades

pero no quieres que:

Juegos

aparezca.

Puedes ocultar la entrada correspondiente.

Esto no significa necesariamente que el programa haya sido desinstalado.

Simplemente deja de aparecer en el menú.

Es una distinción fundamental:

Visible en menú
       ≠
Instalado en sistema

11. El concepto de "ocultar" en .desktop

Aquí aparece un detalle técnico interesante.

Los archivos .desktop pueden contener propiedades como:

NoDisplay=true

o:

Hidden=true

Estas propiedades tienen significados distintos dentro de la especificación de Desktop Entry.

Por eso, cuando utilizas Mozo para ocultar algo, no debes imaginar que está borrando la aplicación.

La idea es modificar la forma en que la entrada es presentada por el sistema de menús.


12. Desactivar una categoría completa

La misma idea puede aplicarse a categorías.

Por ejemplo:

Aplicaciones
├── Accesorios
├── Educación
├── Gráficos
├── Internet
├── Oficina
└── Juegos

Puedes decidir que determinada categoría no aparezca.

El programa y sus archivos siguen existiendo, pero el menú deja de mostrar esa parte de la estructura.


13. Iconos

Mozo permite asociar iconos a los lanzadores.

Esto es importante porque un .desktop puede especificar:

Icon=firefox

o una ruta de icono.

El sistema de iconos de MATE/GTK se encarga posteriormente de resolver ese nombre.

Conceptualmente:

Mozo
 │
 │ Icon = "mi-icono"
 ▼
.desktop
 │
 ▼
GTK / icon theme
 │
 ▼
imagen

Esto significa que el icono que ves en el menú puede proceder del tema de iconos instalado en el sistema.


14. Nombre visible vs nombre real

Mozo permite modificar el nombre que ve el usuario.

Por ejemplo, el archivo podría representar originalmente:

Name=LibreOffice Writer

y podrías presentar algo como:

Name=Procesador de textos

La aplicación real no cambia.

Es simplemente una capa de presentación.

Esto resulta muy útil para construir un menú más adaptado a tus necesidades.


15. El campo Exec

Probablemente uno de los campos técnicamente más importantes es:

Exec=

Por ejemplo:

Exec=firefox

significa que al activar el lanzador se ejecutará:

firefox

Otro ejemplo:

Exec=mate-terminal

y otro:

Exec=mate-terminal --working-directory=/home/usuario/proyecto

Mozo proporciona una interfaz gráfica para especificar el comando que debe ejecutarse.

Por eso puede funcionar como una especie de constructor visual de archivos .desktop.


16. Lanzadores que utilizan terminal

Existe además el concepto:

Terminal=true

Esto indica que el programa necesita ejecutarse dentro de una terminal.

Por ejemplo, un programa de consola podría tener:

[Desktop Entry]
Name=Mi programa
Exec=/usr/local/bin/programa
Terminal=true
Type=Application

Entonces el entorno de escritorio sabe que debe abrir una terminal para ejecutarlo.

Esto permite que Mozo pueda utilizarse no solamente para programas GTK gráficos, sino también para determinados programas de consola.


17. Aplicaciones de escritorio vs comandos

Podemos pensar en tres niveles:

Programa gráfico
firefox
   ↓
ventana gráfica
Programa de consola
htop
   ↓
terminal
Comando personalizado
script.sh
   ↓
acción personalizada

Mozo puede crear entradas que actúen como lanzadores para estos distintos casos, siempre que la configuración del .desktop sea adecuada.


18. ¿Dónde se almacenan las modificaciones?

Aquí entramos en una parte especialmente importante.

Linux tiene normalmente varias ubicaciones relacionadas con los archivos .desktop.

A nivel global pueden existir entradas en:

/usr/share/applications/

y a nivel del usuario:

~/.local/share/applications/

Las modificaciones personalizadas de un usuario suelen aprovechar la jerarquía de configuración del usuario en lugar de modificar directamente los archivos proporcionados por los paquetes del sistema.

Esto es fundamental porque:

/usr/share/applications/

puede ser gestionado por el sistema de paquetes.

Si modificases directamente esos archivos, una actualización podría sobrescribir tus cambios.

La separación:

Sistema
/usr/share/applications/

Usuario
~/.local/share/applications/

permite mantener personalizaciones independientes.


19. ¿Por qué esto es importante?

Supongamos que un paquete instala:

/usr/share/applications/programa.desktop

y tú lo modificas directamente.

Después haces:

sudo apt upgrade

El paquete puede reemplazar el archivo.

En cambio, una personalización de usuario puede utilizar:

~/.local/share/applications/

para modificar la presentación sin tocar el archivo original.

Por eso es mucho más seguro trabajar mediante las herramientas de configuración del escritorio.


20. El sistema de menús de freedesktop.org

Mozo no inventa desde cero el sistema de menús.

MATE participa en el ecosistema Linux de estándares de escritorio, especialmente en las especificaciones de freedesktop.org.

Dos piezas particularmente importantes son:

Desktop Entry Specification

y:

Desktop Menu Specification

La primera describe los lanzadores:

.desktop

La segunda define cómo organizar las aplicaciones en menús.

Por eso el flujo es más o menos:

Aplicación
     │
     ▼
Desktop Entry
     │
     │ .desktop
     ▼
Sistema de menús
     │
     │ categorías
     ▼
MATE
     │
     ▼
Menú de aplicaciones

Mozo proporciona una interfaz gráfica sobre buena parte de esta configuración.


21. Mozo y los archivos XML

Hay una segunda capa que suele pasar desapercibida.

La estructura de los menús puede estar relacionada con archivos XML de menú, por ejemplo:

/etc/xdg/menus/

y configuraciones específicas del usuario.

El sistema de menús puede utilizar información de este tipo para determinar:

qué categorías existen
qué entradas pertenecen a cada categoría
en qué orden aparecen
qué elementos se excluyen

Por eso la arquitectura es más compleja que simplemente:

leer todos los .desktop

El sistema combina Desktop Entries + reglas de menú.


22. Categorías de las aplicaciones

Una aplicación puede declarar categorías:

Categories=AudioVideo;

o:

Categories=Graphics;

o:

Categories=Network;WebBrowser;

Estas categorías ayudan al entorno de escritorio a decidir dónde colocarla.

Por ejemplo:

Categories=Graphics;

sugiere:

Aplicaciones
 └── Gráficos
       └── Aplicación

Mientras:

Categories=Network;

puede llevarla hacia:

Aplicaciones
 └── Internet
       └── Aplicación

Mozo permite modificar la organización resultante de una manera mucho más amigable.


23. Mozo no es simplemente un editor de texto

Podrías hacer todo esto manualmente con:

nano ~/.local/share/applications/mi-programa.desktop

pero Mozo evita tener que conocer todos los campos y sintaxis.

En vez de:

[Desktop Entry]
Name=...
Exec=...
Icon=...
Type=Application
Categories=...

trabajas con una interfaz gráfica.

Por eso su objetivo puede resumirse como:

convertir la edición técnica del sistema de menús en una tarea gráfica.


24. ¿Qué pasa cuando pulsas una aplicación en el menú?

Supongamos que creaste:

Aplicaciones
 └── Desarrollo
      └── Mi IDE

y haces clic en Mi IDE.

El flujo aproximado es:

clic
 │
 ▼
menú MATE
 │
 ▼
entrada .desktop
 │
 ▼
Exec=/opt/mi-ide/bin/ide
 │
 ▼
sistema de escritorio
 │
 ▼
proceso
 │
 ▼
/opt/mi-ide/bin/ide

Mozo no participa permanentemente en este proceso.

Mozo fue utilizado previamente para configurar la entrada.

Esto es importante:

Mozo
  ↓
CONFIGURACIÓN

MATE Menu
  ↓
LECTURA DE CONFIGURACIÓN

Aplicación
  ↓
EJECUCIÓN

25. Mozo y el menú del panel

En MATE normalmente puedes acceder al menú de aplicaciones mediante el panel.

Por ejemplo:

┌───────────────────────────────────────────────────────┐
│ Aplicaciones | Lugares | Sistema                      │
└───────────────────────────────────────────────────────┘

Mozo modifica la información que ese menú utiliza.

Por tanto, si creas:

Desarrollo
 └── Herramientas
      └── Mi aplicación

el menú puede mostrar esa nueva estructura después de que se actualice/refresque.


26. Personalización por usuario

Una de las ventajas de este sistema es que las modificaciones pueden ser específicas para cada usuario.

Imagina dos usuarios:

usuario1
usuario2

Pueden tener:

usuario1:
Aplicaciones
 ├── Desarrollo
 └── Servidores

usuario2:
Aplicaciones
 ├── Oficina
 └── Multimedia

aunque ambos tengan instaladas exactamente las mismas aplicaciones.

Esto se consigue gracias a la separación entre:

configuración del sistema

y:

configuración del usuario

27. Mozo y administración del sistema

Hay que tener cuidado con una confusión frecuente.

Si instalas una aplicación para todo el sistema:

sudo apt install programa

el .desktop normalmente pertenece al sistema.

Pero si personalizas el menú desde tu usuario, no necesariamente necesitas modificar ese archivo global.

Es preferible pensar en:

/usr/share/applications/

como:

"lo que proporcionan las aplicaciones instaladas"

y:

~/.local/share/applications/

como:

"mis modificaciones y lanzadores personales".


28. ¿Puede Mozo desinstalar programas?

No.

Si eliminas una entrada del menú:

Mozo
 ↓
Eliminar entrada

eso no equivale necesariamente a:

sudo apt remove programa

La diferencia es:

Eliminar del menú
        ≠
Desinstalar aplicación

Mozo trabaja sobre la presentación y configuración del menú.

El gestor de paquetes trabaja sobre el software instalado.


29. ¿Puede Mozo modificar el programa?

Tampoco.

Por ejemplo, si tienes:

Firefox

y en Mozo cambias:

Firefox

por:

Navegador web

Firefox seguirá siendo exactamente el mismo programa.

Mozo modifica:

cómo se presenta

no:

cómo funciona internamente

30. Una de las grandes ventajas: crear un menú "personal"

Aquí es donde Mozo resulta especialmente interesante.

Puedes construir una estructura adaptada a tu forma de trabajar.

Por ejemplo:

Aplicaciones
│
├── Trabajo
│   ├── Correo
│   ├── Navegador
│   └── Oficina
│
├── Desarrollo
│   ├── IDE
│   ├── Terminal
│   ├── Git
│   └── Docker
│
├── Administración
│   ├── Monitor del sistema
│   ├── Logs
│   └── Servicios
│
└── Multimedia
    ├── Música
    └── Vídeo

La clasificación puede ser mucho más útil que la clasificación original proporcionada por los desarrolladores de cada aplicación.


31. Un ejemplo práctico

Supongamos que tienes un script:

/home/usuario/scripts/backup.sh

Actualmente tienes que abrir una terminal y escribir:

/home/usuario/scripts/backup.sh

Con Mozo podrías crear:

Nombre:
Backup

Comando:
/home/usuario/scripts/backup.sh

Categoría:
Herramientas

y asociarle un icono.

Entonces obtienes:

Aplicaciones
 └── Herramientas
      └── Backup

Al hacer clic:

Backup
  │
  ▼
.desktop
  │
  ▼
Exec=/home/usuario/scripts/backup.sh
  │
  ▼
backup.sh

Esto convierte Mozo en una herramienta bastante potente para construir pequeños lanzadores personalizados.


32. Mozo como "editor de la base de datos" del menú

Aunque técnicamente no es una base de datos, una analogía útil es imaginar el sistema de menús como una colección estructurada:

Aplicaciones
│
├── entradas
│    ├── nombre
│    ├── comando
│    ├── icono
│    └── categorías
│
└── categorías
     ├── nombre
     ├── orden
     └── entradas

Mozo te proporciona una GUI para modificar esa estructura.

Por eso:

Mozo

se puede entender como:

una interfaz gráfica para administrar la estructura y las entradas del menú de aplicaciones de MATE.


33. Qué ocurre internamente

Podemos representar el funcionamiento completo así:

                 ┌─────────────────────┐
                 │       MOZO          │
                 │                     │
                 │ Editor gráfico      │
                 │ del menú            │
                 └──────────┬──────────┘
                            │
             ┌──────────────┴──────────────┐
             │                             │
             ▼                             ▼
       Desktop Entries                Menús
          .desktop                     XML
             │                             │
             └──────────────┬──────────────┘
                            │
                            ▼
                    Sistema de menús
                            │
                            ▼
                     MATE Panel/Menu
                            │
                            ▼
                       Usuario hace
                          clic
                            │
                            ▼
                          Exec
                            │
                            ▼
                        Programa

Y esta separación es la clave para entenderlo.


34. Características principales de Mozo

En términos prácticos, sus funciones más importantes son:

  • Crear nuevos lanzadores.
  • Editar lanzadores existentes.
  • Cambiar nombres.
  • Cambiar comentarios/descripciones.
  • Cambiar comandos.
  • Cambiar iconos.
  • Crear submenús.
  • Mover entradas.
  • Organizar categorías.
  • Ocultar aplicaciones.
  • Ocultar categorías.
  • Crear estructuras personalizadas.
  • Trabajar con configuraciones de usuario.
  • Integrarse con el sistema de menús de MATE.
  • Utilizar los estándares de entradas .desktop.
  • Evitar que tengas que editar manualmente archivos de configuración.

35. Lo más importante que debes recordar

Si reducimos todo Mozo a cinco conceptos:

              MOZO
                │
       ┌────────┼────────┐
       ▼        ▼        ▼
   Lanzadores  Menús   Categorías
       │        │        │
       └────────┼────────┘
                ▼
         .desktop + reglas
                │
                ▼
          Menú de MATE

Y hay tres cosas que no debes confundir:

Mozo
  ↓
EDITOR DEL MENÚ


MATE Menu
  ↓
PRESENTA EL MENÚ


.desktop
  ↓
DESCRIBE LA APLICACIÓN

Mientras que:

/usr/bin/programa

es el programa real.


La idea fundamental

La mejor manera de entender Mozo es verlo como una capa intermedia entre las aplicaciones instaladas y la interfaz gráfica del escritorio:

                 APLICACIONES
                      │
          ┌───────────┴───────────┐
          │                       │
          ▼                       ▼
      programa                 .desktop
     /usr/bin/...                 │
                                  │
                                  ▼
                               MOZO
                                  │
                         organización/
                          personalización
                                  │
                                  ▼
                           SISTEMA DE MENÚ
                                  │
                                  ▼
                         MENÚ DE MATE

Mozo no ejecuta las aplicaciones, no las instala y no las desinstala. Su trabajo consiste en editar cómo las aplicaciones y los lanzadores se organizan y presentan dentro del menú de MATE.

Y precisamente por estar basado en .desktop y en las especificaciones de menús de freedesktop.org, Mozo no es solamente una herramienta visual: es una interfaz gráfica sobre una parte importante de la infraestructura que Linux utiliza para construir sus menús de aplicaciones.

Espero que esta publicación te haya gustado. Si tienes alguna duda, consulta o quieras complementar este post, no dudes en escribir en la zona de comentarios. También puedes visitar Facebook, Twitter, Linkedin, Instagram, Pinterest y Feedly donde encontrarás información complementaria a este blog. COMPARTE EN!

0 comments:

No insertes enlaces clicables, de lo contrario se eliminará el comentario. Si quieres ser advertido via email de los nuevos comentarios marca la casilla "Notificarme". Si te ayudé con la publicación o con las respuestas a los comentarios, compártelo en Facebook, Twitter, Tumblr, Google +, Pinterest o Instagram. Gracias.