Jump to content

Chrome OS devices (Español)

From ArchWiki
Advertencia Este artículo se basa en scripts y modificaciones de terceros, y puede dañar irreparablemente su hardware o datos.

Este artículo se creó para proporcionar información sobre cómo instalar Arch en los dispositivos Chrome OS de Acer, HP, Samsung, Toshiba y Google. Actualmente, esta página se está actualizando y se están creando más páginas específicas para cada modelo con la información que se indica a continuación.

Nota Este artículo describe cómo instalar Arch Linux activando el modo de desarrollador. Para obtener instrucciones sobre cómo instalar Arch Linux en un contenedor ChromeOS sin tener que habilitar el modo de desarrollador, consulte Crostini

Introducción

Modo de arranque heredado

Todos los dispositivos Chrome OS recientes basados ​​en Intel (a partir del Chromebook Pixel de 2013) cuentan con un modo de arranque heredado, diseñado para permitir al usuario arrancar Linux. El modo de arranque heredado tiene una región de firmware dedicada, RW_LEGACY, que está diseñada para que el usuario pueda escribir (de ahí la notación "RW") y es completamente independiente de la parte del firmware de ChromeOS (es decir, es segura de actualizar y no bloquea el dispositivo). Se habilita mediante la carga útil SeaBIOS de [1], el firmware de código abierto utilizado para todos los dispositivos Chrome OS (con la excepción de la primera generación de Chromebooks y algunos modelos ARM iniciales). SeaBIOS se comporta como una BIOS tradicional que arranca desde el MBR del disco y, desde allí, desde gestores de arranque estándar como Syslinux y GRUB.

Los modelos con un SoC basado en Core-i (Haswell, Broadwell, Skylake, KabyLake) suelen incluir una carga útil de modo de arranque heredado funcional; actualizar a una compilación de terceros puede proporcionar correcciones de errores y funciones adicionales. Los modelos con un SoC basado en Atom (Baytrail, Braswell, Apollolake) tienen la capacidad de usar el modo de arranque heredado, pero no incluyen una carga útil RW_LEGACY/SeaBIOS (esa parte del firmware está vacía). Estos modelos requieren la instalación de un firmware RW_LEGACY de terceros para que el modo de arranque heredado funcione.

Modelos sin Modo de Arranque Legacy/SeaBIOS

Para instalar Arch Linux en dispositivos Chrome OS que no incluyen SeaBIOS como parte del firmware, se puede optar por una de las siguientes opciones:

  • Si el dispositivo admite el Modo de Arranque Legacy, pero no incluye una carga útil RW_LEGACY funcional (o no la incluye), se puede flashear una carga útil SeaBIOS en la parte RW_LEGACY del firmware. Esto es totalmente seguro, ya que escribe en una zona de la imagen del firmware que permite la escritura del usuario, completamente independiente de Chrome OS y que no afecta a este. La forma más sencilla de instalar o actualizar el firmware RW_LEGACY en su dispositivo Chrome OS es mediante el Firmware Utility Script de MrChromebox, compatible con la mayor variedad de dispositivos y con las compilaciones de SeaBIOS más actualizadas. También se puede actualizar el firmware RW_LEGACY manualmente con la flashrom de Chrome OS (requiere descargar/compilar su propia compilación) o usar el script flash_chromebook_rom.sh de John Lewis (ya no es compatible).
  • Actualice un firmware personalizado completo que incluya una carga útil SeaBIOS o UEFI y elimine todas las partes específicas de ChromeOS.
  • Actualice la parte BOOT_STUB del firmware. Este método reemplaza la carga útil estándar de ChromeOS (carga de profundidad) con SeaBIOS. En teoría, es un método más seguro que actualizar el firmware completo, pero puede tener algunas limitaciones (por ejemplo, no es compatible con la suspensión ni con VMX). Esta es la opción Modificar ROM para ejecutar exclusivamente SeaBIOS del script flash_chromebook_rom.sh de John Lewis y la opción Flashear firmware BOOT_STUB del de MrChromebox.
  • Adopte el enfoque de ChrUbuntu, que utiliza el kernel y los módulos de Chrome OS.
  • Cree y firme su propio kernel; consulte [2] [3].

El proceso de Instalación descrito en esta página intenta explicar el método de instalación de Arch Linux en modelos sin SeaBIOS mediante la instalación de un firmware personalizado.

Introducción a la protección contra escritura del firmware

Todos los dispositivos Chrome OS cuentan con protección contra escritura del firmware, que restringe el acceso de escritura a ciertas regiones del chip flash. Es importante tenerlo en cuenta, ya que podría ser necesario desactivar la protección contra escritura del hardware durante la instalación (para actualizar los indicadores GBB o instalar un firmware personalizado).

Para más detalles, consulta Firmware personalizado para dispositivos Chrome OS/Protección contra escritura del firmware.

Requisitos previos

  • Visita la página de ArchWiki de tu Dispositivo Chrome OS.
  • Si no hay una página de ArchWiki para tu dispositivo entonces antes de continuar, recopila información sobre el dispositivo y, si logras instalar Arch Linux, considera agregar una nueva página de ArchWiki para tu modelo (puedes usar las páginas existentes en Category:Chrome OS devices (Español) como ejemplos).
  • Lee esta guía completa y asegúrate de comprender todos los pasos antes de realizar cualquier cambio.

Dispositivos Chrome OS

Consulta Dispositivos Chrome OS/Chromebook para comparar el hardware con detalles sobre la disponibilidad de SeaBIOS y la expansión del almacenamiento.

Recomendaciones y comentarios generales sobre el hardware

  • Las unidades SSD MyDigitalSSD M.2 NGFF son probablemente la opción más popular para actualizar el SSD interno de un dispositivo Chrome OS. Existen varios casos de fallos en las unidades SSD MyDigitalSSD en el tema de Acer C720 en los foros de Arch [4] [5] [6] y mucho más en la web. Si se actualizó la unidad SSD a un modelo MyDigitalSSD, se recomienda realizar copias de seguridad del sistema y de los datos con frecuencia. Podría ser recomendable cambiar la unidad SSD por una de otra marca. Tenga en cuenta que esto podría deberse a un problema de firmware, por lo que se recomienda actualizar el firmware. * Las unidades SSD Transcend MTS400 M.2 NGFF fallan (al menos con el firmware Coreboot estándar) cuando ALPM está habilitado. Actualmente, no hay ninguna actualización de firmware SSD que solucione este problema, por lo que se recomienda encarecidamente deshabilitar ALPM si se ha instalado un demonio de administración de energía (que lo habilitó). Consulta Resolución de errores relacionados con la administración de energía SATA y cómo deshabilitar ALPM en Chrome OS.

Instalación

Advertencia La instalación en dispositivos ChromeOS sin SeaBIOS requiere la instalación de un firmware personalizado, algunos de los cuales pueden bloquear el dispositivo.
Nota Si bien la siguiente información debería ser válida para todos los dispositivos ChromeOS con firmware coreboot (con o sin SeaBIOS), es posible que en algunos modelos sea necesario realizar ajustes adicionales.

Procedimiento general de instalación:

  • Activar el modo de desarrollador.
  • Dispositivo ChromeOS con modo de arranque Legacy/SeaBIOS funcional:
    • Activar el modo de arranque Legacy.
    • Establecer SeaBIOS como predeterminado (opcional, pero muy recomendable; requiere desactivar la protección contra escritura).
  • Dispositivo ChromeOS sin modo de arranque Legacy funcional:
    • Instalar uno de los siguientes tipos de firmware personalizado:
      • Instalar firmware RW_LEGACY (riesgo cero)
      • Instalar firmware BOOT_STUB (riesgo muy bajo).
      • Instalar firmware personalizado completo (riesgo bajo).
  • Preparar el medio de instalación.
  • Arranque el medio de instalación de Arch Linux e instale Arch.

Activación del modo de desarrollador

El modo de desarrollador es necesario para acceder a la interfaz de superusuario dentro de ChromeOS, lo cual es necesario para realizar cambios en el sistema, como permitir el arranque a través de SeaBIOS.

Advertencia Activar el modo de desarrollador borrará todos sus datos.

Para activar el modo de desarrollador:

  • Mantenga presionadas las teclas Esc+⟳ (donde normalmente estaría F3) y luego presione el botón Encendido. Esto entra en el modo de recuperación.
    • Las Chromebox tienen un botón de recuperación dedicado, que debe mantenerse presionado al encender.
  • Presione Ctrl+d (sin aviso). Te pedirá confirmación y luego el sistema revertirá su estado y habilitará el Modo de Desarrollador.
Nota
  • A veces, al presionar Ctrl+d se te solicitará que desactives la Verificación del SO. Hazlo y luego mantén presionada la tecla Ctrl+d de nuevo hasta que el sistema se reinicie con una advertencia para el modo de desarrollador.
  • Presiona Ctrl+d (o espera 30 segundos a que suene el pitido y arranque) en la pantalla de inicio blanca para acceder a ChromeOS.

Acceso a la consola de superusuario

Después de habilitar el Modo de Desarrollador, deberás acceder a la consola de superusuario. La forma de hacerlo depende de si has configurado ChromeOS o no.

Acceder a la consola de superusuario sin iniciar sesión en ChromeOS

Si no has configurado ChromeOS, simplemente presiona Ctrl+Alt+F2 (F2 es la flecha hacia adelante en la fila superior, →); verás un mensaje de inicio de sesión.

  • Usa chronos como nombre de usuario; no debería pedirte contraseña.
  • Conviértete en superusuario con sudo; usa el comando sudo su -.

Acceder a la consola de superusuario al iniciar sesión en ChromeOS =

Nota A partir de la versión 117 de ChromeOS, este método ya no funciona, ya que no se permite usar el comando sudo en la consola de crosh. El otro método mencionado anteriormente es la única forma de acceder a la consola de superusuario.

Si ya has configurado ChromeOS:

  • Abre una ventana de crosh con Ctrl+Alt+t.
  • Abre una consola bash con el comando shell.
  • Conviértete en superusuario con sudo y usa el comando sudo su - para hacerlo.

Habilitación del modo de arranque heredado

Si su dispositivo ChromeOS no viene con compatibilidad con el modo de arranque heredado a través de SeaBIOS, o si prefiere instalar un firmware personalizado, continúe con #Instalación de un firmware personalizado.

Esto habilitará la versión preinstalada de SeaBIOS a través de la pantalla del modo de desarrollador en coreboot.

  • Dentro de su shell de superusuario, introduzca:
# crossystem dev_boot_legacy=1
  • Reinicie el equipo.

Ahora puede iniciar SeaBIOS presionando Ctrl+l en la pantalla de inicio blanca.

Nota Si planea seguir usando la ruta de SeaBIOS preinstalada y cree que no le gustará tener que presionar Ctrl+l cada vez que inicie para acceder a SeaBIOS, puede configurar coreboot para que inicie SeaBIOS por defecto. Esto requiere deshabilitar la protección contra escritura del firmware del hardware.

Ahora debería tener SeaBIOS habilitado en su dispositivo ChromeOS. Si decide no configurarlo como predeterminado, puede continuar con #Instalación de Arch Linux.

Arrancar con SeaBIOS predeterminado =

Para arrancar SeaBIOS de forma predeterminada, deberá ejecutar el script set_gbb_flags.sh, que forma parte de ChromeOS. El script utiliza flashrom y gbb_utility para leer la región de firmware RO_GBB, modificar los indicadores y escribirlos de vuelta en la memoria flash. Los indicadores GBB también se pueden configurar mediante el Firmware Utility Script de MrChromebox en ChromeOS o Arch (este último requiere arrancar con parámetros específicos del kernel para flexibilizar las restricciones de acceso a la memoria).

Advertencia Si no configura los indicadores GBB, una batería completamente descargada o desconectada restablecerá el indicador dev_boot_legacy a su valor predeterminado, lo que impedirá el arranque en modo de arranque heredado. Si bien esto solía requerir recuperar Chrome OS y borrar la instalación de Arch Linux del almacenamiento interno, los desarrolladores de GalliumOS han creado un conjunto de imágenes de recuperación "fixflags" que, en lugar de borrar el almacenamiento interno, simplemente restablecen el indicador dev_boot_legacy. Consulte galliumos.org/fixflags
  • Desactive la protección contra escritura de hardware.
Para encontrar la ubicación del tornillo/interruptor/puente de protección contra escritura de hardware y cómo desactivarlo, visite la página de ArchWiki de su dispositivo ChromeOS. Si no hay información sobre tu dispositivo en ArchWiki, consulta Información para desarrolladores de dispositivos ChromeOS y página de Chromebooks de coreboot.
Más información sobre la protección del firmware disponible en Dispositivos Chrome OS/Firmware personalizado #Protección contra escritura del firmware.
# flashrom --wp-disable
  • Comprueba que la protección contra escritura esté desactivada.
# flashrom --wp-status
  • Ejecuta set_gbb_flags.sh sin parámetros. # /usr/share/vboot/bin/set_gbb_flags.sh
  • Esto mostrará todos los indicadores disponibles. Los indicadores que nos interesan son:
GBB_FLAG_DEV_SCREEN_SHORT_DELAY 0x00000001
GBB_FLAG_FORCE_DEV_SWITCH_ON 0x00000008
GBB_FLAG_FORCE_DEV_BOOT_LEGACY 0x00000080
GBB_FLAG_DEFAULT_DEV_BOOT_LEGACY 0x00000400
  • Para configurar SeaBIOS como predeterminado, con un tiempo de espera de 1 s, evitar salir accidentalmente del modo de desarrollador con la barra espaciadora y garantizar que el modo de arranque heredado permanezca habilitado en caso de descarga o desconexión de la batería, configuramos los indicadores de la siguiente manera:
# /usr/share/vboot/bin/set_gbb_flags.sh 0x489
  • Activar de nuevo la protección contra escritura del software.
# flashrom --wp-enable
Nota Todos estos pasos están automatizados por el script de utilidad de firmware de MrChromebox, así que si lo usas para instalar/actualizar tu firmware RW_LEGACY, lo más fácil es configurar las opciones también mediante el script.

Tu dispositivo ChromeOS arrancará ahora en SeaBIOS por defecto. Puedes continuar con la Instalación de Arch Linux; si tu dispositivo arranca correctamente, puedes volver a habilitar la protección contra escritura de hardware.

Instalación de un firmware personalizado

Nota Los siguientes pasos explican cómo instalar un firmware personalizado desde ChromeOS. Para obtener información sobre cómo instalar un firmware personalizado desde Arch Linux, visita la página Dispositivos Chrome OS/Firmware personalizado
  • Desactiva la protección contra escritura de hardware.
Deberás desactivar la protección contra escritura de hardware mediante un interruptor, un puente o un tornillo, o desconectando la batería. Para saber cómo desactivarla, visita la página de ArchWiki de tu dispositivo ChromeOS. Si no hay información sobre tu dispositivo en ArchWiki, consulta Información para desarrolladores de dispositivos ChromeOS y página de Chromebooks de coreboot.
Más información sobre la protección del firmware disponible en Dispositivos Chrome OS/Firmware personalizado.
  • Introduce el comando para ejecutar el script de firmware de MrChromebox o John Lewis.
    Nota No publicamos aquí para que tengas que visitar el sitio y leer las instrucciones antes de continuar.
  • Tras salir del script, asegúrate de copiar la copia de seguridad del firmware a un dispositivo de almacenamiento externo antes de reiniciar el sistema (si el script no te ofrece esa opción).

Ahora deberías tener un firmware personalizado instalado en tu dispositivo; cruza los dedos y reinicia.

Después de flashear el firmware, puedes continuar con la #Instalación de Arch Linux.

Instalación de Arch Linux

Preparación del medio de instalación

Crea una unidad USB de instalación de Arch Linux.

Arranque del medio de instalación

  • Conecte la unidad USB al dispositivo ChromeOS e inicie SeaBIOS con Ctrl+l en la pantalla de inicio blanca (si SeaBIOS no está configurado como predeterminado).
  • Presione Esc para abrir el menú de arranque y seleccione el número correspondiente a su unidad USB.

Debería aparecer el menú de arranque del instalador de Arch Linux y el proceso de instalación puede continuar con normalidad.

Nota Por ahora, elija [[GRUB (Español)]|GRUB]] como gestor de arranque: puede elegir MBR o GPT: consulte Particionado. Si elige GPT, no olvide agregar una BIOS Boot Partition. Consulte también Problemas conocidos.

Después de terminar la instalación de Arch Linux, continúe con la #Configuración posterior a la instalación.

Configuración posterior a la instalación

Kernels parcheados

Nota Probablemente pueda ignorar esta sección a menos que su dispositivo requiera compatibilidad con kernels parcheados.

Se recomienda usar el paquete oficial linux para la mayoría de los dispositivos Chrome OS, con la excepción de los dispositivos más nuevos, que podrían necesitar compatibilidad con kernels parcheados.

Si sus dispositivos requieren un kernel parcheado, se recomienda revisar la lista de parches y determinar si la lista de parches se está reduciendo lo suficiente como para que ya no necesite un kernel parcheado y pueda usar el paquete oficial linux.

Consulte Kernels para obtener más información.

Controlador de vídeo

Consulte |Gráficos Intel.

Panel táctil y pantalla táctil

Consulte Touchpad Synaptics, libinput y Touchscreen.

Módulos del kernel para touchpad y pantalla táctil

Desde el kernel 3.17, todos los parches relacionados se integraron en el código fuente original, lo que significa que el paquete linux del núcleo es compatible con estos dispositivos.

¿Qué hacer si tu touchpad o pantalla táctil no es compatible?
  • No te preocupes, los desarrolladores deberían poder añadirlo mediante solicitud, ya que el código fuente de Chromium OS incluye los cambios relacionados.
  • También puedes intentar encontrar las confirmaciones relacionadas y crear un parche adecuado. Algunos consejos:
    • Analiza tu sistema Chrome OS y busca los elementos sospechosos obvios, como el registro de arranque, /proc/bus/input/devices y /sys/devices.
    • El código fuente del kernel de Linux para Chromium OS está en [7]. ** Cada código fuente del kernel para la última versión de Chromium OS tiene su propia rama, con la convención de nombres: release-R*-*-chromeos-KERNELVER, donde R*-* corresponde a la versión de Chromium OS y KERNELVER a la versión del kernel.
    • Revisa el registro de Git de drivers/platform, drivers/i2c/busses y drivers/input/touchscreen.

Configuración del panel táctil

Hay algunas opciones para configurar el panel táctil:

Controladores de entrada de Chromium OS

xf86-input-cmtAUR ofrece una versión del controlador de entrada de Chromium OS: xf86-input-cmt como alternativa al controlador de entrada de Synaptics. Proporciona archivos de configuración optimizados para la mayoría de los dispositivos y ofrece funciones que Synaptics no ofrece, como el rechazo de la palma. Además, habilita funciones que no están habilitadas por defecto en el controlador de entrada de Chromium OS, como la función de arrastrar con un toque.

Tenga en cuenta que el controlador de entrada no funciona en algunas circunstancias en las que no tiene permisos suficientes para acceder a /dev/input/event. Esto le afectará si usa startx para cargar una sesión DE/WM. En este caso, o si el controlador no se carga en cualquier otro caso, debe ejecutar:

# usermod -a -G input $USER

Donde $USER es el usuario actual que desea usar el controlador de entrada.

También debe tenerse en cuenta que algunos usuarios han informado que el controlador no funciona en GDM, pero funciona normalmente después de iniciar sesión. Si esto le afecta, debe ejecutar:

# usermod -a -G input gdm

Tras reiniciar, debería poder usar el panel táctil con normalidad.

Solución de la suspensión

Nota La suspensión de la tapa podría no funcionar inmediatamente después del arranque; es posible que deba esperar un poco.

Las siguientes instrucciones le ayudarán a solucionar la función de suspensión. Si tiene un SeaBIOS preinstalado o un SeaBIOS precompilado de John Lewis, necesitará esta solución. Este procedimiento no es necesario con el firmware personalizado de Matt DeVillier, ya que los dispositivos de activación ACPI problemáticos (como TPAD) están deshabilitados por firmware.

Se han analizado algunas alternativas y podrían funcionar mejor para algunos usuarios. [8] [9]

Para solucionar la suspensión, la idea general es deshabilitar el módulo EHCI_PCI, que interfiere con el ciclo de suspensión. Hay varias maneras de lograrlo.

Con parámetros del kernel

Agregue lo siguiente a su configuración de GRUB:

/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="modprobe.blacklist=ehci_pci"

Luego, reconstruya su configuración de GRUB. Después de reconstruir su configuración de GRUB, reinicie el equipo.

Un usuario informa que necesita incluir en la lista negra atmel_mxt_ts y cros_ec_typec en lugar del módulo mencionado para que la suspensión y la reanudación funcionen en una Chromebook Acer CX5500 de 11.ª generación con Arch Linux mediante SeaBIOS.

Con systemd

Este artículo o sección necesita ser traducido.

Notas: la versión original en inglés tiene problemas de precisión. (Discusión en Talk:Chrome OS devices (Español)#)

Corrección de audio

Modelos basados ​​en Apollolake

Una posible solución para resolver problemas de audio en modelos basados ​​en Apollolake es usar el controlador SOF DSP ​​y redefinir la topología utilizada en el flujo de procesamiento de audio por el firmware.

Esto probablemente resolverá problemas relacionados con la falta de dispositivos de audio o errores de topología en el búfer del kernel.

La topología fue creada por un mantenedor de Sound Open Firmware y probada por MrChromebox (véase discusión en Github). Como indica MrChromebox, esto puede causar problemas de escalado de audio (por ejemplo, el rango de salida de audio es de 0 a 10 en lugar de 0 a 100) y tipos de dispositivos de salida de audio incorrectos (por ejemplo, auriculares en lugar de altavoces).

  • Instalar sof-firmware.
  • Descargar y descomprimir sof-apl-da7219.tplg.gz.
  • Copie el archivo de topología .tplg a /lib/firmware/intel/sof-tplg.
  • Seleccione manualmente el controlador DSP de SOF y especifique una ruta alternativa para el firmware de SOF editando dos configuraciones del módulo del kernel usando modprobe u otro método (por ejemplo, los parámetros del kernel del gestor de arranque).
/etc/modprobe.d/inteldspcfg.conf
options snd-intel-dspcfg dsp_driver=3
options snd-sof-pci fw_path="intel/sof"

Modelos basados ​​en Baytrail

El audio en la mayoría de los modelos de Baytrail debería funcionar en linux desde que se integró la corrección en la versión 4.19.7 [10]; para corregir la regresión en la versión 4.18.15, consulte el informe de errores. [11].

Es probable que también necesite usar alsamixer de alsa-utils para activar las funciones "Mezclador de altavoz izquierdo, DAC izquierdo" y "Mezclador de altavoz derecho, DAC derecho". Para más información, consulte el error FS#48936.

Si usa max98090, es posible que también necesite instalar Sound Open Firmware y enlazar simbólicamente /usr/lib/firmware/sof-cht-max98090.tplg a /usr/lib/firmware/sof-byt-max98090.tplg.

Modelos basados ​​en Haswell

Una o más de las siguientes opciones podrían ayudar a resolver problemas relacionados con el audio; la configuración del módulo snd_hda_intel es la más útil. Es muy posible que no necesite realizar ningún cambio. * Crea /etc/modprobe.d/alsa.conf. La opción index garantizará que la salida analógica sea la predeterminada (y no HDMI). La opción model notificará al controlador el modelo de la placa, lo que permitirá usar el micrófono integrado (puedes probar model=alc283-sense-combo o model=,alc283-dac-wcaps).

/etc/modprobe.d/alsa.conf
options snd_hda_intel index=1 model=,alc283-chrome
  • Use el archivo ~/.asoundrc de [12].
  • Si tiene problemas con los auriculares (quizás no se reproduce el audio), pruebe alsactl restore (requiere alsa-utils) en la terminal. Ahora, ALSA debería cambiar automáticamente de canal al usar auriculares/altavoces.

Teclas de acceso rápido

Las teclas de función de Chromebook son ​​reconocidas como estándar F1F10 por el kernel, por lo que es preferible asignarlas según su apariencia. También sería útil que las teclas Supr, Inicio, Fin, Re Pág, Av Pág, que en Chrome OS se asignan a Alt+: Retroceso, Derecha, Izquierda, Arriba, Abajo.

Uso de xkeyboard

xkeyboard-config 2.16-1 añadió un modelo chromebook que habilita las funciones de estilo Chrome OS para las teclas de función. Puedes, por ejemplo, configurarlo usando localectl set-x11-keymap us chromebook. Consulta la definición de chromebook en /usr/share/X11/xkb/symbols/inet para ver las asignaciones completas.

Uso de keyd =

keyd (keyd) es una potente herramienta de bajo nivel que intercepta eventos de evdev y permite reasignarlos de forma flexible (por ejemplo, usando combinaciones de teclas arbitrarias o permitiendo diferentes comportamientos al mantener pulsada una tecla). A diferencia de otras herramientas, las claves seleccionadas se envían mediante un dispositivo evdev emulado, por lo que funciona de forma transparente en shell, X11 o Wayland.

El archivo de configuración principal se almacena en /etc/keyd/default.conf. Para reasignar la fila superior para que envíe eventos de teclas de función si se presiona sola, y F1-F10 cuando se presiona junto con la tecla Meta, se puede usar la siguiente configuración:

/etc/keyd/default.conf
[ids]
*

[main]
f1 = atrás
f2 = adelante
f3 = f5
f4 = f11
f5 = M-f8
f6 = bajar brillo
f7 = subir brillo
f8 = silenciar
f9 = bajar volumen
f10 = subir volumen

[meta]
f1 = f1
f2 = f2
f3 = f3
f4 = f4
f5 = f5
f6 = f6
f7 = f7
f8 = f8
f9 = f9
f10 = f10

izquierda = inicio
derecha = fin
arriba = re página
abajo = av página

retroceso = suprimir

[mayúsculas]
meta = Bloq Mayús

Las últimas filas permiten reasignar Meta+<flecha> a Inicio, Fin, Re Pág, Av Pág, Meta+Retroceso a Supr y Mayús+Meta a Bloq Mayús.

Para invertir el comportamiento de la fila superior (es decir, F1-F10 por defecto, las teclas multimedia si se pulsan junto con Meta) basta con mover el contenido de las dos estrofas:

/etc/keyd/default.conf
[ids]
*

[meta]
f1 = atrás
f2 = adelante
f3 = f5
f4 = f11
f5 = M-f8
f6 = bajar brillo
f7 = subir brillo
f8 = silencio
f9 = bajar volumen
f10 = subir volumen

izquierda = inicio
derecha = fin
arriba = re página
abajo = av página

retroceso = suprimir

[mayúsculas]
meta = bloq mayús

También es posible usar otras teclas en lugar de Meta, solo necesita cambiar el nombre de la estrofa a la tecla deseada (por ejemplo, control, alt o shift en lugar de meta).

Uso de Sxhkd =

Una forma de configurar las teclas de acceso rápido es usar el demonio Sxhkd. Además de sxhkd, también se requieren amixer(1), xorg-xbacklight y xautomation.

Consulte [13] para ver un ejemplo de configuración en ~/.config/sxhkd/sxhkdrc.

Uso de Xbindkeys

Otra forma de configurar las teclas de acceso rápido es usar Xbindkeys. Además de xbindkeys, también se requieren amixer(1), xorg-xbacklight y xvkbdAUR.

Configuración alternativa de xbindkeys

Volchange (originado en los Foros de usuarios de Debian) permite manipular el volumen con PulseAudio en lugar de usar amixer(1). Además de Volchange, se requieren xorg-xbacklight y xvkbdAUR.

Consulta [16] para encontrar un ~/.xbindkeysrc compatible.

Asignación en GNOME con gsettings definido

Algunas teclas de función se pueden asignar en Gnome con la ventaja de las notificaciones del HUD sobre cambios (como cambios de volumen y brillo), lo que puede complementar uno de los métodos de asignación mencionados anteriormente. Este ejemplo enlazado asigna las acciones de brillo y volumen. Tenga en cuenta que se requiere xdotool.

Manejo de la tecla de encendido y el interruptor de tapa

Ignorar el uso de logind =

De fábrica, systemd-logind capturará los eventos de la tecla de encendido y el interruptor de tapa y los gestionará: apagará la Chromebook al pulsar la tecla de encendido y la suspenderá al cerrar la tapa. Sin embargo, esta política puede ser un poco estricta, dado que la tecla de encendido es una tecla normal en la esquina superior derecha del teclado que podría pulsarse accidentalmente.

Para configurar logind para que ignore las pulsaciones de la tecla de encendido y los interruptores de la tapa, agregue las líneas a logind.conf a continuación.

/etc/systemd/logind.conf
HandlePowerKey=ignore
HandleLidSwitch=ignore

Luego, reinicie logind para que los cambios surtan efecto.

Los eventos de la tecla de encendido y los interruptores de la tapa seguirán registrándose en journald por logind. Consulte Power management (Español)#Eventos ACPI.

Ignorar por Gnome

Instalar gnome-tweaks, abra la herramienta Tweak Tool y, en la sección "Encendido", cambie la acción del botón de encendido.

Problemas conocidos

Syslinux

Siga atentamente las instrucciones de instalación de Syslinux. Intente la instalación manual para determinar el origen del problema. Si ve Sistema operativo faltante, es posible que necesite usar el binario correcto del cargador de arranque. Si syslinux no funciona, pruebe con otro cargador de arranque, como GRUB.

Consulte también