|Adrian Malacoda cfb7f243dc||2 years ago|
|Dockerfile||2 years ago|
|LICENSE||2 years ago|
|README.md||2 years ago|
|entrypoint||2 years ago|
|installSdks||2 years ago|
The idea is to be able to add in your own app's configuration and build it with F-Droid's tooling.
docker build -t fdroidbuild .
fdroiddata is placed into
docker run -v "$(pwd)/build:/fdroiddata/build" fdroidbuild build org.fdroid.fdroid -l
Should produce the
org.fdroid.fdroid apk in
If you have a file named
.fdroid.json at the root of your repository, the build will be run right out of the repo using that metadata file; see Running
fdroid build in your app's source (note that contrary to the doc, neither
.fdroid.xml are supported anymore; thus, this image does not look for them).
Else, if you have a directory named
fdroid at the root of your repository, its contents will be copied over into the
/fdroiddata/metadata directory. Additionally, the token
%REPO in all metadata files will be replaced with the path to the repo in the container. This is so the metadata file does not need to know the exact path the repo will live at during the build.
A F-Droid metadata file is named
<appId>.txt and looks like this. So, if you have such a file located at
fdroid/net.monarchpass.app.txt, you should be able to run this:
docker run -v "$(pwd)/build:/fdroiddata/build" -v "$(pwd):/repo" fdroidbuild build net.monarchpass.app.txt -l
and build the latest version of that app.
F-droid's build server supports multiple versions of Gradle, and uses several methods to detect which version to use, such as parsing it out of
gradle-wrapper.properties. This image uses that same approach, but it only includes Gradle versions >= 3.0.
Gradle versions are kept in
GNU GPL v3.