Publicado 2022-05-20. | Modificado 2022-06-04.
Palabras clave: openbsd mate
Notas para la instalación y configuración del escritorio MATE en OpenBSD:
Instalar los paquetes mate
y mate-extras
:
$ doas pkg_add mate mate-extras
Seguir las indicaciones del paquete mate que se encuentran en el archivo
/usr/local/share/doc/pkg-readmes/mate
:
Agregar mate-session
en ~/.xsession
:
exec /usr/local/bin/ck-launch-session /usr/local/bin/mate-session
Habilitar messagebus
para ver el indicador de la conexión AC/batería:
$ doas rcctl enable messagebus
$ doas rcctl start messagebus
Configuración de bloqueo al cerrar la tapa.
Por defecto, al cerrar la tapa del laptop el equipo entra en suspensión y no se bloquea la pantalla, por lo que al volver a levantar la tapa y encender el equipo volvemos al escritorio y no está bloqueado. Esto es un problema de seguridad. Buscando en internet se encuentra la solución en el post Automatically lock screen on OpenBSD using xidle and xlock, la cual adaptandola queda como:
Configurar el uso de xidle en ~/.xsession
agregando antes del final del
archivo la linea:
xidle -delay 5 -nw -program "/usr/local/bin/mate-screensaver-command -l" -timeout 0 &
que ejecuta el programa mate-screensaver-command para nunca bloquear la pantalla.
En la documenentación de xidle
no se indica que el parámetro de
-timeout
debe ser positivo. Entendiendo que con el valor 0
no se
activa nunca, evitamos tener un conflicto entre el timeout dado por
xidle
y la configuración del salvapantallas de mate configurada por la
UI.
Crear script /etc/apm/suspend
de apmd para que al suspenderse el equipo
se envíe una señal al programa xidle
:
$ doas mkdir /etc/apm
$ cat <<'END' | doas tee /etc/apm/suspend
#!/bin/sh
pkill -USR1 xidle
END
$ doas chmod +x /etc/apm/suspend
Habilitar apmd
:
$ doas rcctl enable apmd
$ doas rcctl start apmd
Agregar indicador de mayusculas presionadas en barra de tareas y quitar íconos de escritorio.
Esto en debian se realiza con el paquete mate-tweak, pero en openbsd no existe aún ese paquete, por lo que hay que modificar los settings utilizando dconf.
Para obtener los valores a modificar utilizando dconf
se puede
inspeccionar el código fuente de mate-tweak y también los archivos en
/usr/local/share/glib-2.0/schemas/
:
https://github.com/ubuntu-mate/mate-tweak/blob/22.04.8/mate-tweak#L522:
self.set_bool('org.mate.peripherals-keyboard-xkb.general', None, 'duplicate-leds', self.keyboard_led_enabled)
Buscando el significado de la propiedad se confirma que es lo que estamos buscando:
$ grep -h -A4 duplicate-leds /usr/local/share/glib-2.0/schemas/org.mate.*
<key name="duplicate-leds" type="b">
<default>false</default>
<summary>Show keyboard leds indicator</summary>
<description>Show keyboard leds indicator</description>
</key>
https://github.com/ubuntu-mate/mate-tweak/blob/22.04.8/mate-tweak#L1631-L1636:
self.init_checkbox("org.mate.background", "show-desktop-icons", "checkbox_show_icons")
self.init_checkbox("org.mate.caja.desktop", "computer-icon-visible", "checkbox_computer")
self.init_checkbox("org.mate.caja.desktop", "home-icon-visible", "checkbox_home")
self.init_checkbox("org.mate.caja.desktop", "network-icon-visible", "checkbox_network")
self.init_checkbox("org.mate.caja.desktop", "trash-icon-visible", "checkbox_trash")
self.init_checkbox("org.mate.caja.desktop", "volumes-visible", "checkbox_volumes")
Volvemos a buscar el significado de las propiedades anteriores:
$ grep -h -A4 \
-e show-desktop-icons \
-e computer-icon-visible \
-e home-icon-visible \
-e trash-icon-visible \
/usr/local/share/glib-2.0/schemas/org.mate.*
<key name="show-desktop-icons" type="b">
<default>true</default>
<summary>Show Desktop Icons</summary>
<description>Have MATE file manager (Caja) draw the desktop icons.</description>
</key>
--
<key name="home-icon-visible" type="b">
<default>true</default>
<summary>Home icon visible on desktop</summary>
<description>If this is set to true, an icon linking to the home folder will be put on the desktop.</description>
</key>
<key name="computer-icon-visible" type="b">
<default>true</default>
<summary>Computer icon visible on desktop</summary>
<description>If this is set to true, an icon linking to the computer location will be put on the desktop.</description>
</key>
<key name="trash-icon-visible" type="b">
<default>true</default>
<summary>Trash icon visible on desktop</summary>
<description>If this is set to true, an icon linking to the trash will be put on the desktop.</description>
</key>
Ahora, el problema que hay que tener en cuenta es que en el código fuente se
indica el id del esquema y dconf
utiliza el path del esquema.
Para obtener los path a partir de los id del esquema:
$ grep -h -e '<schema .*org.mate.caja.desktop' \
-e '<schema .*org.mate.background' \
-e '<schema .*org.mate.peripherals-keyboard-xkb.general' \
/usr/local/share/glib-2.0/schemas/org.mate.*
<schema id="org.mate.background" path="/org/mate/desktop/background/">
<schema id="org.mate.caja.desktop" path="/org/mate/caja/desktop/" gettext-domain="caja">
<schema id="org.mate.peripherals-keyboard-xkb.general" path="/org/mate/desktop/peripherals/keyboard/general/">
Y ya podemos utilizar dconf
para establecer las propiedades anteriores:
$ dconf write /org/mate/desktop/peripherals/keyboard/general/duplicate-leds true
$ dconf write /org/mate/desktop/background/show-desktop-icons false
$ dconf write /org/mate/caja/desktop/computer-icon-visible false
$ dconf write /org/mate/caja/desktop/home-icon-visible false
$ dconf write /org/mate/caja/desktop/trash-icon-visible false
Listar primero los directorios en los dialogos de GTK. La solución se encuentra publicada en internet:
$ dconf write /org/gtk/settings/file-chooser/sort-directories-first true
Agregar al grupo operator
a los usuarios que pueden apagar y reiniciar el
equipo para que no pida contraseña al momento de realizar la operación:
$ doas usermod -G operator jmpc
NOTA: los settings pueden modificarse desde la UI de los programas del
escritorio MATE por lo que no se utiliza para ello dconf
.
Con esto ya está prácticamente configurado el escritorio MATE; solo quedan ajustes menores mediante las preferencias de MATE.