gydl (Graphical Youtube-dl) is a GUI wrapper around the already existing youtube-dl program.
Switch branches/tags
Nothing to show
Clone or download
JannikHv Merge pull request #17 from har9862/patch-1
Added OARS and release info
Latest commit 01a8e16 Sep 15, 2018
Failed to load latest commit information.
data Added OARS and release info Aug 20, 2018
images Improve appdata & screenshot Aug 25, 2017
po Add sv l10n Sep 13, 2017
src Code fix, important. Sep 26, 2017
.gitignore Initial commit Apr 2, 2017
LICENSE Update LICENSE Apr 6, 2017 New News Oct 24, 2017 Fixed meson file Sep 17, 2017


Gydl (Graphical Youtube-dl) is a GUI wrapper around the already existing youtube-dl program.

It's developed with a dialog driven experience in mind. This provides a quick and easy video or audio downloads without disturbances.

Big thank you to the developer(s) of youtube-dl! Check out their project:


The C-Rewrite is finished but we're leaving the Python 3 version as the master branch for now.

A new Python 3 rewrite is coming up where you'll be able to see that a download is actually running.


GNU/Linux Packages


Flatpak packages support multiple distributions and are sandboxed.

Stable releases are hosted on Flathub:

flatpak remote-add --if-not-exists flathub
flatpak install flathub com.github.JannikHv.Gydl


Gydl is written in Python3 and uses the GTK+3 toolkit.


To run it you need to have installed:

  • gtk+3
  • python3
  • pygobject
  • youtube-dl

Build & Install

Meson installs to /usr/local as the default prefix.

meson build
cd build
ninja install

Build Options

Use meson --help to get all build options. You may specify any option when you initially run meson.

# Example
meson build --prefix=/app

If you already have a build directory, you must use instead use meson configure, from within the build directory.

# Example
cd build
meson configure -Dprefix=/app

Meson also supports the DESTDIR environment variable, which is useful for building a package.

See Meson documentation for more


Gydl itself is currently not translatable, but the appdata and the desktop entry is.

Use the build system to generate a POT template file from the latest commit.

meson build
ninja -C build Gydl-pot
rm -rf build

Copy the POT file into a PO file matching your language code and translate all strings. Alternatively follow the above steps and use a tool like Poedit.


When using Gydl, you have the option to download your Youtube Video as a Video or Audio.

Each of these options have a text entry, as well as 2 combo-boxes managing quality and the format.

alt tag

When clicking on Download there are 3 scenarios you can face:

  • Download Finished - When your download has finished successfully.

alt tag

  • Download Unsuccessful - When a bad URL was entered or similar errors occured.

alt tag

  • Connection Error - When no internet connection could be established.

alt tag

These dialogues will be presented to you as a little windows.

Notice that not every combination of settings will work.

Thanks for any involvement in this project, I hope you like it.

Kind regards, Jannik Hauptvogel.