Giter Site home page Giter Site logo

pyload / pyload-android Goto Github PK

View Code? Open in Web Editor NEW
60.0 18.0 25.0 1.71 MB

A modern and feature-rich Android client for pyLoad

Home Page: https://f-droid.org/repository/browse/?fdid=org.pyload.android.client

Java 99.83% HTML 0.17%
java pyload android-client android hacktoberfest

pyload-android's Introduction


pyLoad

The free and open-source Download Manager written in pure Python



Choose your Version

The newest version of pyLoad running on Python 3.6+ and PyPy (experimental) is developed in the main branch on GitHub and published as pyload-ng on PyPI.

The old version of pyLoad working on Python 2 is still available in the stable branch on GitHub, pre-built packages are available for download on the releases page on GitHub.

This README covers only the latest version of pyLoad.

Quick Start

Open a terminal window and install pyLoad typing:

pip install --pre pyload-ng[all]

To start pyLoad use the command:

pyload

See the usage section for information on all available options.

If you want to uninstall pyLoad:

pip uninstall pyload-ng

Usage

usage: pyload [-h] [-d] [-r] [--storagedir STORAGEDIR] [--userdir USERDIR]
              [--tempdir TEMPDIR] [--dry-run] [--daemon] [--version]

The free and open-source Download Manager written in pure Python

optional arguments:
  -h, --help                    show this help message and exit
  -d, --debug                   enable debug mode
  -r, --reset                   reset default username/password
  --storagedir STORAGEDIR       use this location to save downloads
  --userdir USERDIR             use this location to store user data files
  --tempdir TEMPDIR             use this location to store temporary files
  --dry-run                     test start-up and exit
  --daemon                      run as daemon
  --version                     show program's version number and exit

To start pyLoad, type the command:

pyload

This will create the following directories (if they don't exist already):

  • ~/Downloads/pyLoad: where downloads will be saved.
  • ~/.pyload: where user data and configuration files are stored.
  • <TMPDIR>/pyLoad: where temporary files are stored. <TMPDIR> is platform-specific.

Note: On Windows, user data and configuration files are stored in the directory ~\AppData\Roaming\pyLoad.

Help

To show an overview of the available options, type:

pyload --help

Web Interface

Open your web browser and visit the url http://localhost:8000 to have access to the pyLoad's web interface.

  • Default username: pyload.
  • Default password: pyload.

It's highly recommended to change the default access credentials on first start.

Advanced Installation

Stable Release

Get the latest stable release of pyLoad:

pip install pyload-ng

Note: No stable release yet, pyLoad is now in pre-release phase.

Available modules

  • pyload.core: pyLoad's heart.
  • pyload.plugins: the collection of officially supported plugins for pyLoad.
  • pyload.webui: a web interface to interact with pyLoad.

Development Release

You can force the installation of the latest development release of pyLoad, appending the option --pre to the installation command:

pip install --pre pyload-ng

Do not use development releases in production. Unexpected crashes may occur.

Extra Dependencies

Extra dependencies are non-essential packages that enable additional features of pyLoad.

To install them you have to append a specific tag name to the installation command.

Available tags

  • plugins: includes packages used by several plugins.
  • build: includes packages used to build translations.
  • all: includes both plugins and build packages.

You can use a tag in this way:

pip install pyload-ng[plugins]

Or group more together:

pip install pyload-ng[plugins][build]

Build Translations

Use the command build_locale to retrieve and build the latest locale files (translations):

python setup.py build_locale

Invoke build_locale before building the package (eg. bdist_wheel).

Note:

You don't need to build the translations if you installed pyLoad through pip, they're already included.

Report a Vulnerability

Please refer to SECURITY to read our security policy.

Contribute to pyLoad

Please refer to CONTRIBUTING to read our contribution guidelines.

Docker Images

Docker build status MicroBadger layers MicroBadger size

Available images

  • pyload/pyload:alpine: docker image for amd64, arm and arm64v8.
  • pyload/pyload:ubuntu-arm32v7: docker image for arm32v7.
  • pyload/pyload: alias of pyload/pyload:alpine.

Create Container

docker create --name=pyload -v <USERDIR>:/config -v <STORAGEDIR>:/downloads --restart unless-stopped pyload/pyload

Note:

Replace <STORAGEDIR> with the location on the host machine where you want that downloads will be saved.

Replace <USERDIR> with where you want that user data files (configurations) are stored.

Start Container

docker start pyload

Stop Container

docker stop pyload

Show Logs

docker logs -f pyload

Docker Compose

Compatible with docker-compose v2 schemas:

---
version: '2'
services:
  pyload:
    image: pyload
    build: <REPODIR>
    container_name: pyload
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/London
    volumes:
      - <USERDIR>:/config
      - <STORAGEDIR>:/downloads
    ports:
      - 8000:8000 # Webinterface
      - 9666:9666 # Click 'N' Load
    restart: unless-stopped

Note:

Replace <REPODIR> with the location on the host machine where you have checked out the pyload repository.

Replace <STORAGEDIR> with the location on the host machine where you want that downloads will be saved.

Replace <USERDIR> with where you want that user data files (configurations) are stored.

Troubleshooting

pip not found

Retry replacing the command pip with pip3:

pip3 install pyload-ng

If fails again, you may not have the Python interpreter or the pip package manager installed on your system.

Try reinstalling Python to fix this issue.

Visit https://www.python.org/downloads to get the proper Python 3 release for your system.

pyload-ng not found

Check the version of the Python interpreters installed on your system.

To show the version of your default Python interpreter, type the command:

python --version

If the version is too old, try to upgrage Python, then you can retry to install pyLoad.

Python releases below version 3.6 are not supported!

Setuptools is too old

To upgrade the setuptools package, type the command:

pip install --upgrade setuptools

Permission denied

Under Unix-based systems, try to install pyLoad with root privileges.

Prefix the installation/uninstallation command with sudo:

sudo pip install pyload-ng
sudo pip uninstall pyload-ng

Under Windows systems, open a Command Prompt as administrator to install pyLoad with root privileges.

You can also try to install the pyload-ng package without root privileges.

Append the option --user to the installation command:

pip install --user pyload-ng

Licensing

license cla

Open Source License

You are allowed to use this software under the terms of the GNU Affero General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

Please refer to LICENSE to read the project license.

Alternative License

With an explicit permission of the pyLoad team you may use or distribute this software under a different license according to the agreement.

Contributor License Agreement

Please refer to CLA for the full agreement conditions.

This is essentially what you will be agreeing to:

  • You claim to have the right to make the contribution (i.e. it's your own work).
  • You grant the project a perpetual, non-exclusive license to use the contribution.
  • You grant the project rights to change the outbound license that we use to distribute the code.
  • You retain full ownership (copyright) of your submission and are free to do with it as you please.

Contact us at [email protected] for any question about the pyLoad licensing policy.

Credits

Please refer to AUTHORS to know a bit more about the people behind pyLoad.



© 2008-2024 pyLoad team

pyload-android's People

Contributors

gammac0de avatar jplitza avatar ollide avatar ranan avatar rayne avatar rylos avatar stickell avatar vincegithub avatar vuolter avatar whitehattux avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pyload-android's Issues

PyLoad connection: wrong username/password

I have installed pyload on my raspberry, everything is fine, but android app not work.

I install pyload-android from github apk, version 0.3.7, pyload from github deb version 0.4.20.

In pyload-android settings I set my username/password (I check 3 times), I have tried with all configuration of ssl (I don't have ssl on pyload, I have check in config file), but I still get an error wrong username or password (my phone is in french so I have the message Erreur dans l'identifiant ou le mot de passe).

I check on pyload-web (from my android device, so I am sure that I can connect to pyload from it), api port is 7227, as in pyload-android options, and my username/password works.

I don't found any option to see log in pyload-android and I don't see any errors in pyload logs, except ADDON ClickNLoad: [Errno 98] Address already in use��� every 4 minutes, but I think it is not related to pyload-android connection).

My pyload config file says that remote connection is enabled and on port 7227:

remote - "Remote":                                                                                 
        bool activated : "Activated" = True                                                        
        ip listenaddr : "Adress" = 0.0.0.0                                                         
        bool nolocalauth : "No authentication on local connections" = True                         
        int port : "Port" = 7227

I can give you more informations if you want.

Can you help me or solve this problem? (On the python part I can help a bit, but I don't know anything about java)

I have check issue #30 but I think it is not the same error.

PS: Sorry for my english, I'm french 😓
EDIT: Add issue number

Stops connecting after pyload update to 0.4.20

After the update of the pyload installation to 0.4.20, when starting the (correctly configured) pyload android apk an error message pops up (translated from german):

Server version does not match, please use pyLoad 0.4.9

No connection is possible and no data of the server is shown.

color/theme

After update to 0.3.7 the dark theme is gone.
I'm using Android 10 with dark theme but in the past the app always was dark.
There also is no switch to change the theme.
What has been changed and how am I able to get back the dark theme?

Edit: I'm also not able to see the file names. White fonts on white background.

Screenshot_20200902-215817

Can't login with pyload app for android

I'm using the latest version of pyload-android from F-DROID and have the same issue like here.

I've configured everything with following values:
username: <my username working with web gui (admin access)>
password:
address: 192.168.1.55 (tried 0.0.0.0 too)
port 7227

I'm using the app only in my local network (not from WAN) but I'm not able to connect with it.

It's also not possible to switch the app to dark mode (like my whole UI on my smartphone) - but this is not the most important problem. :-)

ClicknLoad Support

Maybe add the option to forward click and load requests to the pyload server

Update apk to support latest!!

Last build only supports android 0.4.9 myself and others im sure would love to see a new working version to support the latest build!!!!! Please consider this as i love pyload and im mobile 98% of the time and it would be so much more efficient than a web ui.

Thank you

For ease of use ...

... you may add to the readme, that the port in app is the remote port, and not the port of the web ui.

Maybe obvious, but every time I have to reinstall your famous app I only realize this after some time.

Thanks, regards

Lost connection - please try to refresh

Hi guys!
I keep getting this error when trying to connect to my pyload installation
It was working for years. I recently changed my server (It was an ubuntu 14.04 LTS now it is an 16.04)
And frankly, since I haven't used the client for a while, I am not even 100% sure that this started after migrating to the new server, or before..
But the new server has the same IP address as the older one
All port forwarding setting are correct on my firewall.
In any case, however, the android client cannot even connect using the internal address from inside my network
The backend port is the default (7227) and the machine is listening normally to port 7227:
~# netstat -an | grep 7227 | grep -i listen
tcp 0 0 0.0.0.0:7227 0.0.0.0:* LISTEN
I also tried a different one (7777) without any luck
Any ideas?
My android version is 7.1.2 (Nexus 5x)

Can't connect to my seedbox's Pyload

I have a dedi with quickbox installed. Ubuntu 16.04 with the latest version of Pyload and Pyload apk
In APK settings:
Under Username: I have my Pyload's username which is the same as my server's login username
Under Password: I have my Pyload's password which is the same as my server's login password
Under Address: I have my server's IP address
Under Port: it's 7227
SSl connection and validate SSL certificate are disabled.

I'm getting "Lost connection. Please try to refresh"
Any help?
Edit: I'm sorry at first I've created the issue without any details by mistake

Can't seem to abort downloads.

On the Android client, while on the "overview" section, I tried to abort a download by holding down on an active download and pressing abort, however, it doesn't seem to do anything, on the web interface it works fine.

Remotesettings should be ordered by name

Currently remote settings are taken from the backend as they come.
For general config this is not an issue, but it is a real pain to find a specific plugin config in an unordered list.
There should be a very simple sort for the settings section.

Link??

Link to precompiled new apk please????!!!!

Check & request operation missing before choosing container file

Hi, there, I've found a issue in version 0.3.7, which is downloaded from F-Droid.

Description

This app does not check nd request the WRITE_EXTERNAL_STORAGE permission when I want choose a container file form storage.
There are two unexpected behaviors:

  1. choose file page is empty until I grant this permission in the system setting
  2. it will crash if I continue chose Parent Directory

Reproduce

  • Step 1 : Open pyLoad and select Add Links button.
    image

  • Step 2 : Click "CHOOSE" for choose container file
    Because this version does not check and request permission when I click "CHOOSE" button , no folders and files are read out on this page.
    image

  • Step 3 : go to system setting , grant the storage permission

  • Step 4 : repeat step 1 and step 2
    image

The call chain related to this bug :

	org.pyload.android.client.module.FileChooser.onCreate(android.os.Bundle)void
	 org.pyload.android.client.module.FileChooser.<clinit>()void
	  android.os.Environment.getExternalStorageDirectory()java.io.File

@GammaC0de
Could you help me review this issue? Very thanks!

Play store update

Hi,
it would be great if you could just pack the current version and push it to the play store. The multiple link receiving feature (last pull request) should be reason enough ;-)
Regards

Pyload-Ng support?

Hi,

Thanks for this app. Are there plans to support Pyload-Ng? It does not seem to work iwht it. I works fine if I direct to older Pyload.

Force-Close when opening Settings on Honeycomb

I installed pyLoad-Android on my old stock HTC Flyer (3.2.1) and could not access the settings menu because of a FC.

Stacktrace below:

E/AndroidRuntime( 8658): FATAL EXCEPTION: main
E/AndroidRuntime( 8658): java.lang.NoSuchMethodError: android.app.ActionBar.setHomeButtonEnabled
E/AndroidRuntime( 8658): at org.pyload.android.client.Preferences.onCreate(Unknown Source)
E/AndroidRuntime( 8658): at android.app.Activity.performCreate(Activity.java:4521)
E/AndroidRuntime( 8658): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1072)
E/AndroidRuntime( 8658): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1961)
E/AndroidRuntime( 8658): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2018)
E/AndroidRuntime( 8658): at android.app.ActivityThread.access$500(ActivityThread.java:139)
E/AndroidRuntime( 8658): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1124)
E/AndroidRuntime( 8658): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 8658): at android.os.Looper.loop(Looper.java:152)
E/AndroidRuntime( 8658): at android.app.ActivityThread.main(ActivityThread.java:4636)
E/AndroidRuntime( 8658): at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 8658): at java.lang.reflect.Method.invoke(Method.java:491)
E/AndroidRuntime( 8658): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841)
E/AndroidRuntime( 8658): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599)
E/AndroidRuntime( 8658): at dalvik.system.NativeStart.main(Native Method)
E/EmbeddedLogger( 1571): App crashed! Process: org.pyload.android.client
E/EmbeddedLogger( 1571): App crashed! Package: org.pyload.android.client v17 (0.3.4)
E/EmbeddedLogger( 1571): Error getting package label: org.pyload.android.client
E/EmbeddedLogger( 1571): java.lang.NullPointerException
E/EmbeddedLogger( 1571): at com.htc.embedded.EmbeddedLogger.onHandleApplicationCrash(EmbeddedLogger.java:56)
E/EmbeddedLogger( 1571): at com.android.server.am.ActivityManagerService.handleApplicationCrash(ActivityManagerService.java:7355)
E/EmbeddedLogger( 1571): at android.app.ActivityManagerNative.onTransact(ActivityManagerNative.java:1045)
E/EmbeddedLogger( 1571): at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:1672)
E/EmbeddedLogger( 1571): at android.os.Binder.execTransact(Binder.java:339)
E/EmbeddedLogger( 1571): at dalvik.system.NativeStart.run(Native Method)
E/EmbeddedLogger( 1571): Application Label:

Captcha notification

Hello!

I am a bit disappointed that there is no function to get notified when the app is on stand-by (or not running). In my opinion this function is missing because you aren't looking at the app all the time. So a meassage like "New Captacha available" with sound & vibration + entry in the normal notification bar would be nice.

Is it possible to add this function?

Include app into fdroid

Hi there,

I know this version of the app only works against current stable and will probably get a complete rewrite for version 1.0.0 of pyload.
But until then it would be nice to have the app available in fdroid.
This would also fix #17.
I would try to prepare this as much as possible, if I have a chance of getting a Pull-Request with these changes accepted.

Please give me quick feedback about this issue so I know on whether I should get started on this.

Best regards
WhiteHatTux.

Sorting Settings

Hello.

Due to the count of plugins and its settings is quite high now, a functionality to search or/and list them in alphabetical order would be nice.

Queue - Choose an action

In the queue, if you want to restart, delete or move a package it doesn´t work. The options: "Restart", "Delete" and "Move Location" won´t do anything. If you do the point in the menu "Restart Failed Files" it works. Please add a point "Clear Queue" or "Delete Queue" to the Menu if it isn´t possible to get the actions (restart, delete, move location) to work.

Android L Preview

Hi There,

Im an android developer and installed the Android L Preview to check my projects, while i use my phone also in private i noticed that pyload-android crashes during settings when i try to change the ip adress.

Some log i see:

06-30 11:08:31.610 14060-10050/? W/ActivityManager﹕ Exception thrown during pause
android.os.DeadObjectException
at android.os.BinderProxy.transact(Native Method)
at android.app.ApplicationThreadProxy.schedulePauseActivity(ApplicationThreadNative.java:670)
at com.android.server.am.ActivityStack.startPausingLocked(ActivityStack.java:829)
at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2610)
at com.android.server.am.ActivityStack.finishTopRunningActivityLocked(ActivityStack.java:2493)
at com.android.server.am.ActivityStackSupervisor.finishTopRunningActivityLocked(ActivityStackSupervisor.java:2203)
at com.android.server.am.ActivityManagerService.handleAppCrashLocked(ActivityManagerService.java:9952)
at com.android.server.am.ActivityManagerService.makeAppCrashingLocked(ActivityManagerService.java:9849)
at com.android.server.am.ActivityManagerService.crashApplication(ActivityManagerService.java:10490)
at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:10041)
at com.android.server.am.NativeCrashListener$NativeCrashReporter.run(NativeCrashListener.java:86)
06-30 11:08:31.615 14060-10050/? I/am_resume_activity﹕ [0,19792466,141,org.pyload.android.client/.pyLoad]
06-30 11:08:31.617 14060-10050/? I/ActivityManager﹕ Restarting because process died: ActivityRecord{12e0252 u0 org.pyload.android.client/.pyLoad t141}
06-30 11:08:31.618 14060-10050/? I/am_restart_activity﹕ [0,19792466,141,org.pyload.android.client/.pyLoad]
06-30 11:08:31.618 14060-10050/? W/ActivityManager﹕ Exception when starting activity org.pyload.android.client/.pyLoad
android.os.DeadObjectException
at android.os.BinderProxy.transact(Native Method)
at android.app.ApplicationThreadProxy.scheduleLaunchActivity(ApplicationThreadNative.java:765)
at com.android.server.am.ActivityStackSupervisor.realStartActivityLocked(ActivityStackSupervisor.java:1064)
at com.android.server.am.ActivityStackSupervisor.startSpecificActivityLocked(ActivityStackSupervisor.java:1160)
at com.android.server.am.ActivityStack.resumeTopActivityLocked(ActivityStack.java:1784)
at com.android.server.am.ActivityStack.resumeTopActivityLocked(ActivityStack.java:1400)
at com.android.server.am.ActivityStack.startPausingLocked(ActivityStack.java:873)
at com.android.server.am.ActivityStack.finishActivityLocked(ActivityStack.java:2610)
at com.android.server.am.ActivityStack.finishTopRunningActivityLocked(ActivityStack.java:2493)
at com.android.server.am.ActivityStackSupervisor.finishTopRunningActivityLocked(ActivityStackSupervisor.java:2203)
at com.android.server.am.ActivityManagerService.handleAppCrashLocked(ActivityManagerService.java:9952)
at com.android.server.am.ActivityManagerService.makeAppCrashingLocked(ActivityManagerService.java:9849)
at com.android.server.am.ActivityManagerService.crashApplication(ActivityManagerService.java:10490)
at com.android.server.am.ActivityManagerService.handleApplicationCrashInner(ActivityManagerService.java:10041)
at com.android.server.am.NativeCrashListener$NativeCrashReporter.run(NativeCrashListener.java:86)

maybe it can help ;)

Unable to open Subfolders

When manually adding a Container File the app doesn't open a subfolder on the sd-card but is trying to use the "selected" folder as a Container File.
Only happens if i select german language, when language is set to english everything works perfectly normal.

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.