Persepolis Download Manager

Persepolis Download Manager: Impressive Python frontend for aria2

Last Updated on September 1, 2020

Persepolis Download Manager is a handy open source download manager written in Python and PyQt. It’s a graphical frontend for aria2 aiming to make downloads both easier and faster.

This software project commenced development in 2015 with the first release in July 2016. While it was initially only a simple graphical user interface, the software has seen some pretty hefty development since then with a whole raft of additional functionality added, improvements to the user interface, and cross-platform support.

The software supports both HTTP(S) and FTP connections.


The developers provide a Debian/Ubuntu package, as well as binaries for MacOS and Windows operating systems. The software is also available in the official Debian repositories.

There’s the source code available, so you can compile, modify, and share the software as well.

The software depends on:

  • aria2 – Seasoned open source enthusiasts will probably have run into aria2 before. aria2 is a popular, cross-platform, lightweight, open source, command-line utility that lets you download files from multiple sources and protocols. It’s a highly praised software with a raft of useful features. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink. aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces. aria2’s most compelling feature is that it maximizes your download bandwidth, yet frugal with your system resources.
  • adwaita-qt – offers a uniform appearance between applications in desktop environments.
  • youtube-dl -a command-line utility for downloading videos or extracting audio files from streaming websites such as YouTube, and many others.

In Operation

Here’s a few screenshots of the software in motion. As you can see, I’m downloading a few Linux distributions.

Persepolis Download ManagerPersepolis - Download Persepolis - Download Options

The bb10bright and bb10dark themes seem incompatible with my Ubuntu distribution, as all the menu text disappeared. Fortunately, it’s easy to restore the software back to its default settings with the command “persopolies –default”.


I’m a massive YouTube user. And I consume a fair amount of content while travelling. Without reliable access to the internet, it’s tremendously appealing to be able to consume YouTube content offline. And Persepolis makes it really simple to download offline media.

For Firefox, Chrome, Chromium, Opera, Vivaldi, and any other WebExtension standard browser, there’s an extension called Persepolis Download Manager Integration extension. The extension replaces the browser’s default download manager, sending download links direct to Persepolis.

The image below is Chrome and the Persepolis WebExtension working in tandem. Just right click on a video, and select “Download with Persepolis”.


A dialog box pops up.


Now click the Fetch Media List button, this lets you select the video quality. By default the lowest resolution is selected. Click the “Select a format drop-down”, and you’re presented with a variety of download formats.


There is an unnerving delay when I select the format drop-down on my system. Less important, there’s a visual bug as the format text runs into the Duration text. But it’s important to remember that the Video Finder functionality was only added with the latest release, so there’s bound to be some trivial bugs (as well as non-trivial bugs) to iron out.

I decide to plump for the 720p quality. I can choose to download the video now or at a later time.


The whole process is really simple. And there’s lots of options in “More Options” and “Advanced Options” if I need them.

Persepolis uses youtube-dl behind the scenes to download the YouTube videos. youtube-dl is a real gem of a command-line program.

Other features of Persepolis include:

  • Multi segment downloading.
  • Scheduling downloads.
  • Download queuing with the ability to import download links from a text file, or right click on downloads.
  • Integrate the software with your web browser.
  • Adjust the start time and end time for downloads with the option to shutdown the system when the download is completed.
  • Up to 16 connections for each download – maximize your download bandwidth.
  • Find and download video from many other sources than YouTube such as Vimeo and DailyMotion.
  • Select multiple download items.
  • Run Persepolis at startup.
  • Keep the system awake or shut down the PC after the queue is completed.
  • Themes: Adwaita-Dark, Adwaita, bb10dark, bb10bright, cleanlooks, cde, motif, plastique, Windows, Fusion, and System.
  • Icons: Archdroid-Red, Archdroid-Blue, Breeze, Breeze-Dark, Papirus, Papirus-Dark, and Papirus-Light.
  • Colour schemes: System, Persepolis Dark Blue, Persepolis ArcDark Blue, Persepolis ArcDark Red, Persepolis Old Dark Red, Persepolis Old Light Red, Persepolis Old Dark Blue, and Persepolis Old Light Blue.
  • AppStream metadata support.
  • Highly configurable.
  • Notification sounds with configurable volume setting.
  • Cross-platform support – there’s support for Linux (Ubuntu/Debian, Arch, Fedora, OpenSUSE), FreeBSD, OpenBSD, MacOS, and Windows operating systems.
  • Internationalization support: Chinese, English, French, and Persian languages.

Here’s an image of Persepolis with the menu bar enabled, using the Fusion style and Papirus icons.

Persepolis Download Manager-Fusion-Papirus


Persepolis is a very useful download manager. Like frontend software, it’s true that its goodness is largely thanks to other software; in this case the wonderful aria2 and youtube-dl command-line utilities. But it builds on the usefulness of the underlying software splendidly.

I’d love some more functionality added for video downloads such as the ability to download a list of videos. And there’s lots of bugs that need fixing if your adept at Python coding!

Persepolis definitely deserves a lot more than ~ 2,000 GitHub stars.

If you want to use aria2 on remote machines, check out Aria2 WebUI.

Support: Wiki, Telegram
Developer: Alireza AmirSamimi,Mohammadreza Abdollahzadeh, Sadegh Alirezaie, Mostafa Asadi, MohammadAmin Vahedinia, Jafar Akhondali, H. Rostami and contributors
License: GNU GPL v3

Persepolis is written in Python. Learn Python with our recommended free books and free tutorials.

Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments