Transmission: Cliente BitTorrent ligero y multiplataforma

Publicado por


transmission
Cliente BitTorrent

Transmission: Cliente BitTorrent ligero y multiplataforma

Cliente oficial de código abierto con interfaz web, daemon headless y GUI nativas para macOS, Linux y Windows

Vídeo tutorial en YouTube

Mira el vídeo completo sobre cómo instalar y usar Transmission: Cliente BitTorrent ligero y multiplataforma en el canal GENBYTE:

¿Qué es Transmission: Cliente BitTorrent ligero y multiplataforma?

Transmission es un cliente BitTorrent rápido, fácil de usar y gratuito. El proyecto oficial ofrece varias versiones: una aplicación GUI nativa para macOS, interfaces GTK+ y Qt para Linux y BSD, una aplicación Qt compatible con Windows, un daemon headless para servidores y routers, y una interfaz web para control remoto de cualquiera de las anteriores. El código está escrito principalmente en C++ y se distribuye bajo licencia de código abierto.

Incluye daemon headless, interfaz web y herramientas CLI para gestión remota y automatización

Características principales

Múltiples interfaces gráficas

Aplicación nativa para macOS, GTK+ y Qt para Linux/BSD, y Qt para Windows.

Daemon headless

Versión sin interfaz gráfica para servidores, routers y sistemas embebidos.

Interfaz web integrada

Permite controlar cualquier instancia de Transmission desde un navegador.

Herramientas de línea de comandos

Incluye transmission-remote (CLI principal), transmission-show, transmission-create y transmission-edit para manipular torrents.

Cliente CLI heredado

transmission-cli se mantiene para compatibilidad con hardware antiguo, aunque está deprecado en favor de transmission-remote.

Requisitos del sistema

  • Sistema operativo compatible (macOS, Linux, BSD, Windows)
  • CMake 3.10 o superior para compilación desde fuente
  • Compilador C++ compatible con C++17
  • Dependencias de desarrollo: libevent, OpenSSL, y otras según plataforma (consultar docs/Building-Transmission.md)

Instalación con Docker Compose

Compilación desde código fuente (versión estable)

Descargar el tarball de la versión deseada, extraer, configurar con CMake, compilar e instalar.

$ tar xf transmission-4.1.0.tar.xz
$ cd transmission-4.1.0
$ cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo
$ cd build
$ cmake –build .
$ sudo cmake –install .

Compilación desde Git (primera vez)

Clonar el repositorio con submódulos, configurar, compilar e instalar.

$ git clone –recurse-submodules https://github.com/transmission/transmission Transmission
$ cd Transmission
$ cmake -B build -DCMAKE_BUILD_TYPE=RelWithDebInfo
$ cd build
$ cmake –build .
$ sudo cmake –install .

Actualización de compilación desde Git

Limpiar, actualizar submódulos, recompilar e instalar.

$ cd Transmission/build
$ cmake –build . -t clean
$ git submodule foreach –recursive git clean -xfd
$ git pull –rebase –prune
$ git submodule update –init –recursive
$ cmake –build .
$ sudo cmake –install .

Nota sobre Docker

La documentación oficial del repositorio no proporciona instrucciones de instalación mediante Docker o Docker Compose. Para despliegues en contenedores, consultar imágenes de terceros o la documentación de la distribución utilizada.

Acceder al proyecto

Interfaz web

Accesible mediante navegador en la dirección IP y puerto configurados en el daemon (por defecto suele ser puerto 9091). Requiere habilitar la interfaz web en la configuración.

Línea de comandos

Uso de transmission-remote para controlar instancias locales o remotas. Las herramientas transmission-show, transmission-create y transmission-edit permiten inspeccionar, crear y editar archivos .torrent.

Aplicaciones gráficas

Lanzar la GUI correspondiente al sistema operativo (Transmission.app en macOS, transmission-gtk o transmission-qt en Linux, Transmission Qt en Windows).

Casos de uso

  • Descarga y gestión de torrents en escritorio con interfaz nativa
  • Servidor de descargas headless en NAS, Raspberry Pi o VPS
  • Control remoto de descargas mediante interfaz web desde cualquier dispositivo
  • Automatización de tareas de torrents mediante scripts con transmission-remote
  • Creación y edición de archivos .torrent para distribución de contenido

Configuración avanzada

Configuración del daemon

El daemon headless (transmission-daemon) se configura mediante archivo settings.json ubicado en el directorio de configuración del usuario. Permite ajustar puertos, autenticación, límites de velocidad, directorios de descarga y más.

# Ejemplo de ubicación típica en Linux
~/.config/transmission-daemon/settings.json

Compilación optimizada

Usar -DCMAKE_BUILD_TYPE=Release para binario totalmente optimizado, o RelWithDebInfo para optimizado con información de depuración (recomendado).

$ cmake -B build -DCMAKE_BUILD_TYPE=Release

Estilo de código

El proyecto usa .clang-format para formateo. Se puede aplicar automáticamente con el script code_style.sh.

$ ./code_style.sh

Gestión y mantenimiento

Actualización desde fuente

Seguir los pasos de actualización de compilación desde Git para obtener las últimas correcciones y características.

$ cd Transmission/build
$ cmake –build . -t clean
$ git submodule foreach –recursive git clean -xfd
$ git pull –rebase –prune
$ git submodule update –init –recursive
$ cmake –build .
$ sudo cmake –install .

Limpieza de compilación

Eliminar directorio build para recompilar desde cero.

$ rm -rf build

Stack técnico

  • C++
  • CMake
  • Qt
  • GTK+
  • Xcode (macOS)
  • libevent
  • OpenSSL

Apoya el canal GENBYTE

Sígueme en mis redes sociales

Dejar un comentario

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