716 - Entre Android y Linux como NUNCA IMAGINASTE

716 - Entre Android y Linux como NUNCA IMAGINASTE

Transfiere archivos entre tu Android y Linux inalámbricamente con GSConnect y rquickshare. ¡La revolución para compartir sin cables ni nubes! Tutorial completo.

1:25
-3:15

En los últimos meses ando implementando una aplicación con un amigo. Yo me encargo de la parte de desarrollo, tanto de la parte del backend como de la parte del front. Mientras que el entre otras cosas se encarga de hacer mockups de la aplicación, de como le gustaría que quedara cada una de las pantallas de la misma. De esta manera, no tengo que pensar como es la interfaz y voy muy rápido. La cuestión es que esos diseños o los comparte con un servidor que montamos para ello con Filebrowser o bien, por WhatsApp. Como te puedes imaginar esta opción no me gusta tanto, pero… es lo que hay. Y es justo en esta segunda opción donde volvió a aparecer el tema de compartir de Android a Linux, aunque en ocasiones también. Es cierto que podría utilizar WhatsApp en la web, pero sinceramente, como que me de cosa… Así es como desempolvé todos los opciones que recordaba para hacer estas cosas y donde revisando, me di cuenta, que no le había dedicado un episodio precisamente a esto a compartir de Android a Linux, y como nunca antes. Así que vamos directos al turrón.

La Revolución: De Android a Linux (y al revés) como NUNCA IMAGINASTE

Una visión general

Desde que surgió este tema, y antes de recopilar las formas que durante estos años he estado utilizando, decidí revisar nuevamente todas las opciones que tenía. Todo para corroborar que efectivamente la aplicación que utilizo y que te comentaré es la que mejor se adapta a mis necesidades, así como a mi flujo de trabajo.

Durante este tiempo, he probado a utilizar syncthing, ftp, rsync, etc. Así como otras herramientas como LocalSend, del que te hablé en el episodio 544, o PairDrop, del que me parece que no te hablado en ninguna ocasión hasta el momento. Una solución similar a AirDrop, pero que te la montas por tu cuenta. Si te interesa esta segunda opción, me dejas un comentario, y lo apunto para un nuevo episodio.

La cuestión, es que he terminado con dos herramientas, una es KDE Connect en combinación con GSConnect, por aquello de que como sabes utilizo GNOME Shell como entorno de escritorio, a la par que Niri. Mientras que la otra es RQuickshare que es una implementación de Quick Share de Android pero para Linux.

rquickshare

rquickshare es una implementación en Rust de la función Nearby Share (Compartir con Compartir Cerca) de Android, diseñada para funcionar en Linux (y macOS). Su objetivo principal es permitirte transferir archivos de forma inalámbrica, rápida y segura entre tu dispositivo Android y tu ordenador Linux, sin necesidad de cables ni de subir tus datos a servicios en la nube. Es una solución de código abierto que te da control sobre tus transferencias.

¿Cómo funciona rquickshare?

La magia de rquickshare reside en varios puntos clave,

  • Comunicación mDNS (Multicast DNS). Los dispositivos se descubren entre sí a través de la red local (Wi-Fi). rquickshare y la función «Compartir con Compartir Cerca» de Android usan mDNS para anunciar su presencia y encontrar otros dispositivos compatibles en la misma red.
  • Anuncio Bluetooth (clave para Linux): Uno de los retos es que Android no siempre está «anunciando» su servicio mDNS. Para solucionarlo, rquickshare en Linux puede emitir un pequeño anuncio por Bluetooth Low Energy (BLE). Cuando tu móvil Android detecta este anuncio, se «despierta» y hace que su servicio mDNS sea visible, permitiendo que tu Linux lo detecte y se inicie la transferencia. Esto significa que necesitarás Bluetooth en tu ordenador Linux para una detección más fiable.
  • Transferencia P2P (Peer-to-Peer). Una vez que los dispositivos se han descubierto y conectado, la transferencia de archivos se realiza directamente entre ellos a través de tu red Wi-Fi local. Esto significa que tus archivos no pasan por ningún servidor intermedio, lo que garantiza mayor velocidad y privacidad.
  • Funcionamiento en segundo plano. Por defecto, rquickshare se ejecuta en segundo plano y tiene un icono en la bandeja del sistema. Esto permite que esté siempre disponible para recibir o enviar archivos, incluso si cierras la ventana principal de la aplicación.

¿Cómo instalar rquickshare?

La instalación de rquickshare es bastante sencilla en Linux, y el método puede variar ligeramente según tu distribución. Requiere la biblioteca libayatana-appindicator o libappindicator3 para el icono en la bandeja del sistema (normalmente se instalan como dependencia automáticamente). Las opciones más típicas son las siguientes,

  • Paquetes Precompilados (Recomendado para la mayoría)
    • Ve a la sección de «Releases» del repositorio oficial de rquickshare en GitHub: https://github.com/Martichou/rquickshare/releases
    • Descarga el archivo adecuado para tu distribución:
      • Para Debian/Ubuntu y derivados: Busca el archivo .deb (ej. r-quick-share_X.X.X.deb). Instálalo con sudo dpkg -i r-quick-share_X.X.X.deb.
      • Para Fedora/openSUSE/Red Hat y derivados: Busca el archivo .rpm (ej. r-quick-share-X.X.X.rpm). Instálalo con sudo dnf install r-quick-share-X.X.X.rpm (recomendado sobre rpm -i).
    • Una vez instalado, búscalo en el menú de aplicaciones de tu escritorio.
  • AppImage (No requiere instalación a nivel de sistema)
    • Descarga el archivo .AppImage (ej. r-quick-share_X.X.X.AppImage) desde la página de «Releases».
    • Dale permisos de ejecución: chmod +x r-quick-share_X.X.X.AppImage
    • Ejecútalo haciendo doble clic o desde la terminal: ./r-quick-share_X.X.X.AppImage
    • Esta es una excelente opción si no quieres instalar nada en el sistema o si tu distribución no tiene un paquete específico.
  • Arch Linux (AUR)
    • Si usas Arch Linux o una derivada (como Manjaro), puedes instalarlo desde el AUR (Arch User Repository) usando un asistente como paru, paru -S r-quick-share

Problemas Típicos y Soluciones

Aunque rquickshare es robusto, pueden surgir algunos problemas. Aquí tienes los más comunes y cómo intentar solucionarlos:

  1. Mi dispositivo Android no ve mi portátil (o viceversa):
    • Misma Red Wi-Fi: Asegúrate de que ambos dispositivos estén conectados a la MISMA red Wi-Fi. Este es el requisito más fundamental.
    • Bluetooth Activo en Linux: Verifica que el Bluetooth esté encendido en tu ordenador Linux. Como se mencionó, rquickshare lo usa para «despertar» al Android y que anuncie su servicio mDNS.
    • «Compartir con Compartir Cerca» en Android:
      • En tu Android, asegúrate de que «Compartir con Compartir Cerca» esté activado. Ve a Ajustes > Dispositivos conectados > Preferencias de conexión > Compartir con Compartir Cerca.
      • Verifica la visibilidad de tu dispositivo (p. ej., «Visibilidad del dispositivo»). A veces, si está configurado en «Contactos» o similar, puede que no se muestre a todos los dispositivos. Prueba con «Todos» temporalmente.
      • Mantén la pantalla del móvil encendida y la app de «archivos» o la galería abierta, o incluso el panel de «Compartir con Compartir Cerca» en Android, ya que Android no siempre publica su mDNS activamente.
    • Reiniciar rquickshare: A veces, simplemente cerrar y volver a abrir rquickshare en Linux puede ayudar a que refresque la búsqueda.
    • Firewall: Asegúrate de que tu firewall en Linux (ej. ufw) no esté bloqueando las conexiones entrantes necesarias para la comunicación mDNS. Puede que necesites permitir puertos específicos (puedes consultar la documentación de rquickshare o probar a desactivarlo temporalmente para verificar si es el problema, aunque con precaución).
  2. La aplicación rquickshare se cierra inmediatamente o no se abre:
    • Dependencias: Asegúrate de que las dependencias como libayatana-appindicator o libappindicator3 estén instaladas.
    • GPU y Wayland (usuarios de NVIDIA/Wayland): Algunos usuarios con tarjetas NVIDIA y Wayland han reportado problemas. Una solución es ejecutar rquickshare con una variable de entorno específica:
      env WEBKIT_DISABLE_COMPOSITING_MODE=1 rquickshare
    • Proceso ya en ejecución: Verifica que no haya otra instancia de rquickshare ejecutándose en segundo plano: ps aux | grep r-quick-share. Si la hay, mátala (kill <PID>) e intenta iniciarla de nuevo. Recuerda que por defecto, se mantiene en la bandeja del sistema.
  3. Archivos grandes fallan o se corrompen:
    • Asegúrate de tener una conexión Wi-Fi estable y fuerte entre los dispositivos.
    • Verifica que no haya interferencias de red.
  4. Nombres de archivo incorrectos o extensiones perdidas (particularmente al enviar a Windows):
    • Este era un problema conocido en versiones anteriores de rquickshare al enviar a receptores de Windows QuickShare debido a campos de metadatos faltantes. Las versiones más recientes deberían haberlo corregido. Asegúrate de tener la última versión de rquickshare.

GSConnect

GSConnect es una extensión para GNOME Shell que integra la funcionalidad de KDE Connect directamente en el escritorio GNOME. En esencia, actúa como un puente que conecta tu teléfono Android (donde instalas la aplicación de KDE Connect) con tu ordenador Linux que usa GNOME. Su objetivo es hacer que la interacción entre tus dispositivos sea lo más fluida y natural posible, como si formaran parte de un mismo ecosistema. Es una pieza clave del software libre para mejorar tu productividad diaria.

¿Cómo funciona GSConnect?

GSConnect se basa en el mismo protocolo de KDE Connect, que utiliza tu red Wi-Fi local para el descubrimiento y la comunicación entre los dispositivos. Aquí tienes sus pilares de funcionamiento:

  • Descubrimiento de dispositivos: Tanto la extensión GSConnect en tu PC como la app KDE Connect en tu Android anuncian su presencia en la red local. Cuando se detectan mutuamente, pueden iniciar un proceso de emparejamiento.
  • Emparejamiento seguro: Una vez que ambos dispositivos se ven, solicitan un emparejamiento. Este proceso implica una confirmación manual en ambos lados para asegurar que solo los dispositivos que tú autorizas se conecten. Una vez emparejados, se establecen claves de cifrado para que toda la comunicación sea segura y privada.
  • Comunicación bidireccional: Después del emparejamiento, los dispositivos pueden enviar y recibir una variedad de información y comandos. Esto se gestiona a través de una serie de «plugins» o funcionalidades que se activan o desactivan según tus necesidades.
  • Integración en el escritorio GNOME: GSConnect no es solo una aplicación; al ser una extensión de GNOME Shell, se integra directamente en la bandeja del sistema, en las notificaciones del escritorio, en los menús contextuales (por ejemplo, al compartir un archivo) y en el gestor de archivos Nautilus, haciendo que la experiencia sea muy cohesiva.

Funcionalidades clave de GSConnect

GSConnect ofrece una amplia gama de características que van más allá de la simple transferencia de archivos, mejorando drásticamente tu flujo de trabajo:

  • Compartir archivos y URL: Esta es una de las funciones estrella. Puedes enviar cualquier archivo desde tu PC a tu móvil (y viceversa) directamente desde el explorador de archivos o la opción de compartir. Lo mismo aplica para enlaces web.
  • Portapapeles compartido: Copia texto en un dispositivo y pégalo instantáneamente en el otro. ¡Ideal para códigos, enlaces, o trozos de texto rápido!
  • Sincronización de notificaciones: Recibe las notificaciones de tu Android directamente en el escritorio de tu Linux. Puedes incluso responder a mensajes de aplicaciones de mensajería desde tu PC.
  • Control multimedia: Usa tu móvil como un control remoto para pausar, reproducir o cambiar de canción en tu reproductor multimedia de Linux.
  • Enviar SMS: Envía y recibe mensajes SMS desde la comodidad de tu teclado de ordenador.
  • Ejecutar comandos remotos: Puedes configurar comandos personalizados en tu Linux para ejecutarlos desde tu teléfono.
  • Localizar teléfono: Haz que tu teléfono suene (incluso en silencio) para encontrarlo si lo has perdido cerca.
  • Información de la batería: Consulta el nivel de batería de tu teléfono directamente desde el escritorio.
  • Montar sistema de archivos del teléfono (SFTP): Esto te permite navegar por los archivos de tu Android como si fuera una unidad de red en tu gestor de archivos de Linux, arrastrando y soltando archivos fácilmente.

¿Cómo instalar y configurar GSConnect?

La instalación es sencilla y se realiza en dos partes. A saber,

  • En tu ordenador Linux (con entorno GNOME)
    • Lo más común es instalar el paquete desde la web extensions.gnome.org buscando «GSConnect». Necesitarás tener instalada la extensión «GNOME Shell integration» en tu navegador.
    • Después de instalar, es posible que necesites reiniciar tu sesión de GNOME (cierra sesión y vuelve a entrar).Abre la aplicación «Extensiones» (GNOME Extensions) y asegúrate de que GSConnect esté activado.
  • En tu dispositivo Android
    • Descarga e instala la aplicación oficial «KDE Connect» desde la Google Play Store o desde F-Droid (si prefieres software 100% libre y de código abierto).

¿Como emparejar Linux y Android?

  • Asegúrate de que ambos dispositivos estén conectados a la MISMA red Wi-Fi.
  • Abre la aplicación KDE Connect en tu Android.
  • Abre el menú de GSConnect en tu ordenador (normalmente desde el área de notificaciones o la bandeja del sistema de GNOME).
  • Deberías ver tu móvil Android listado en GSConnect, o viceversa. Selecciona el dispositivo y elige «Emparejar» o «Request Pairing».
  • En ambos dispositivos, confirma la solicitud de emparejamiento cuando aparezca la notificación.
  • Una vez emparejados, puedes acceder a la configuración de GSConnect en tu Linux y de KDE Connect en tu Android para activar o desactivar las funcionalidades que desees.

Más información,

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *