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.

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

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.

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

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!

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!

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.

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.

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.

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!

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:

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!

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.

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.

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.


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.











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