GPlayWeb: a web interface for GPlayCli with binding with fdroid-server
2.2K
Original work of @matlink forked to use latest versions of fdroid and gplaycli and providing a Dockerfile for easy install.
First, install docker.
Then, to use the last version of container on dockerhub:
docker run --name gplayweb -p 127.0.0.1:8888:8888 fxaguessy/gplayweb
You can also build the container yourself
docker build -t gplayweb .
Then run it
docker run --name gplayweb -p 127.0.0.1::8888:8888 gplayweb
To preserve gplayweb and fdroid data, mount a local folder as docker volume:
docker run --name gplayweb -p 127.0.0.1:8888:8888 -v ~/fdroid/:/data/fdroid fxaguessy/gplayweb
Then, you may want to expose your (static) fdroid repo using a nginx container
docker run --name fdroid-nginx -p 8080:80 -v ~/fdroid/repo:/usr/share/nginx/html:ro nginx
As a result, you can access gplayweb on localhost and the fdroid repository on your.ip.address:8080.
For both methods, you'll need those packages
# apt-get install python-dev python-pip libffi-dev
Use pip install gplayweb to install it. If you got a SandboxViolation for gplaycli, install it before with pip install gplaycli.
After that, rename /etc/gplayweb/gplayweb.conf.example to /etc/gplayweb/gplayweb.conf and change parameters.
Clone this repo:
$ git clone https://github.com/fxaguessy/gplayweb
Install gplayweb requirements with pip :
$ pip install -r requirements.txt
Copy gplayweb.conf.example to gplayweb.conf and change the settings (you can comment unwanted lines out with #)
If you plan to add compatibility with F-Droid repo, ensure to uncomment the two config variables fdroid_repo_dir and fdroid_exec.
$ ./gplayweb -h
usage: gplayweb.py [-h] [-c CONF_FILE]
A web interface for GPlayCli
optional arguments:
-h, --help show this help message and exit
-c CONF_FILE, --config CONF_FILE
Use a different config file than gplayweb.conf
Based on https://f-droid.org/wiki/page/Installing_the_Server_and_Repo_Tools python-imaging may be needed to update FDroid repository, don't forget to install it.
create user gplayweb : adduser gplayweb --disabled-password
go to /opt directory : cd /opt
get android SDK : wget https://dl.google.com/android/android-sdk_r24.3.4-linux.tgz
untar it : tar xvfz android-sdk_r24.3.4-linux.tgz
give it to gplayweb : chown gplayweb android-sdk-linux -R
put ANDROID_HOME env variable to your .bashrc : echo export ANDROID_HOME=/opt/android-sdk-linux >> ~/.bashrc
put android tools to your PATH variable : echo 'export PATH=$PATH:$ANDROID_HOME/tools' >> ~/.bashrc
reload .bashrc : source ~/.bashrc
if you don't have java (java -version) : apt-get install openjdk-7-jdk
install Android 22 SDK : android update sdk --no-ui -a --filter 4
install platform-tools : android update sdk --no-ui --filter platform-tools
clone fdroidserver : cd /opt && git clone https://gitlab.com/fdroid/fdroidserver.git && cd fdroidserver
install fdroidserver : sudo apt-get install fdroidserver
go to the folder where you want to host your fdroid repo : cd /opt/fdroid/
give it to gplayweb : chown gplayweb . -R
for android aapt to work, you need these packages : apt-get install lib32stdc++6 lib32z1
initialize fdroid repo : fdroid init
then in /etc/gplayweb/gplayweb.conf :
folder=/opt/fdroid/repo
fdroid_repo_dir=/opt/fdroid
fdroid_exec=/usr/local/bin/fdroid
It might still be a bit buggy.
Change USER for the user which will run the daemon (gplayweb in this example), and ANDROID_SDK for the path of the android-sdk you have configured earlier (/opt/android-sdk-linux in this example).
$ /etc/init.d/gplayweb {start|stop|restart|status}
Please me hard enough if you want a systemd unit :D
Use pip uninstall gplayweb, and remove conf, templates and static files with rm -rf /etc/gplayweb /usr/share/gplayweb. Should be clean, except python dependancies for gplayweb and gplaycli.
Content type
Image
Digest
Size
792.9 MB
Last updated
over 9 years ago
docker pull fxaguessy/gplayweb