logo user

En entornos donde se requiere operar múltiples ordenadores de forma simultánea, la eficiencia es clave. Existen varios productos que permiten imitar la funcionalidad de un conmutador KVM (Keyboard, Video, Mouse), que históricamente permitía utilizar un solo teclado y ratón para controlar varios ordenadores girando físicamente un dial. En este apunte describo cómo instalo y utilizo Barrier, una solución KVM por software, sin necesidad de hardware adicional.

Mi caso de uso consiste en controlar con un solo teclado y ratón tres ordenadores. Dos de ellos son de sobremesa, un mac y un PC con windows. El tercero es un PC portatil Windows/Linux. La dificultad radica en el Mac, donde me encontré con un reto curiso y casi insuperable.


Introducción

Es muy importante saber y decirle a Barrier dónde están ubicados cada uno de ellos respecto al resto, de modo que el ratón fluja entre las pantallas de forma lógica. Hay que ejecutar el software en los tres y uno de ellos hará de servidor y el resto de clientes. Se comunican por la red local y cada ordenador debe tener un nombre:

  • slimbook (Linux X11)
  • macmini (macOS)
  • kymera (Windows 11)

Distribución de los monitores

 +---------+  +----------+  +----------+
 |Laptop   |  | Mac      |  | PC(Win)  |
 |slimbook |  | macmini  |  | kymera   |
 |cliente  |  | cliente  |  | SERVIDOR |
 +---------+  +----------+  +----------+

Servidor

Aquí es donde está el reto. Si elijo el Mac como Servidor, su teclado manda y carece de la tecla física AltGr para introducir caracteres internacionales. Apple los genera con sus teclados usando la tecla Opción (equivale a Alt). Si haces que el servidor sea el Mac, cuando estás controlando un PC (Windows o Linux) e intentas mandar esos caracteres simplemente NO FUNCIONAN. Al revés sí, cuando el PC es el Servidor (da igual Widnows o PC) con un teclado que tiene AltGr, entonces todos contentos (con ciertos ajustes).

Hubiese preferido configurar el Mac como Servidor (contaría con todas las virguerías de su Trackpad), pero como he dicho, si el Mac es el Servidor no puedes generar (cuando el teclado pasa al PC) las AltGr Keys \|@#[]{}~€¬ ni ` < > `. He dedicado muchas horas a investigar este tema y no consigo encontrar la solución.

El servidor de Barrier se ejecutará en kymera (Windows 11).

Windows 11:

Descargo Barrier desde su página oficial de GitHub. Selecciona la versión adecuada para Windows e instalo la aplicación. Si al instalar me pregunta Enable autoconfig and install Bonjour, le digo que Sí.

  • Abro Barrier y selecciona la opción “Servidor”.
  • Quito la opción “AutoConfig” y desactivo SSL

Utilizo la opción de fichero de configuración para el Servidor.

Clientes

En el MacOS (macmini), descargo el DMG desde la página de releases. En Linux lo instalo con sudo apt install -y barrier

  • Abro Barrier y selecciona la opción “Cliente”.
  • En las opciones avanzadas introduzco el nombre del equipo y quito SSL.
  • Configuro “autotal”

Dejo aquí el ejemplo de configuración del Mac, siendo del del portatil slimbook idéntico (solo cambia el nobmre del equipo)

Configuración como cliente
Configuración de la preferencias

Si hay problemas de conexión, verifica los firewalls y las reglas de red que puedan estar bloqueando el puerto predeterminado de Barrier (habitualmente el 24800).

Trucos

El teclado

Ayuda mucho si tu teclado tiene serigrafiadas la teclas de Windows y Mac a la vez. En mi caso uso un teclado que lo tiene, se trata del Logitech K380 que conecto por Bluetooth al windows.

Para que la experiencia sea correcta, en mi fichero de configuración para el Servidor (kymera) verás en la sección del Mac macmini que he reconfigurado y hecho una asociación para cambiar lahubicación de las tecla de control:

macmini:
  alt = super
  super = alt
  altgr = alt
  :

Unificar las teclas de control

Me refiero a decidir entre usar Ctrl+ o Cmd+ en todas las pantallas (mientras que estoy con Barrier). Tenía que decidir una de las dos, y la decisión ha sido fácil. Por desgracia, en los Mac es "obligatorio" usar CMD+, intentar cambiarlo es un infierno.

La decisión es usar CMD+ en todos los SO's, por lo tanto solo me queda remapear en Windows y en Linux. Por ejemplo, que CMD+C sea copiar tanto en Mac (lo es por defecto) como en Windows y Linux.

Windows: PowerToys

En Windows 11 he usado Microsoft PowerToys que me permite remapear unas cuantas combinaciones de teclas. Funciona excepcionalmente bien

  1. Descarga: Microsoft PowerToys desde la página oficial de GitHub.
  2. Instalación: Ejecuta el instalador y seguir las instrucciones en pantalla.
  3. Abrir PowerToys: “Keyboard Manager” en el panel izquierdo.
  4. Habilitar Keyboard Manager: Asegúrate de que la opción “Enable Keyboard Manager” esté activada.
  5. Remapear Atajos de Teclado: “Remap a Shortcut”.
    • Añado los siguientes remapeos:
      • Alt + ACtrl + A (Seleccionar todo)
      • Alt + CCtrl + C (Copiar)
      • Alt + FCtrl + F (Buscar)
      • Alt + NCtrl + N (Nueva ventana)
      • Alt + QALt(left) + F4 (Cerrar App)
      • Alt + RCtrl + R (Recargar)
      • Alt + SCtrl + S (Salvar)
      • Alt + TCtrl + T (Nueva pestaña)
      • Alt + VCtrl + V (Pegar)
      • Alt + WCtrl + W (Cerrar ventana)
      • Alt + XCtrl + X (Cortar)
      • Alt + ZCtrl + Z (Undo)
      • Alt + Shift + 4Win (left) + Shift + S (Captura de pantalla)
      • (Añadí otros remapeos según fuí trabajando y necesitándolos)
Remapeos para Windows

Linux: Solución parcial

X11: Es engorroso, no es tan sencillo como en Windows. Tengo pendiente documentarlo

Wayland: No funciona Barrier, así que lo dejo aquí pendiente para futura investigación.