7b52722d12
The SSH key fingerprint is used in the filename. The base64 used for SSH key fingerprints includes /. Not all keys will end up having a / in them. For those that do, this will crash since the ssh key filename ends up being non-existent dirs: $ fdroid nightly Importing keystore /home/mhoffmann/.android/debug.keystore to /tmp/.cqswaeo8/.keystore.p12... MAC verified OK writing RSA key CRITICAL: Unknown exception found! Traceback (most recent call last): File "/usr/lib/python3.6/shutil.py", line 544, in move os.rename(src, real_dst) FileNotFoundError: [Errno 2] No such file or directory: '/tmp/.cqswaeo8/.privkey' -> '/tmp/.cqswaeo8/debug_keystore_PZtS/4Tzk4dpzKiX9AAf1GrhAVi9U7UE1aYEHr6evKo_id_rsa' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/home/mhoffmann/projects/oss/fdroidserver/fdroid", line 156, in <module> main() File "/home/mhoffmann/projects/oss/fdroidserver/fdroid", line 132, in main mod.main() File "/home/mhoffmann/projects/oss/fdroidserver/fdroidserver/nightly.py", line 284, in main privkey = _ssh_key_from_debug_keystore() File "/home/mhoffmann/projects/oss/fdroidserver/fdroidserver/nightly.py", line 73, in _ssh_key_from_debug_keystore shutil.move(privkey, ssh_private_key_file) File "/usr/lib/python3.6/shutil.py", line 558, in move copy_function(src, real_dst) File "/usr/lib/python3.6/shutil.py", line 257, in copy2 copyfile(src, dst, follow_symlinks=follow_symlinks) File "/usr/lib/python3.6/shutil.py", line 121, in copyfile with open(dst, 'wb') as fdst: FileNotFoundError: [Errno 2] No such file or directory: '/tmp/.cqswaeo8/debug_keystore_PZtS/4Tzk4dpzKiX9AAf1GrhAVi9U7UE1aYEHr6evKo_id_rsa' |
||
---|---|---|
buildserver | ||
completion | ||
docker | ||
examples | ||
fdroidserver | ||
hooks | ||
locale | ||
tests | ||
.gitignore | ||
.gitlab-ci.yml | ||
.pylint-rcfile | ||
.travis.yml | ||
fdroid | ||
jenkins-build-all | ||
jenkins-setup-build-environment | ||
jenkins-test | ||
LICENSE | ||
makebuildserver | ||
MANIFEST.in | ||
README.md | ||
setup.cfg | ||
setup.py |
CI Builds | fdroidserver | buildserver | fdroid build --all | publishing tools |
---|---|---|---|---|
Debian | ||||
macOS & Ubuntu/LTS |
F-Droid Server
Server for F-Droid, the Free Software repository system for Android.
The F-Droid server tools provide various scripts and tools that are used to maintain the main F-Droid application repository. You can use these same tools to create your own additional or alternative repository for publishing, or to assist in creating, testing and submitting metadata to the main repository.
For documentation, please see https://f-droid.org/docs/, or you can find the source for the documentation in fdroid/fdroid-website.
What is F-Droid?
F-Droid is an installable catalogue of FOSS (Free and Open Source Software) applications for the Android platform. The client makes it easy to browse, install, and keep track of updates on your device.
Installing
There are many was to install fdroidserver, they are documented on the website: https://f-droid.org/docs/Installing_the_Server_and_Repo_Tools
All sorts of other documentation lives there as well.
Drozer Scanner
There is a new feature under development that can scan any APK in a repo, or any build, using Drozer. Drozer is a dynamic exploit scanner, it runs an app in the emulator and runs known exploits on it.
This setup requires specific versions of two Python modules: docker-py 1.9.0 and requests older than 2.11. Other versions might cause the docker-py connection to break with the containers. Newer versions of docker-py might have this fixed already.
For Debian based distributions:
apt-get install libffi-dev libssl-dev python-docker
Translation
Everything can be translated. See Translation and Localization for more info.