Idiomas: English · Nederlands · Deutsch · Español · Français · Italiano · Português · Papiamentu · Frysk

Índice / Artículos / Refinando la experiencia de mi SO para tablets

Refinando la experiencia de mi SO para tablets

Surface Go 2 con 4G/LTE, Debian GNU/Linux e i3wm

Publicado
Actualizado
(creado )
Escrito por
Willem L. Middelkoop
Temas
Libertad · SSH · crear · diseño · experimento · tutorial · portátil · linux · minimalista · tablet
Versión humana de este artículo
https://willem.com/es/2020-09-28_refinando-la-experiencia-de-mi-so-para-tablets/
English
Refining my tablet OS experience
Nederlands
Mijn tablet-OS-ervaring verfijnen
Deutsch
Mein Tablet-OS-Erlebnis optimieren
Français
Peaufiner l'expérience de mon système de tablette
Italiano
Rifinire la mia esperienza con il sistema operativo per tablet
Português
Refinar a minha experiência de SO para tablet
Papiamentu
Refiná mi eksperensia di sistema operativo pa tablèt
Frysk
Myn tablet-OS-ûnderfining ferfine
Idiomas
Traducido del original en inglés por un modelo de lenguaje en dos pasadas (traducción y corrección) con un glosario y un corrector ortográfico; aún no revisado por un hablante nativo.

Resumen

A principios de este año intenté crear mi propio sistema operativo para tableta instalando Debian GNU/Linux en una Microsoft Surface Go. Aprendí un montón sobre lo que me gusta de las tabletas. Aun así, seguía prefiriendo mi iPad Pro, sobre todo por su experiencia de uso tan pulida. Esta vez me propuse refinar el software de mi tableta para sustituir al iPad.

Texto completo

Linux en tabletas (Surface)

Si estás pensando en instalar Linux en una tableta, no eres el único. Mi artículo anterior sobre instalar Debian GNU/Linux en la Surface Go tuvo muchísima repercusión. Por lo visto, muchos buscan una alternativa a los sistemas operativos cerrados que suelen traer las tabletas (como iPadOS, Android o Windows 10S).

El hardware de Microsoft Surface y Linux

La historia está llena de dulces ironías: es Microsoft quien fabrica un hardware bastante bonito que funciona muy bien con Linux. Su gama Surface incluye varios portátiles y tabletas. La página de reddit "SurfaceLinux" está llena de historias de usuarios interesantes que merece la pena leer. Hay gente que lo hace, y tú también puedes.

El hardware de Microsoft Surface es popular porque es realmente bueno
El hardware de Microsoft Surface es popular porque es realmente bueno

Primer intento: Surface Go (frente al iPad Pro)

Tras instalar y adaptar Debian GNU/Linux en la Surface Go, al que bauticé "Willem OS", intenté convertirlo en mi ordenador principal. Si sigues mi blog, sabrás que llevo años usando iPads y tabletas como ordenador principal. Al final concluí que mi primera versión de "WillemOS" no era lo bastante buena: el iPad Pro le sacaba años luz en una experiencia de uso pulida.

De este primer intento aprendí muchísimo y entendí mejor lo que busco en una tableta. Busco un software sencillo pero versátil para mi tableta.

Pero "sencillo" es muy difícil de conseguir. Para que las cosas sean de verdad sencillas, hay que integrar a la perfección el hardware y el software. Apple lo hace bien, y el iPad Pro ofrece una gran experiencia porque:

  • sigues donde lo dejaste: lo guarda todo cuando lo metes en la mochila y está listo (al instante) para continuar cuando lo sacas. Sin guardar a mano ni (re)iniciar.
  • internet en todas partes: cambia solo entre redes WiFi y 4G/LTE; no tienes que hacer nada, simplemente 'funciona'
  • cualquier orientación y postura: el iPad funciona de maravilla sin teclado externo ni ratón, así que lo puedes usar en muchas situaciones (¡además, la pantalla ajusta sola el brillo y el balance de blancos a lo que te rodea!)

Resulta que lograr todo esto con Debian GNU/Linux en la Surface es difícil. Mi primera tableta requería mucha intervención manual y, comparada con el iPad Pro, era engorrosa.

Segundo intento: Surface Go 2

Este año Microsoft lanzó una nueva Surface Go, la Surface Go 2. Tiene un procesador más rápido (¡hasta un 64 % más!), marcos más finos y una pantalla mejorada. Es una actualización muy digna que la acerca mucho más al iPad Pro de 11 pulgadas en cuanto a hardware. Para mi segundo intento de crear la tableta definitiva, elegí el modelo superior de la Surface Go 2:

  • Pantalla táctil de 10,5” (1920x1250, 220PPI), formato 3:2, Corning® Gorilla® Glass 3
  • Procesador Intel Core m3 (8.ª generación)
  • 8GB de RAM
  • Wifi 802.11a/b/g/n/ac/ax
  • LTE Advanced (módem Qualcomm® Snapdragon™ X16 LTE)
  • Bluetooth 5.0
  • Intel UHD Graphics 615
  • Dimensiones: 245 mm x 175 mm x 8,3 mm
  • SSD de 256GB
  • Tarjeta MicroSDXC de 512GB
  • 1 puerto USB-C y 1 puerto Surface Connect
Microsoft Surface Go 2 con Type Cover negra y Surface Pen: ¡una pieza de hardware estupenda!
Microsoft Surface Go 2 con Type Cover negra y Surface Pen: ¡una pieza de hardware estupenda!

Instalar Debian GNU/Linux en la Surface Go 2

La Surface Go 2 se parece mucho a su predecesora a la hora de hacer una instalación básica de tu distribución GNU/Linux favorita. Seguí aquí los mismos pasos de la instalación original de la Surface Go.

Instalar Debian GNU/Linux en la Surface Go 2 es muy parecido a hacerlo en la Surface Go original
Instalar Debian GNU/Linux en la Surface Go 2 es muy parecido a hacerlo en la Surface Go original

En resumen, estos son los pasos para instalar Linux en tu Surface:

  • 1) Actualiza Windows 10 e instala todos los parches y actualizaciones de firmware
  • 2) Crea un medio de instalación de arranque con tu distribución GNU/Linux favorita
  • 3) (Opcional) conecta un cable ethernet
  • 4) Arranca la Surface desde la unidad USB
  • 5) Instala el sistema operativo con el instalador
  • 6) Afina y optimiza la experiencia del software
Debian GNU/Linux con i3wm ("alias WillemOS") funcionando en la Surface Go 2
Debian GNU/Linux con i3wm ("alias WillemOS") funcionando en la Surface Go 2

Refinando la experiencia

El último paso de la instalación es donde se marca la diferencia entre una experiencia fantástica y una pésima. Para "animarme" a seguir adelante con este experimento, decidí vender mi iPad Pro: ¡quemar las naves, para no tener vuelta atrás!

Vender tu iPad Pro es fácil si conservas las cajas originales: yo vendí el mío en pocos días, ¡para obligarme a hacer que la tableta nueva funcione!
Vender tu iPad Pro es fácil si conservas las cajas originales: yo vendí el mío en pocos días, ¡para obligarme a hacer que la tableta nueva funcione!

En una pantalla pequeña, tiene todo el sentido ejecutar las apps a pantalla completa. Sé que el concepto convencional de PC, con ventanas de aplicaciones sueltas, no ofrece la mejor experiencia en una tableta pequeña. Por eso decidí probar un gestor de ventanas en mosaico: i3wm.

Gestor de ventanas en mosaico

El principio de un gestor de ventanas en mosaico es sencillo: las apps ocupan todo el espacio disponible. Si ejecutas una sola app, irá a pantalla completa. Dos apps se reparten la pantalla, y así sucesivamente. Puedes definir reglas que automaticen la disposición de las apps, y con atajos de teclado cambias rápido de una a otra. Puede que necesites algo de tiempo para averiguar qué te funciona mejor a ti con un gestor en mosaico, ¡pero al final te puede ahorrar muchísimo tiempo!

Firefox (izquierda) y una ventana de terminal MOSH/tmux (derecha) a pantalla dividida con el gestor de ventanas en mosaico i3wm
Firefox (izquierda) y una ventana de terminal MOSH/tmux (derecha) a pantalla dividida con el gestor de ventanas en mosaico i3wm

Espacios de trabajo

Otra función potente de i3wm son los distintos 'espacios de trabajo'. Son una forma sencilla de organizar grupos de apps que funcionan juntas. Yo uso espacios de trabajo distintos para cosas distintas. Lo habitual es poner el navegador en un espacio, las apps de correo en otro y aquellas con las que trabajas en un tercero.

Varios espacios de trabajo son muy potentes: es como cambiar de canal de televisión
Varios espacios de trabajo son muy potentes: es como cambiar de canal de televisión

Lo bueno de tener varios espacios de trabajo es que una misma app (por ejemplo, tu navegador) puede tener varias instancias en espacios distintos. Eso permite muchísimas combinaciones de apps, y ahí es donde i3wm es mucho mejor que el multitarea de iPadOS.

i3wm también soporta muy bien los monitores externos, con el mismo concepto de espacio de trabajo. Solo tienes que asignar uno o varios espacios a la pantalla adicional o externa. Funciona bien con la Surface Dock y los accesorios de USB-C a HDMI para Surface. El soporte multimonitor es realmente genial.

Desliza tres dedos para cambiar de espacio de trabajo (un truco de macOS): con fusuma puedes usar gestos multitáctiles en i3wm
Desliza tres dedos para cambiar de espacio de trabajo (un truco de macOS): con fusuma puedes usar gestos multitáctiles en i3wm

Una cosa que deberías probar es fusuma para activar los gestos de tres dedos en el trackpad. Si alguna vez has trabajado en un MacBook, sabrás que los trackpads multitáctiles permiten gestos muy útiles para cambiar de escritorio (o de espacio de trabajo en i3wm). ¡Funciona de maravilla!

Almacenamiento

Para gestionar mis fotos con Shotwell quería bastante almacenamiento en la tableta. Aunque tengo el modelo superior de la Surface Go 2 con SSD de 256GB, usé la ranura MicroSD para ampliar la capacidad otros 512GB. La tarjeta MicroSD es más lenta que el SSD integrado, pero para archivos que no lees cada día, cada hora o cada minuto es lo bastante rápida.

Se puede ampliar el almacenamiento de la Surface Go 2 con una tarjeta MicroSD
Se puede ampliar el almacenamiento de la Surface Go 2 con una tarjeta MicroSD

Mi Debian GNU/Linux no tuvo problemas para reconocer la tarjeta MicroSD. Cifré la tarjeta entera para que mis fotos no se filtren si algún día la pierdo. Deberías plantearte siempre algo así: ¡toma las medidas necesarias para proteger tus datos y hacer copias de seguridad!

Conectividad WiFi/4G/LTE

Tras instalar el firmware inalámbrico 'no libre' en Debian, el WiFi funciona bien en la Surface Go 2. ¡Hacer que funcionara el LTE/4G fue mucho más difícil! Por algún motivo la conexión WWAN no arrancaba, aunque había metido una tarjeta SIM que funcionaba en la Surface Go. Por alguna razón misteriosa, el módem no se iniciaba bien: ¡el 4G/LTE no funcionaba!

Instalando la SIM en la tableta Surface Go 2
Instalando la SIM en la tableta Surface Go 2

Una de las grandes cosas del iPad es que comparte la lógica de conectividad del iPhone. Gestiona solo las distintas redes inalámbricas y las conexiones de banda ancha móvil. ¡Yo quería que eso también funcionara en mi tableta con Linux!

Para encontrar una pista sobre cómo activar el 4G/LTE, busqué informes sobre la Surface Pro. La Surface Go 2 es técnicamente muy parecida a la Pro, que es más grande. Pensé que podría aprovechar lo que otros habían hecho con la banda ancha móvil en la Surface Pro. Después de muchas horas buscando y probando cosas, encontré esta solución para que el 4G funcione en Surface:

¡Restablecer los búferes del módem de banda ancha de la Surface hizo que funcionara con Debian GNU/Linux!
¡Restablecer los búferes del módem de banda ancha de la Surface hizo que funcionara con Debian GNU/Linux!

Puedes usar Network Manager (y Modem Manager) para automatizar la gestión de la conectividad en Linux. Por defecto prefiere las conexiones WiFi a la banda ancha móvil, y puedes hacer que se conecte automáticamente por 4G/LTE cuando no haya WiFi. ¡Ahora funciona muy bien con el hardware de la Surface Go 2!

Network Manager (nm-applet) cambia solo entre WiFi y banda ancha móvil
Network Manager (nm-applet) cambia solo entre WiFi y banda ancha móvil

Suspender/Hibernar/Reanudar

Hay otra cosa en la que ningún usuario de iPad piensa nunca: lo bien que Apple ha resuelto suspender y reanudar. Un iPad puede pasar muchos días en reposo y, aun así, cuando lo coges de nuevo siempre sigue en un instante donde lo dejaste.

Para que mi Surface con GNU/Linux hiciera lo mismo, necesitaba una forma de suspender y reanudar rápido. En el mundo de Linux/PC hay básicamente cuatro modos de energía:

  • encendido: las apps se están ejecutando. El sistema está totalmente encendido y consume mucha energía
  • suspender (en RAM): el estado de las apps se conserva en la memoria RAM. El sistema sigue encendido, pero todos los componentes se reducen al mínimo y aun así consume energía (en mi caso, con la Surface Go 2, un 10 % de batería por hora, más o menos)
  • suspender (en disco) / hibernar: el estado de las apps se conserva en el disco. El sistema está apagado y no consume nada
  • apagado: las apps están cerradas. El sistema está apagado y no consume energía

Para "reanudar al instante donde lo dejaste" hay que conservar el estado de las apps. Las reanudaciones más rápidas (casi instantáneas) son posibles cuando el estado se guarda en la memoria RAM. El problema de la RAM es que necesita corriente (¡energía!) para mantener su contenido. Si se pierde la energía, se pierde el estado de las apps.

La alternativa es suspender en disco (o hibernar), donde el estado se guarda en el almacenamiento permanente del ordenador. Así el ordenador puede apagarse por completo. El problema es que reanudar es más lento y, con el cifrado de disco completo, hay que volver a introducir las contraseñas de cifrado.

La buena noticia es que el GNU/Linux actual trae systemd, que te permite configurar cómo gestiona el ordenador la suspensión y la reanudación. Puedes configurar tu tableta para que primero suspenda en RAM (reanudación instantánea) y, pasado un tiempo, suspenda en disco.

El ajuste "AllowSuspendThenHibernate" de systemd en sleep.conf te permite definir un tiempo de espera entre suspender en RAM y suspender en disco (hibernación)
El ajuste "AllowSuspendThenHibernate" de systemd en sleep.conf te permite definir un tiempo de espera entre suspender en RAM y suspender en disco (hibernación)

En un día normal de trabajo me levanto (muy) temprano para trabajar desde casa en mis proyectos más exigentes. Luego voy en bici al trabajo y sigo trabajando desde allí. Calculé cuánto dura mi trayecto y pensé que, si la tableta se quedaba encendida al menos dos horas, podría retomar el trabajo al instante. Si no sigo trabajando con ella en esas dos horas, ahorrará batería suspendiéndose en disco. Así tengo la mejor experiencia para mi caso concreto.

Configura LidSwitch (en login.conf de systemd) para suspender y reanudar automáticamente al cerrar la Type Cover de la Surface; yo lo he configurado para suspender y luego hibernar tras un tiempo de espera
Configura LidSwitch (en login.conf de systemd) para suspender y reanudar automáticamente al cerrar la Type Cover de la Surface; yo lo he configurado para suspender y luego hibernar tras un tiempo de espera

Aspecto uniforme

A diferencia del iPad, tan controlado, el software de GNU/Linux se crea con muchos enfoques distintos de diseño de interfaz. No existe nada parecido a las Guías de interfaz de usuario que Apple impone para iOS y iPadOS. Es un problema, porque hace que el software se vea y se sienta incoherente.

Un aspecto coherente es importante para lograr un entorno y una experiencia sin fricciones. Por eso hice muchos pequeños ajustes de color, tipografías, iconos y barras de herramientas para que todas mis apps se vean y se sientan parecidas. No es perfectamente armonioso, pero ya no me da la sensación de trabajar con un "Frankenstein OS".

Prefiero un tema oscuro porque cansa menos la vista, pero eso lo decides tú. Usa herramientas como lxappearance para ajustar varias apps a la vez, aunque seguramente también tendrás que ajustar cada app por separado. Yo uso el tema adwaita-dark y los iconos (monocromos) HighContrast, con la fuente Open Sans Light.

El explorador de archivos Thunar (izquierda) y GIMP (derecha) en armonía visual: crea un aspecto uniforme combinando colores, iconos y fuentes
El explorador de archivos Thunar (izquierda) y GIMP (derecha) en armonía visual: crea un aspecto uniforme combinando colores, iconos y fuentes
Shotwell (izquierda) y Xournal (derecha): dos apps muy distintas funcionando codo con codo, con un aspecto visualmente coherente
Shotwell (izquierda) y Xournal (derecha): dos apps muy distintas funcionando codo con codo, con un aspecto visualmente coherente

Usándola a diario

Construir un sistema bonito es una cosa, ¡pero usarlo a diario es otra muy distinta! La Surface Go es mi herramienta de cada día y durante las últimas semanas he estado experimentando con distintas cosas y ajustes. Aquí van algunos de los momentos destacados.

La Surface Pen es genial y, si configuras Xournal para usar Xinput, la sensibilidad a la presión funciona perfectamente: el grosor de la línea varía, igual que con un bolígrafo de verdad
La Surface Pen es genial y, si configuras Xournal para usar Xinput, la sensibilidad a la presión funciona perfectamente: el grosor de la línea varía, igual que con un bolígrafo de verdad
El soporte trasero es genial combinado con Xournal y la Surface Pen: ningún iPad puede hacer esto
El soporte trasero es genial combinado con Xournal y la Surface Pen: ningún iPad puede hacer esto
El soporte es muy resistente porque usa dos bisagras metálicas fuertes
El soporte es muy resistente porque usa dos bisagras metálicas fuertes
Escribir en la Type Cover es un placer, con teclas de verdad (retroiluminadas), incluida ESC y una fila de teclas de función
Escribir en la Type Cover es un placer, con teclas de verdad (retroiluminadas), incluida ESC y una fila de teclas de función
También puedes usar un teclado Bluetooth, para mantener una distancia cómoda entre los ojos y la pantalla
También puedes usar un teclado Bluetooth, para mantener una distancia cómoda entre los ojos y la pantalla
Aunque USB-C es el futuro, el puerto Surface Connect es muy práctico porque funciona con la Surface Dock 2 (que ofrece conectividad de sobra)
Aunque USB-C es el futuro, el puerto Surface Connect es muy práctico porque funciona con la Surface Dock 2 (que ofrece conectividad de sobra)
La parte trasera de la Surface no tiene el objetivo de la cámara sobresaliendo, así que la tableta queda perfectamente plana sobre la mesa, ¡como debe ser!
La parte trasera de la Surface no tiene el objetivo de la cámara sobresaliendo, así que la tableta queda perfectamente plana sobre la mesa, ¡como debe ser!
¡Es un ordenador diminuto, pero increíblemente potente y versátil!
¡Es un ordenador diminuto, pero increíblemente potente y versátil!
¡Leer el correo en Evolution funciona bien!
¡Leer el correo en Evolution funciona bien!
Es lo bastante ligera para manejarla con una mano: puedes leer el giroscopio para girar la pantalla automáticamente, muy útil para leer un artículo (interesante)
Es lo bastante ligera para manejarla con una mano: puedes leer el giroscopio para girar la pantalla automáticamente, muy útil para leer un artículo (interesante)
La Surface Go 2 es una herramienta seria, capaz de cosas potentes cuando te conectas a la nube (con un terminal, MOSH y tmux)
La Surface Go 2 es una herramienta seria, capaz de cosas potentes cuando te conectas a la nube (con un terminal, MOSH y tmux)

Conclusión

Construir mi propio sistema operativo para tableta es un reto de verdad. Mi primer intento no fue lo bastante bueno para sustituir a mi iPad. Este segundo, en cambio, es distinto. El tiempo y el esfuerzo que dediqué a refinar la experiencia de uso dan como resultado un sistema mucho mejor. Ahora lo uso a diario como mi ordenador principal.

Aunque siempre he apreciado el trabajo de Apple con el iPad, sigue limitado por su software cerrado. Sobre todo ahora, que Apple ha decidido reforzar su control sobre la App Store. La única forma de controlar el futuro es crearlo tú mismo: ¡creo que ha llegado el momento de ser capitán de mi propio barco!

Actualización de enero de 2021

Tras meses de uso intenso he decidido abandonar mi propio sistema operativo para tableta

Formatos legibles por máquinas de esta página