Invidious, instala en Ubuntu este front-end alternativo para YouTube
En el siguiente artículo vamos a echar un vistazo a Invidious. Este es un front-end alternativo a YouTube que no utiliza la API oficial de YouTube. En su lugar va a analizar el código fuente de esta plataforma para obtener la información necesaria, de la misma forma que lo hacen proyectos como youtube-dl. Va a procesar las solicitudes de usuarios a través del servidor en el que se instala, afectando positivamente al uso por parte de los usuarios. El código del proyecto está escrito en el lenguaje de programación Crystal y utiliza PostgreSQL. Se distribuye bajo la licencia AGPLv3.
Invidious, se parece mucho al popular servicio web HookTube. Este tuvo que detenerse después de que Google pusiese sobre aviso a su creador acerca de una violación de los términos de la API de Youtube.
Características generales de Invidious
- Se trata de software libre (licencia AGPLv3). Para evitar los problemas que tuvo HookTube, la API Invidious trabaja con FreeTube, el reproductor de música MusicPiped y el sitio web de CloudTube. No utiliza ninguna de las API oficiales de YouTube.
- Esta aplicación va a permitir a los usuarios poder ver los vídeos de Youtube sin publicidad y sin el seguimiento de Google.
- Vamos a tener la posibilidad de importar o exportar suscripciones, disponer de un historial de navegación o configurarlo mediante las diferentes opciones que aporta.
- Se va a adaptar perfectamente en su versión móvil.
- También nos vamos a encontrar la opción de administrar suscripciones. Vamos a poder ver solo los vídeos no visitados o los vídeos más recientes. Al tiempo tendremos la posibilidad de realizar la importación de suscripciones desde nuestra cuenta de YouTube.
- Vamos a poder descargar los vídeos o solo el audio.
- No es necesario crear una cuenta de Google para guardar nuestras suscripciones.
- Vamos a disponer de la posibilidad de utilizar un modo oscuro en la interfaz.
- En el reproductor se pueden establecer diferentes opciones como son; la velocidad, calidad, reproducción automática o bucle.
- Omisión de bloqueos en caso de que el vídeo no esté disponible para el país del usuario. Aun que esto creo que hay que configurarlo.
- Incluye soporte para comentarios de Reddit en lugar de comentarios de Youtube.
- Tendremos la posibilidad de utilizar una API de desarrollador.
- Para quienes estén interesados en probarlo antes de instalarlo, pueden hacerlo visitando la página web en donde está montado el servicio.
Para consultar todas las características disponibles, se puede acceder al listado disponible en la página de GitHub del proyecto.
Instalar Invidious en Ubuntu
Si alguien está interesado en montar este front-end en un servidor o en su equipo personal, podrá hacerlo de manera más o menos sencilla. Para este ejemplo la instalación la voy a realizar en local sobre un sistema Ubuntu 18.10. Antes de proceder, es necesario instalar algunas dependencias necesarias para un correcto funcionamiento.
Los usuarios de Debian, Ubuntu o cualquier derivado de estos vamos poder seguir los pasos de instalación que muestran en su página de GitHub, que son los mismos que vamos a ver a continuación. Para seguirlos, hay que abrir una terminal (Ctrl+Alt+T) y ejecutar:
curl -sSL https://dist.crystal-lang.org/apt/setup.sh | sudo bash
El comando anterior agregará la clave de firma y la configuración del repositorio. Si prefieres hacerlo manualmente, que es la opción que yo he seguido para este ejemplo, ejecuta los siguientes comandos:
curl -sL "https://keybase.io/crystal/pgp_keys.asc" | sudo apt-key add -
echo "deb https://dist.crystal-lang.org/apt crystal main" | sudo tee /etc/apt/sources.list.d/crystal.list
Continuamos actualizando el listado de paquetes de APT e instalando las dependencias:
sudo apt update
sudo apt install crystal libssl-dev libxml2-dev libyaml-dev libgmp-dev libreadline-dev librsvg2-dev postgresql imagemagick libsqlite3-dev
Añadir el usuario y clonar repositorio
sudo useradd -m invidious sudo -i -u invidious git clone https://github.com/omarroth/invidious exit
Configurar PostgresSQL
sudo systemctl enable postgresql sudo systemctl start postgresql sudo -i -u postgres psql -c "CREATE USER kemal WITH PASSWORD 'kemal';" createdb -O kemal invidious psql invidious < /home/invidious/invidious/config/sql/channels.sql psql invidious < /home/invidious/invidious/config/sql/videos.sql psql invidious < /home/invidious/invidious/config/sql/channel_videos.sql psql invidious < /home/invidious/invidious/config/sql/users.sql psql invidious < /home/invidious/invidious/config/sql/session_ids.sql psql invidious < /home/invidious/invidious/config/sql/nonces.sql exit
Configurar Invidious
sudo -i -u invidious cd invidious shards update && shards install crystal build src/invidious.cr --release
Ahora ya podemos testar el binario compilado. Para acceder a la prueba, en este caso solo hay que abrir en un navegador la URL http://0.0.0.0:3000. Para detener la prueba solo hay que pulsar Ctrl+c en la terminal.
./invidious exit
Servicio de systemd
sudo cp /home/invidious/invidious/invidious.service /etc/systemd/system/invidious.service sudo systemctl enable invidious.service sudo systemctl start invidious.service
Para más información sobre el uso se puede consultar la Wiki que ofrecen en la página de GitHub del proyecto.
El artículo Invidious, instala en Ubuntu este front-end alternativo para YouTube ha sido originalmente publicado en Ubunlog.