forked from pyload/pyload
-
Notifications
You must be signed in to change notification settings - Fork 0
snilt/pyload
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
This is a fork of https://github.com/pyload/pyload with a reworked Qt4/Qt5 GUI on top of the pyLoad stable branch. README for pyLoad Client v0.4.20 ; Internal version: 2021-02-07 https://github.com/snilt/pyload/tree/forkreadme The actual source code is in the qt4gui branch. https://github.com/snilt/pyload/tree/qt4gui NOTE: If you update from previous pyLoad Client version 0.4.9 then you must delete the userplugins directory from your config folder at first. Start pyLoad Client, goto the 'Log' tab and write down the value of 'Configuration directory'. Stop pyLoad Client, navigate to the 'Configuration directory' and delete the 'userplugins' subdirectory. Some (new) features =================== - Qt4 and Qt5 support - Drag'n'Drop - Sorting of packages and links - Moving of links to another package (Collector only) - Quick access to the server's download speed setting - Built-in ClickNLoad port forwarding - SSL encryption - Desktop notifications - Custom Fonts - Language Support (only english and german at this time) - Captcha solving dialog - File hosting service account management (untested) - Adding of packages, link and containers - Clipboard watcher - Command line argument support - Internal server (standalone mode) Download ======== From the GitHub website: https://github.com/snilt/pyload/releases/latest Or clone the git repository (Linux Bash): git clone https://github.com/snilt/pyload.git cd pyload git checkout -b stable origin/stable git checkout -b qt4gui origin/qt4gui Update an existing clone (Linux Bash): cd pyload git checkout forkreadme && git pull git checkout stable && git pull git checkout qt4gui && git pull Dependencies in addition to the dependencies of pyLoad (https://github.com/pyload/pyload/tree/stable) ===================================================================================================== Python 2.7 PyQt4 or PyQt5 Installation of dependencies ============================ Linux/Unix-like OSs: -------------------- Ubuntu/Debian/Debian-based: apt-get install python python-crypto python-pycurl python-imaging python-beaker rhino PyQt4: apt-get install python-qt4 PyQt5: apt-get install python-pyqt5 Optional: Desktop notifications: notify2: apt-get install python-notify2 pynotify: apt-get install python-notify pyOpenSSL: apt-get install python-openssl Note: The instructions for the distributions below may be outdated. openSUSE: zypper install python python-pycrypto python-pycurl python-Pillow python-Beaker rhino PyQt4: zypper install python-qt4 PyQt5: zypper install python-qt5 Optional: Desktop notifications: notify2: zypper install python-notify2 pynotify: zypper install python-notify # python-gtk pyOpenSSL: zypper install python-pyOpenSSL Fedora: dnf install python python2-crypto python-pycurl python2-pillow python-beaker rhino PyQt4: dnf install PyQt4 PyQt5: dnf install python2-qt5 Optional: Desktop notifications: notify2: dnf install python-notify2 pynotify: dnf install notify-python # pygtk2 pyOpenSSL: dnf install pyOpenSSL Arch: pacman -S --needed python2 python2-crypto python2-pycurl python2-pillow python2-beaker python2-funcsigs rhino PyQt4: pacman -S --needed python2-pyqt4 PyQt5: pacman -S --needed python2-pyqt5 Optional: Desktop notifications: notify2: pacman -S --needed python-notify2 pynotify: pacman -S --needed python2-notify pyOpenSSL: pacman -S --needed python2-pyopenssl CentOS: yum install python python2-crypto python-pycurl python-pillow python-beaker rhino PyQt4: yum install PyQt4 PyQt5: I couldn't find a suitable package. Optional: Desktop notifications: notify2: I couldn't find a suitable package. To install it via pip do: yum install python2-pip && pip2 install notify2 pynotify: yum install notify-python # pygtk2 pyOpenSSL: yum install pyOpenSSL FreeBSD: pkg install python27 py27-pycrypto py27-pycurl py27-pillow py27-beaker py27-sqlite3 rhino PyQt4: pkg install py27-qt4 PyQt5: pkg install py27-qt5 # Untested, no package? Install from ports? Optional: Desktop notifications: notify2: pkg install py27-notify2 pynotify: pkg install py27-notify pyOpenSSL: pkg install py27-openssl Windows 7/10: ------------- For PyQt4 64-bit: Download and install Python: https://www.python.org/ftp/python/2.7.18/python-2.7.18.amd64.msi Install with default features, unless you know better. Update Python Package Installer from Command Prompt: C:\Python27\python -m pip install -U pip setuptools wheel Download and install PyQt4: https://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.11.4/PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x64.exe Selecting install type 'Minimal' is sufficient for pyLoad Client. For PyQt4 32-bit: Download and install Python: https://www.python.org/ftp/python/2.7.18/python-2.7.18.msi Install with default features, unless you know better. Update Python Package Installer from Command Prompt: C:\Python27\python -m pip install -U pip setuptools wheel Download and install PyQt4: https://sourceforge.net/projects/pyqt/files/PyQt4/PyQt-4.11.4/PyQt4-4.11.4-gpl-Py2.7-Qt4.8.7-x32.exe Selecting install type 'Minimal' is sufficient for pyLoad Client. For PyQt5 64-bit (only): Download and install Python: https://www.python.org/ftp/python/2.7.18/python-2.7.18.amd64.msi Install with default features, unless you know better. Update Python Package Installer from Command Prompt: C:\Python27\python -m pip install -U pip setuptools wheel Install PyQt5 from Command Prompt: C:\Python27\python -m pip install https://github.com/pyqt/python-qt5/archive/master.zip Download and install 'Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019': https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads Install dependencies from Command Prompt: C:\Python27\python -m pip install pycurl==7.43.0.2 pillow pycryptodome Js2Py Optional: Install pyOpenSSL: C:\Python27\python -m pip install pyOpenSSL Bundled executable package for Windows 7/10 =========================================== These packages don't require Python, Qt and the other dependencies to be installed. Download pyLoadQt4ClientWin32Exe or pyLoadQt5ClientWin64Exe from: https://github.com/snilt/pyload/releases/latest To start pyLoad Client from a Command Prompt: pyLoadGui.exe Note: If you get the error message 'Failed to load PyQt', download and install 'Microsoft Visual C++ Redistributable for Visual Studio 2015, 2017 and 2019': https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads To start pyLoad (the server): pyLoadCore.exe Note: You must first configure the server before you can use it. To start the pyLoad Configuration Assistent, run pyLoadCore.exe with the option: -s For the beginning, you can just accept the default values and set a password. General Information =================== pyLoad Client connections to remote pyLoad servers: If you want to connect to a server that runs the official pyLoad code (https://github.com/pyload/pyload/tree/stable), you must replace two files on the server side with the ones from this repository, otherwise errors will occur. module/remote/thriftbackend/pyload.thrift module/remote/thriftbackend/thriftgen/pyload/ttypes.py Qt graphical library: pyLoad Client supports PyQt4 and PyQt5. PyQt provides Python bindings for Qt. PyQt depends on Qt. On some systems Qt4 and Qt5 can be installed side by side. Before installing PyQt, you may want to check which, or if any, Qt version is already installed on your system. Then install the PyQt version which belongs to an existing Qt installation if you want to avoid the installation of another Qt version. pyLoad Client detects the installed PyQt version on startup, when PyQt4 and PyQt5 are both installed then PyQt4 will be used. You can force the PyQt version to use by command line options. Using PyQt5 on an older Qt4 based Linux/Unix-like desktop might require a bit of extra effort, see desktop notifications notes below. Desktop notifications: pyLoad Client uses the Qt library which has built-in support for desktop notifications, it should work seamless. However, on Linux/Unix-like OSs, additional packages might provide better desktop integration: First option (recommended): notify2 --- Python interface to DBus notifications This is a replacement for the older pynotify. If your Linux distribution doesn't have a suitable python 2.7 package, you may want to install it via pip, see: https://pypi.org/project/notify2 Second option: pynotify --- Python bindings for libnotify This doesn't work for pyLoad Client on some (modern) systems, and can be the reason for pyLoad Client to crash with a segmentation fault on every startup, or may just work fine for pyLoad Client (even on modern systems). On some systems you possibly also must install: 'Python bindings for the GTK+ widget set' (python-gtk/pygtk2) to get this working correctly. Notes: By default pyLoad Client automatically chooses the method to use for displaying desktop notifications in the following order: notify2, pynotify, qt_tray You can force the desktop notification method by command line options. If you want to use pynotify together with PyQt5, but pyLoad Client crashes with a segmentation fault on every startup: Install 'Qt 5 extra widget styles' (on Debian via: apt-get install qt5-style-plugins) and start pyLoad Client like this: QT_QPA_PLATFORMTHEME=gtk2 ./pyLoadGui.py If that doesn't help: Additionally install and setup the 'Qt5 Configuration Utility' (qt5ct) and start pyLoad Client like this: QT_QPA_PLATFORMTHEME=qt5ct ./pyLoadGui.py OpenSSL: pyOpenSSL can be used to encrypt network traffic between the webinterface and a pyLoad server. And can also be used to encrypt network traffic between the pyLoad Client and a pyLoad server. How to start the application: To start pyLoad Client from a terminal on Linux/Unix-like OSs: Try: python2.7 pyLoadGui.py Or: python2 pyLoadGui.py Or: python pyLoadGui.py Or: ./pyLoadGui.py To start pyLoad Client from a Command Prompt on Windows: Try: C:\Python27\python pyLoadGui.py Or: python pyLoadGui.py Or: pyLoadGui.py To start pyLoad (the server): Do the same as for pyLoad Client but replace pyLoadGui.py with pyLoadCore.py Note: You must first configure the server before you can use it. To start the pyLoad Configuration Assistent, run pyLoadCore.py with the option: -s For the beginning, you can just accept the default values and set a password.
About
A reworked Qt4/Qt5 based client for the Open Source download manager pyLoad
Topics
Resources
Stars
Watchers
Forks
Packages 0
No packages published