GithubHelp home page GithubHelp logo

luiz-c-lima / varia Goto Github PK

View Code? Open in Web Editor NEW

This project forked from giantpinkrobots/varia

0.0 0.0 0.0 8.64 MB

Download manager based on aria2

Home Page: https://giantpinkrobots.github.io/varia/

License: Mozilla Public License 2.0

Shell 0.49% JavaScript 1.23% Python 91.06% HTML 2.70% Meson 4.52%

varia's Introduction

Varia

Download manager based on aria2



Varia is a simple download manager that conforms to the latest Libadwaita design guidelines, integrating nicely with GNOME. It uses the amazing aria2 to handle the downloads.

It supports basic functionality like continuing incomplete downloads from the previous session upon startup, pausing/cancelling all downloads at once, setting a speed limit, authentication with a username/password, setting the simultaneous download amount and setting the download directory.

Get Varia

Flatpak

The main way to get Varia that is supported by me is via Flathub.

flatpak install flathub io.github.giantpinkrobots.varia

This requires you to have Flatpak and the Flathub Flatpak repository installed on your system.

AUR (Arch Linux)

You can get Varia via the AUR as well, but it is not distributed by me.

Windows (experimental)

You can find a highly experimental build of Varia in the releases section. But keep in mind, it will have bugs.

Browser Extension

Download it for Firefox or Chrome.

Building

There are two branches here: 'main' and 'next'. 'next' is where the feature developments for the next version happen.

The 'main' branch can be built with the instructions below. The 'next' branch may also be built with these instructions, but it's not guaranteed. If you want to build the 'next' branch, it can be built with GNOME Builder on Linux.

for Linux

The easiest way of building Varia is to use GNOME Builder. Just clone this repository, and open the folder using Builder. Then, press run. This is the way I make Varia, and the 'next' branch can only be reliably built this way.

To build Varia without Flatpak or GNOME Builder though, you'll need:

  • meson
  • python-setuptools
  • Gtk4 and its development libraries
  • Libadwaita
  • gettext
  • aria2 and the aria2p python package.

To install the ones besides aria2p on some Linux systems:

Ubuntu, Debian, Mint etc:
sudo apt install meson ninja-build aria2 python-setuptools libgtk-4-dev libadwaita-1-0 gettext

Fedora, RHEL etc:
sudo dnf install meson ninja-build aria2 python-setuptools gtk4-devel libadwaita gettext

Arch, EndeavourOS, Manjaro etc:
sudo pacman -S meson aria2 python-setuptools gtk4 libadwaita gettext

To install aria2p using pip (your distro probably doesn't have it in its repos - it's on the AUR for Arch):

pip install aria2p

Then, you can use meson commands to build Varia:

git clone https://github.com/giantpinkrobots/varia
cd varia
meson setup builddir
cd builddir
meson compile
sudo meson install

for Windows

Windows support is experimental. Translations don't work yet.

  • Get MSYS2.
  • Install dependencies on an MSYS2 shell:
pacman -S mingw-w64-x86_64-python
pacman -S mingw-w64-x86_64-gtk4
pacman -S mingw-w64-x86_64-libadwaita
pacman -S mingw-w64-x86_64-python-gobject
pacman -S mingw-w64-x86_64-python-pip
pip install aria2p
pip install pyinstaller
  • To have the icon applied properly you also need python-pillow, otherwise pyinstaller gives an error:
pacman -S mingw-w64-x86_64-python-pillow
  • Copy the contents of the /src folder to the home directory of your MSYS2 install.
  • Copy varia.spec and icon.ico from the /windows directory to the home directory of your MSYS2 install.
  • Run the pyinstaller command:
pyinstaller varia.spec

Running variamain.exe will start Varia.

Contributing

Please refer to the contributing guide page.

License

Varia is licensed under the Mozilla Public License 2.0.

But, it also relies on the following pieces of software and libraries:

  • aria2
  • OpenSSL
  • aria2p
  • GTK4
  • Libadwaita
  • Meson
  • Python-appdirs
  • Python-certifi
  • Python-charset-normalizer
  • Python-gettext
  • Python-idna
  • Python-loguru
  • Python-requests
  • Python-setuptools
  • Python-urllib3
  • Python-websocket-client

The licenses of all of these pieces of software can be found in the dependencies_information directory.

The name

The name "Varia" comes from the aria2 software it is based on, and I added a "V" to make it "Varia". In the Metroid series of games, there is a special suit you eventually get named a "Varia Suit" with its main feature being allowing Samus to withstand extreme temperatures. I spent some time thinking about how to connect the Varia Suit to my app, but couldn't, soooo... I think it just sounds cool.

varia's People

Contributors

giantpinkrobots avatar alexmelman88 avatar daphipz avatar vistaus avatar mejans avatar laichiaheng avatar joseph-digiovanni avatar albanobattistella avatar jimmac avatar kianmeng avatar luiz-c-lima avatar redbearak avatar tiagoflach avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.