An easy-to-use web application to create your own F-Droid repositories.
Go to file
Hosted Weblate 748fd2d3c5 Update translation files
Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: F-Droid/repomaker javascript
Translate-URL: https://hosted.weblate.org/projects/f-droid/repomaker-javascript/

Update translation files

Updated by "Update PO files to match POT (msgmerge)" hook in Weblate.

Translation: F-Droid/repomaker
Translate-URL: https://hosted.weblate.org/projects/f-droid/repomaker/

Translated using Weblate (Polish)

Currently translated at 100.0% (65 of 65 strings)

Translation: F-Droid/repomaker javascript
Translate-URL: https://hosted.weblate.org/projects/f-droid/repomaker-javascript/pl/

Translated using Weblate (Polish)

Currently translated at 24.6% (16 of 65 strings)

Translation: F-Droid/repomaker javascript
Translate-URL: https://hosted.weblate.org/projects/f-droid/repomaker-javascript/pl/

Translated using Weblate (Polish)

Currently translated at 100.0% (224 of 224 strings)

Translation: F-Droid/repomaker
Translate-URL: https://hosted.weblate.org/projects/f-droid/repomaker/pl/
2019-03-11 17:10:52 +01:00
.idea
debian Appdata: Newer releases must be at the top 2019-01-29 21:15:27 +01:00
doc Point to GitHub's deploy keys docs and add info on server SSH keys 2017-09-18 10:04:33 -03:00
docker Add alls commands and .env var in readme for installation 2018-05-19 16:15:19 +00:00
repomaker Update translation files 2019-03-11 17:10:52 +01:00
tests Make tests work in virtual environment 2018-11-09 23:26:51 +01:00
.dockerignore Add README for Docker deployment 2018-02-21 17:45:21 -03:00
.gitignore Add prototype docker container 2017-10-03 13:22:54 -03:00
.gitlab-ci.yml gitlab-ci: use more secure token passing 2019-01-03 22:04:13 +01:00
.pylintrc
.travis.yml Reinstall Java on OS X CI to get latest version 2017-09-20 09:05:30 -03:00
CHANGELOG.md Bump version to 1.0.0b1 2019-01-29 19:30:12 +01:00
Dockerfile Actually install a SSH client in the docker image 2018-02-22 11:34:26 -03:00
LICENSE
MANIFEST.in Include tests in source distribution and use new website 2018-01-18 12:26:46 -02:00
README.md Bump Django to latest LTS release 1.11.20 2019-03-05 17:08:52 +01:00
manage.py
package.json Use pinned version for material-design-icons-iconfont 2018-11-04 11:44:21 +01:00
pre-release.sh Don't delete fonts on release 2018-11-28 21:02:13 +01:00
purge.sh Add pre-release script and move stuff to data directory 2017-07-27 18:29:13 -03:00
requirements-dev.txt [#142] Gallery screen: add clear filter button 2018-05-31 14:08:45 +02:00
requirements-gui.txt Add a window with pywebview and an application shortcut 2017-09-22 10:18:05 -03:00
requirements.txt Bump Django to latest LTS release 1.11.20 2019-03-05 17:08:52 +01:00
run-tests.sh Parallelize tests 2017-08-01 09:43:47 +02:00
run.sh Download remote app icons in dedicated tasks 2017-08-07 10:06:41 -03:00
setup.cfg Improve installation instructions 2018-09-02 18:13:59 -03:00
setup.py Bump Django to latest LTS release 1.11.20 2019-03-05 17:08:52 +01:00
setup.sh Provide more information in readme 2018-11-02 22:21:18 +01:00
update-translations.sh Updated translations from Weblate 2018-01-25 17:47:55 -02:00

README.md

build status coverage report translation status

Installation

There are several different ways to install Repomaker.

Ubuntu/Debian

In F-Droid's Ubuntu ppa exists a package of Repomaker which might also work on Debian and other Debian based systems. You can install it like this:

sudo add-apt-repository ppa:fdroid/repomaker
sudo apt update
sudo apt install repomaker

Flatpak

Repomaker is available as Flatpak and distributed on Flathub. Once you got Flatpak installed on your system, either go to your system's app store or execute the following commands:

flatpak remote-add --if-not-exists flathub https://flathub.org/repo/flathub.flatpakrepo
flatpak install flathub org.fdroid.Repomaker

PyPi

If you don't want or can't install Repomaker with one of the mentioned methods, you can install it with pip from PyPi.

Requirements

Please make sure you have the following requirements installed before proceeding with the installation.

Install

  • pip for installation of Python 3 dependencies
  • virtualenv to create an isolated Python environment
  • Python development and build files for installing/building some dependencies

On Debian, you can simply run this:

apt install python3-pip python3-wheel python3-dev virtualenv build-essential

Runtime

  • keytool from Java Runtime Environment (JRE)
  • apksigner or alternatively jarsigner from Java Development Kit (JDK)
  • Android Asset Packaging Tool (aapt)
  • libmagic for mime-type detection
  • rsync to publish repositories
  • git to publish repositories to git mirrors

On Debian, you can simply run this:

sudo apt install openjdk-8-jre-headless apksigner aapt libmagic1 rsync git

Install into virtual environment

To not mess with other Python libraries you have installed, we will install repomaker into its own isolated Python environment.

virtualenv -p /usr/bin/python3 repomaker
source repomaker/bin/activate
pip install repomaker[gui]

You should now be able to start by typing:

repomaker

If you want to work on repomaker, please see the development section below.

Troubleshooting

First check that you really have all dependencies from above installed.

If the installation fails with something about openssl, try to install libssl-dev with apt install libssl-dev.

If starting repomaker fail with the error Could not find `keytool` program., you might run into this known issue. Try if apt install openjdk-8-jdk-headless fixes it for you.

If the graphical user interface fails to start, you can try running repomaker-server and repomaker-tasks. If that works, you should be able to open 127.0.0.1:8000 in your browser.

On a server / Docker

Note that you can run Repomaker on a server and make use of its multi user functionality. See Docker docs and the general docs for more information on that topic.

Development

To work on repomaker, you need npm to fetch CSS and JavaScript dependencies: apt install npm.

Then run npm install to install these dependencies.

If you want to run repomaker in your browser rather then using the GUI, you can start it like this:

virtualenv -p /usr/bin/python3 repomaker
source repomaker/bin/activate
./setup.sh
./run.sh

Translation

  • GNU gettext apt install gettext

License

This program is free software: you can redistribute it and/or modify it 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.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

Translating

Everything can be translated. See Translation and Localization for more info.

  • To update translations, run ./update-translations.sh.
  • To add a new translation, run python3 manage.py makemessages -l <lg> where <lg> is the language code, e.g. de.

translation status