/ytdl-gui

A simple-to-use, cross-platform graphical interface for youtube-dl / yt-dlp

Primary LanguageC++GNU General Public License v3.0GPL-3.0

youtubedl-gui

A simple-to-use, cross-platform graphical interface for youtube-dl and yt-dlp

youtubedl-gui-screenshot.png

Installation Instructions

I maintain packages for arch-based linux distros (using the aur) and for ubuntu-based distros (using a ppa).

Arch linux and Manjaro

On any arch system with an aur helper such as yay:
yay -S youtubedl-gui
Everything required to compile and install the application from source should be done automatically.

To try out the beta branch of this project, you can download the package youtubedl-gui-git as such:
yay -S youtubedl-gui-git

Ubuntu

For a system based on Ubuntu 18.04 Bionic Beaver, 20.04 Focal Fossa or 21.04 Hirsute Hippo, simply add my ppa and install the application:
sudo add-apt-repository ppa:mordec13/youtubedl-gui
sudo apt update && sudo apt install youtubedl-gui

Then, you have to install the latest youtube-dl version using pip. Do the following:
sudo pip3 install youtube-dl

Debian

For a system running Debian 12 Bookworm (Testing as of now) or later, the application is in the distribution's standard repositories.
Simply run sudo apt install youtubedl-gui to install the GUI interface.

Then, make sure ffmpeg and python3-pip are on your system too.
Finally, execute sudo pip3 install youtube-dl to get the latest version of youtube-dl on your system.

Flatpak

It is also possible to install the application via Flatpak if there is no package for your distrubition.
However, be aware that I am not responsible for its maintenance and that the install size will be an order of magnitude bigger than simply using a package or building from source.

To install the application, run flatpak install flathub io.github.JaGoLi.ytdl_gui

HiDPI Support

This application does support HiDPI displays even though its size is fixed.

Gnome and GTK based desktops

In order to the application to scale properly, the variable QT_AUTO_SCREEN_SCALE_FACTOR=1 needs to be set.
You can set it in either /etc/environment, or in your local .profile, .bash_profile or .zshenv

KDE and QT based desktops

The application will scale automatically with the scaling factor chosen by the desktop environment.

Build From Source

Dependencies

To build this application from source, you need the basic development tools for the Qt5 framework, and a recent version of the youtube-dl binary for the application to compile and run on your system.

Here is a list of build and runtime dependencies for arch linux:
base-devel qt5-base ffmpeg youtube-dl

For debian-based systems (including ubuntu) here is a list of dependencies:
build-essential cmake qtbase5-dev ffmpeg youtube-dl

Since the version of youtube-dl is often not current on debian and ubuntu distros, I recommend you install it through pip3.

Installing

To install after having installed the correct dependencies:

git clone https://github.com/JaGoLi/ytdl-gui.git && cd ytdl-gui
mkdir build && cd build
cmake .. && make
sudo make install