chiark / gitweb /
Hans-Christoph Steiner [Thu, 23 Feb 2017 11:46:56 +0000 (11:46 +0000)]
Merge branch 'firebase' into 'master'
scanner: add firebase to usual suspect list, closes #259
Closes #259
See merge request !212
Boris Kraut [Wed, 22 Feb 2017 23:40:55 +0000 (00:40 +0100)]
scanner: add firebase to usual suspect list, closes #259
Hans-Christoph Steiner [Tue, 21 Feb 2017 14:08:47 +0000 (14:08 +0000)]
Merge branch 'name' into 'master'
update: add name to skeleton, closes #258
See merge request !211
Boris Kraut [Sun, 19 Feb 2017 15:25:49 +0000 (16:25 +0100)]
update: add name to skeleton
Hans-Christoph Steiner [Fri, 17 Feb 2017 15:26:15 +0000 (15:26 +0000)]
Merge branch 'feature/git-mirroring' into 'master'
Add git repo mirroring
Closes #235
See merge request !206
thez3ro [Fri, 10 Feb 2017 17:38:25 +0000 (18:38 +0100)]
add git repo mirroring
Hans-Christoph Steiner [Mon, 13 Feb 2017 21:06:18 +0000 (21:06 +0000)]
Merge branch 'ossjfrog' into 'master'
scanner: allow oss.jfrog.org/artifactory/oss-snapshot-local
See merge request !208
Hans-Christoph Steiner [Mon, 13 Feb 2017 19:42:21 +0000 (19:42 +0000)]
Merge branch 'build-publish-staging-test' into 'master'
build/publish staging test
See merge request !207
Boris Kraut [Mon, 13 Feb 2017 19:24:35 +0000 (20:24 +0100)]
scanner: allow oss.jfrog.org/artifactory/oss-snapshot-local
Hans-Christoph Steiner [Tue, 7 Feb 2017 10:05:18 +0000 (11:05 +0100)]
jenkins-build-makebuildserver: remove VLC as test, its too flaky
Revert "jenkins-build-makebuildserver: include VLC as a test build"
This reverts commit
6debb3ebbf0fdbfeb49f80891fd8ba38cea72cd7.
Hans-Christoph Steiner [Fri, 10 Feb 2017 14:53:52 +0000 (15:53 +0100)]
buildserver: update to latest tools and m2repository
Hans-Christoph Steiner [Fri, 10 Feb 2017 11:45:04 +0000 (12:45 +0100)]
jenkins-build-makebuildserver: handle git update of fdroiddata better
This prevents attempts to merge when there was rebasing, which can fail.
Hans-Christoph Steiner [Thu, 9 Feb 2017 22:49:42 +0000 (23:49 +0100)]
build: include buildserverid in build log for wiki
Hans-Christoph Steiner [Thu, 9 Feb 2017 22:48:40 +0000 (23:48 +0100)]
log Android SDK/NDK component versions on buildserver
ad2b9b99c2a7084e1ef4df06d635c7b63bee89e3 put this in the wrong place, it
was running it on the buildserver host rather than in the buildserver VM
itself, where the builds actually run.
refs #148
Hans-Christoph Steiner [Thu, 9 Feb 2017 15:26:57 +0000 (16:26 +0100)]
build: fix fdroidserverid in build log post on wiki
The carriage return in the fdroidserverid file messes up the wiki format.
This was forgotten in
69d39bb30101e8fdca1d4369cd2fd3b0d8a6fbc1
Hans-Christoph Steiner [Thu, 9 Feb 2017 14:50:58 +0000 (15:50 +0100)]
jenkins-build-makebuildserver: test the whole build/publish workflow
For full deployments like f-droid.org, the building happens on a separate
machine from the signing. This adds a basic test of that kind of setup.
Hans-Christoph Steiner [Mon, 13 Feb 2017 19:05:44 +0000 (19:05 +0000)]
Merge branch 'supportlib' into 'master'
makebs: bump support repo to r43
See merge request !205
Boris Kraut [Sat, 11 Feb 2017 13:40:40 +0000 (14:40 +0100)]
makebs: bump support repo to r43
Ciaran Gultnieks [Tue, 7 Feb 2017 13:27:56 +0000 (13:27 +0000)]
Merge branch 'fix-build-and-vlc' into 'master'
fix CI, makebuildserver, and VLC build
See merge request !204
Hans-Christoph Steiner [Tue, 7 Feb 2017 10:05:18 +0000 (11:05 +0100)]
jenkins-build-makebuildserver: include VLC as a test build
Hans-Christoph Steiner [Tue, 7 Feb 2017 09:47:20 +0000 (10:47 +0100)]
buildserver: use automake and cmake from jessie-backports
These should be reasonably backwards compatible, and there is already
automake1.11 for those that need a version that old. As for cmake, there
are five apps that seem to it:
com.amaze.filemanager
org.dolphinemu.dolphinemu
org.navitproject.navit
org.yabause.android
org.videolan.vlc
It looks like VLC is the only app that is currently building and using
cmake in the most recent releases. Some of them used to use cmake, but no
longer.
Hans-Christoph Steiner [Mon, 6 Feb 2017 16:28:07 +0000 (17:28 +0100)]
gitlab-ci: workaround "ImportError: No module named 'packaging'"
https://github.com/pypa/setuptools/issues/937
fdroid/ci-images#1
Hans-Christoph Steiner [Mon, 6 Feb 2017 13:59:15 +0000 (14:59 +0100)]
buildserver: add openjdk-8-jdk-headless depends from backports
Ciaran Gultnieks [Sat, 4 Feb 2017 17:34:49 +0000 (17:34 +0000)]
Merge branch 'supportlib' into 'master'
makebs: upgrade support repo to r42
See merge request !203
Boris Kraut [Sat, 4 Feb 2017 14:01:15 +0000 (15:01 +0100)]
makebs: upgrade support repo to r42
Hans-Christoph Steiner [Sat, 21 Jan 2017 21:34:33 +0000 (21:34 +0000)]
Merge branch 'collection-of-fixes' into 'master'
include fdroidserverid in build log post on wiki
See merge request !201
Hans-Christoph Steiner [Fri, 20 Jan 2017 11:10:35 +0000 (12:10 +0100)]
build: include fdroidserverid in build log post on wiki
Hans-Christoph Steiner [Mon, 9 Jan 2017 14:12:27 +0000 (15:12 +0100)]
update URL for git repo of test app
Hans-Christoph Steiner [Mon, 28 Nov 2016 14:23:59 +0000 (15:23 +0100)]
break out categories.txt generation to standalone method
This is to clean up the code for the introduction of a new index format.
This also makes it so that only repo/categories.txt is generated, and not
archive/categories.txt.
Currently, the only thing that I can find that reads categories.txt is the
wordpress plugin, e.g. wp-fdroid. And it only reads repo/categories.txt
not archive/categories.txt.
Hans-Christoph Steiner [Mon, 28 Nov 2016 20:18:17 +0000 (21:18 +0100)]
fix bad caching of non-APK files in the repo
Silly mistake in
07ce9488097c1361c1cc1a515773fb73199550bf
Hans-Christoph Steiner [Thu, 12 Jan 2017 13:03:51 +0000 (13:03 +0000)]
Merge branch 'fdroid-publish-ota-zip' into 'master'
`fdroid publish` now includes OTA ZIPs and related source
See merge request !193
Hans-Christoph Steiner [Thu, 12 Jan 2017 12:59:57 +0000 (12:59 +0000)]
Merge branch 'libtool-from-testing' into 'master'
buildserver: support installing packages from Debian/testing
Closes #224
See merge request !200
Hans-Christoph Steiner [Thu, 12 Jan 2017 09:19:38 +0000 (10:19 +0100)]
buildserver: update android_m2repository to latest (r41)
Hans-Christoph Steiner [Wed, 11 Jan 2017 21:42:41 +0000 (22:42 +0100)]
ensure fdroiddata metadata file overrides .fdroid.yml in source
If the already parsed App instance from metadata/*.* has a field, then the
value coming from .fdroid.yml should not override it.
Hans-Christoph Steiner [Tue, 10 Jan 2017 09:54:21 +0000 (10:54 +0100)]
buildserver: support installing packages from Debian/testing
Sometimes, a build process requires newer versions of build tools than are
available in Debian/stable. Oftentimes, using the package straight from
Debian/testing works fine when a package is not available as a backport.
libtool 2.4.6 is needed for building VLC, so it is one example of this.
The preferences file sets up the apt "pinning" so that all updates are not
installed from testing, only the packages that are requested by adding
"/testing" after then package name.
closes #224
Hans-Christoph Steiner [Wed, 7 Dec 2016 10:48:05 +0000 (11:48 +0100)]
`fdroid publish` now includes OTA ZIPs and related source
This adds support for publishing ZIP files which were built with
`fdroid build`. This is for "Over-The-Air" (OTA) update ZIP files for
flashing to ROMs. The first example of this is the Privileged Extension,
which must be installed by flashing an OTA ZIP on Android > 5.0.
!181
https://gitlab.com/fdroid/privileged-extension/issues/9
https://gitlab.com/fdroid/privileged-extension/issues/10
https://gitlab.com/fdroid/fdroiddata/merge_requests/1804
Also, "if app.Binaries:" is the same as "if app.Binaries is not None:", but
is the standard Python style.
Hans-Christoph Steiner [Mon, 9 Jan 2017 10:31:57 +0000 (10:31 +0000)]
Merge branch 'gradle33' into 'master'
makebs: install gradle 3.3
See merge request !199
Boris Kraut [Sun, 8 Jan 2017 20:13:24 +0000 (21:13 +0100)]
makebs: install gradle 3.3
Ciaran Gultnieks [Sat, 7 Jan 2017 19:05:08 +0000 (19:05 +0000)]
Merge branch 'gettext-backport' into 'master'
buildserver: install gettext from jessie-backports
Closes #224
See merge request !198
Hans-Christoph Steiner [Tue, 3 Jan 2017 21:23:38 +0000 (22:23 +0100)]
buildserver: install gettext from jessie-backports
In order to install a package from jessie-backports, apt-get has to be told
to get it from there rather than the main archive. It will not use
jessie-backports by default even if it is added as an apt source.
closes #224
Daniel Martí [Sun, 1 Jan 2017 23:25:30 +0000 (23:25 +0000)]
Merge branch 'import' into 'master'
import: fix raw git-over-https urls
See merge request !196
Daniel Martí [Sun, 1 Jan 2017 23:24:37 +0000 (23:24 +0000)]
Merge branch 'spdx' into 'master'
docs: switch to spdx license list
See merge request !194
Daniel Martí [Fri, 23 Dec 2016 17:22:35 +0000 (17:22 +0000)]
Merge branch 'ci-update' into 'master'
Bump CI image, now with build-tools 25.0.2
See merge request !197
Daniel Martí [Fri, 23 Dec 2016 16:46:09 +0000 (17:46 +0100)]
Bump CI image, now with build-tools 25.0.2
Boris Kraut [Wed, 21 Dec 2016 09:12:20 +0000 (10:12 +0100)]
import: fix raw git-over-https urls
Daniel Martí [Sat, 17 Dec 2016 23:19:50 +0000 (23:19 +0000)]
Merge branch 'master' into 'master'
Makebs: add build tools 25.0.2
See merge request !195
est31 [Sat, 17 Dec 2016 22:36:48 +0000 (23:36 +0100)]
Makebs: add build tools 25.0.2
Boris Kraut [Sat, 17 Dec 2016 08:57:38 +0000 (09:57 +0100)]
docs: switch to spdx license list
Hans-Christoph Steiner [Tue, 6 Dec 2016 13:03:34 +0000 (14:03 +0100)]
Merge branch 'feature/dscanner' into master
dscanner - drozer scanner work.
closes !187
Kevin C. Krinke [Tue, 6 Dec 2016 12:57:04 +0000 (13:57 +0100)]
dscanner - Drozer based post-build dynamic vulnerability scanner command
* New command `dscanner`, enables one to scan signed APKs with Drozer
* Drozer is a dynamic vulnerability scanner for Android
* Drozer runs in a emulator or on-device, this new `dscanner` command...
* starts a docker image with Drozer and the Android Emulator pre-installed,
* loads the signed APK into the emulator
* activates Drozer automated tests for the APK
* gathers the report output and places it next to the original APK
* The Drozer docker image can be:
* cached locally for re-use (just don't run --clean*)
* retrieved from dockerhub.com for more efficient runtime
* or be built from scratch (in the new "./docker" directory)
* New "Vulnerability Scanning" documentation section (run gendocs.sh)
Hans-Christoph Steiner [Tue, 6 Dec 2016 12:37:11 +0000 (12:37 +0000)]
Merge branch 'collection-fixes-and-KnownVuln' into 'master'
add KnownVuln anti-feature, and other fixes
This is a bit of a random collection of things that I have added in the process of working on the drozer/scanner support, YAML support, etc. The only new things are:
* adding new AntiFeature for security issues: `KnownVuln`
* removing broken, incomplete XML metadata support
Everything else included are just code improvements. This also includes the first check for `KnownVuln`, which is a scanner to check whether custom OpenSSL binaries in apps are not old with known vulnerabilities. `KnownVuln` will then ultimately be used for things like the drozer scanner !187
See merge request !189
Hans-Christoph Steiner [Thu, 1 Dec 2016 22:29:38 +0000 (23:29 +0100)]
fix `fdroid build` with non-git repos
HEAD is really only in git. This was introduced in
a4e4310803a463433eb7515c2038a8d3ea44edc4
Hans-Christoph Steiner [Wed, 23 Nov 2016 14:14:44 +0000 (15:14 +0100)]
convert metadata test dumps to YAML for easy comparison
When making code changes related to the metadata parsing, it is useful to
see how the internal format has changed by seeing the differences in the
dump files. Those files are currently in the binary .pickle format. This
just straight converts them to YAML, which is a text format, so that normal
diff tools work to see changes.
The dump files are named .yaml instead of .yml since .yml is used for hand-
edited YAML files for fdroiddata/metadata, while these dump files here are
a human readable form of a Python pickle.
Hans-Christoph Steiner [Wed, 23 Nov 2016 14:01:23 +0000 (15:01 +0100)]
remove support for XML app metadata, its broken
JSON and YAML are very closely related, so supporting both of them is
basically almost no extra work. Both are also closely related to how
Python works with dicts and pickles. XML is a very different beast, and its
not popular for this kind of thing anyway, so just purge it.
Hans-Christoph Steiner [Fri, 18 Nov 2016 22:17:19 +0000 (23:17 +0100)]
App.get_last_build() method to replace duplicated code
Look @mvdan, I added a method to the App class!
Hans-Christoph Steiner [Fri, 18 Nov 2016 21:40:29 +0000 (22:40 +0100)]
do proper checking of versionCode value
versionCode is defined as a Java Integer, so any value between -
2147483648
(Integer.MIN_VALUE) and
2147483647 (Integer.MIN_VALUE) is valid, including
0.
https://developer.android.com/guide/topics/manifest/manifest-element.html#vcode
Hans-Christoph Steiner [Thu, 3 Nov 2016 13:14:08 +0000 (14:14 +0100)]
check all APKs for old versions of OpenSSL
This scans all APKs for old versions of OpenSSL libraries that are known to
be vulnerable to issues, or fully unsupported.
This really should be implemented as a per-APK AntiFeature, so that it can
apply to any version that is vulnerable. Since AntiFeatures are currently
only per-App, this instead sets the AntiFeature only if the latest APK is
vulnerable.
Google also enforces this:
https://support.google.com/faqs/answer/
6376725?hl=en
apk['antiFeatures'] has the first letter small, since all build fields
start with a lowercase letter. app.AntiFeatures has the first
uppercase since all App fields are that way.
Hans-Christoph Steiner [Tue, 15 Nov 2016 13:56:11 +0000 (14:56 +0100)]
check aapt version to make sure its new enough #236
Since `fdroid update` parses the output of aapt, and since aapt's output
format changes in non-compatible ways, test to make sure that the version
of aapt is new enough to prevent mystery stacktraces. This only prints a
warning since in many cases, the old version will work just fine.
Ciaran Gultnieks [Fri, 2 Dec 2016 16:09:22 +0000 (16:09 +0000)]
Merge branch 'master' into 'master'
Add gradle 3.2.1
See merge request !192
est31 [Fri, 2 Dec 2016 05:51:38 +0000 (06:51 +0100)]
Add gradle 3.2.1
Daniel Martí [Thu, 1 Dec 2016 12:40:25 +0000 (12:40 +0000)]
Merge branch 'buildtools-25.0.1' into 'master'
makebs: add buildtools 25.0.1
Please verify hash before merging.
See merge request !191
Boris Kraut [Thu, 1 Dec 2016 07:38:31 +0000 (08:38 +0100)]
makebs: add buildtools 25.0.1
Hans-Christoph Steiner [Sat, 26 Nov 2016 08:02:42 +0000 (08:02 +0000)]
Merge branch 'master' into 'master'
Add ndk 13b
See merge request !190
est31 [Fri, 25 Nov 2016 20:10:44 +0000 (21:10 +0100)]
Add ndk 13b
Hans-Christoph Steiner [Thu, 24 Nov 2016 14:04:09 +0000 (14:04 +0000)]
Merge branch 'fdroid-yml-builds' into 'master'
builds straight from source repo using .fdroid.yml
The overarching theme of the merge request is allowing _.fdroid.yml_ to be included in an app's source repo, then letting `fdroid build` build the app straight out of the git repo without requiring a setup like _fdroiddata_ (e.g. _config.py_, _metadata/packagename.txt_, etc.). _fdroiddata_ repos can then include source repos with a _.fdroid.yml_ by having _metadata/packagename.txt_ that includes just:
```
Repo Type:git
Repo:https://gitlab.com/upstream/app.git
```
Any other metadata fields that are included in _metadata/packagename.txt_ will override what is in _.fdroid.yml_, giving the repo manager the final say about what is included in their repo. This setup provides a number of benefits:
* CI systems like jenkins, travis, gitlab-ci can build from _.fdroid.yml_
* very easy to start building apps using `fdroid build`, no separate repo needed
* some maintenance can be offloaded to the upstream dev
See merge request !184
Hans-Christoph Steiner [Thu, 24 Nov 2016 08:38:04 +0000 (08:38 +0000)]
Merge branch 'patch-1' into 'master'
docs: remove one-line requirement for links
See merge request !188
Boris Kraut [Thu, 24 Nov 2016 07:30:03 +0000 (07:30 +0000)]
docs: remove one-line requirement for links
Hans-Christoph Steiner [Tue, 8 Nov 2016 15:26:22 +0000 (16:26 +0100)]
if building directly in git repo, use file path for remote
When a git repo has a .fdroid.yml file in it, and `fdroid build` is run
directly in that git repo, then this uses the file path as the remote for
the git repo in build/appid that is actually built. That makes it possible
to run builds of commits that are only local, and makes things a whole lot
faster.
Hans-Christoph Steiner [Tue, 8 Nov 2016 08:35:45 +0000 (09:35 +0100)]
ignore files created by tests
Hans-Christoph Steiner [Mon, 7 Nov 2016 20:47:53 +0000 (21:47 +0100)]
allow metadata to be embedded in source repos via .fdroid.yml
This allows a source repo to include a complete metadata file so that it
can be built directly in place using `fdroid build`. If that app is then
included in fdroiddata, it will first load the source repo type and URL
from fdroiddata, then read .fdroid.yml if it exists, then include the rest
of the metadata as specified in fdroiddata, so that fdroiddata has
precedence over the metadata in the source code.
This lets `fdroid build` apps without having a whole fdroiddata setup, but
instead just directly in place in the source code. This also lets devs
optionallu maintain the fdroid metadata as part of their app, rather than
in fdroiddata without loosing any control. This should make it easier to
spread around the maintenance load.
Hans-Christoph Steiner [Mon, 7 Nov 2016 22:24:52 +0000 (23:24 +0100)]
switch import test to custom, small test app
The test project should be moved to https://gitlab.com/fdroid/ci-test-app
Hans-Christoph Steiner [Mon, 7 Nov 2016 20:27:21 +0000 (21:27 +0100)]
convert comments above functions to python docstrings
This is how to write per-function comments.
https://www.python.org/dev/peps/pep-0257/
Hans-Christoph Steiner [Mon, 7 Nov 2016 20:21:32 +0000 (21:21 +0100)]
properly parse build metadata list types like gradle=
Something like `gradle: yes` in YAML will be parsed as a boolean, since
'yes' is officially defined as a boolean true in YAML. For metadata fields
that need to be lists, this needs to be converted. Same goes for a single
string like `gradle: customFlavor`.
Hans-Christoph Steiner [Mon, 7 Nov 2016 14:36:16 +0000 (15:36 +0100)]
include version, commit, and android tools versions in local log
This includes more info to help track down problems with reproducible
builds, like the specific version being built, and which exact versions of
the Android SDK and NDK were used.
Hans-Christoph Steiner [Mon, 7 Nov 2016 10:39:33 +0000 (11:39 +0100)]
log versions of all installed Android SDK/NDK components
Any variation in the Android tools used to build an APK can cause the build
to be unreproducible. To help troubleshoot these times, this posts the
installed versions of the Android SDK and NDK components to the lastbuild
log, for the long term record.
refs #148
Hans-Christoph Steiner [Wed, 16 Nov 2016 21:09:17 +0000 (21:09 +0000)]
Merge branch 'makebs' into 'master'
makebs updates
See merge request !185
Daniel Martí [Tue, 15 Nov 2016 20:56:15 +0000 (20:56 +0000)]
makebs: add gradle 3.2
Daniel Martí [Tue, 15 Nov 2016 20:56:04 +0000 (20:56 +0000)]
makebs: update to support repo r40
Daniel Martí [Tue, 15 Nov 2016 20:55:06 +0000 (20:55 +0000)]
all: make newer pycodestyle happy
Apparently the "two empty lines" rule is now stricter.
Daniel Martí [Tue, 8 Nov 2016 21:33:38 +0000 (21:33 +0000)]
Merge branch 'node' into 'master'
buildserver: install nodejs
Install nodejs to allow webapps to be build (in the future...).
Ref: https://gitlab.com/fdroid/fdroidserver/issues/60
See merge request !183
Boris Kraut [Mon, 7 Nov 2016 21:54:47 +0000 (22:54 +0100)]
buildserver: install nodejs
Daniel Martí [Mon, 7 Nov 2016 15:11:14 +0000 (15:11 +0000)]
Merge branch 'build-FPE-update-zip' into 'master'
Build Privileged Extension OTA update.zip using `fdroid build`
This allows `fdroid build` to build the OTA update ZIP file for F-Droid Privileged Extension, so that the official releases can be built and distributed via the normal F-Droid channels. This is related to #233
Ultimately the client will also have to be updated to allow it to handle the non-APK files.
See merge request !181
Hans-Christoph Steiner [Thu, 3 Nov 2016 09:38:22 +0000 (10:38 +0100)]
wp-fdroid: show GPG Signature link for source tarballs
Now that source tarballs can be GPG-signed, the website should also display
a link to fetch them.
Hans-Christoph Steiner [Thu, 3 Nov 2016 09:26:38 +0000 (10:26 +0100)]
gpg-sign all valid files in the repo, including source tarballs
This makes sure there is a GPG signature on any file that is included in
the repo, including APKs, OBB, source tarballs, media files, OTA update
ZIPs, etc. Having a GPG signature is more important on non-APK files since
they mostly do not have any signature mechanism of their own.
This also adds basic tests of adding non-APK/OBB files to a repo with
`fdroid update`.
closes #232
Hans-Christoph Steiner [Mon, 31 Oct 2016 18:53:55 +0000 (19:53 +0100)]
allow arbitrary build products, not only APKs
This makes it so that the final build product can be specified in output=
and it'll work no matter if its an APK or not. This was developed around
the case of building the OTA update.zip for the Privileged Extension. It
should work for any build process in theory but it has not yet been tested.
https://gitlab.com/fdroid/privileged-extension/issues/9
Hans-Christoph Steiner [Mon, 31 Oct 2016 15:51:34 +0000 (16:51 +0100)]
get_release_filename() to handle any file type, not just APKs
In order to support non-APK files that are built by `fdroid build`, this
function that names the file releases needs to be generic.
Hans-Christoph Steiner [Wed, 26 Oct 2016 18:41:37 +0000 (20:41 +0200)]
use versionName unmodified as specified
The versionName is defined as a string or string resource that can be any
arbitrary data. fdroid should not second guess the developer here, and
should just use the versionName unmodified. For anything that needs to
compare different versions of apps, versionCode should always be used since
that's what Android uses.
https://developer.android.com/guide/topics/manifest/manifest-element.html#vname
Hans-Christoph Steiner [Wed, 26 Oct 2016 18:46:34 +0000 (20:46 +0200)]
update buildserver scripts in sdist tarball manifest
This was overlooked in previous work on ./makebuildserver
Daniel Martí [Wed, 2 Nov 2016 21:11:05 +0000 (21:11 +0000)]
Merge branch 'support-media-files' into 'master'
Support media files
This is the first step in supporting adding artibitrary files to fdroid repos, targeted add supporting media files and flashable _update.zip_ files like used to install the Privileged Extension. This reuses the existing metadata fields to keep compatibilty with older versions, but that means that lots of names are confusingly named since they refer to aspects of an APK rather than a generic file. We can address that later when we refactor the whole index metadata.
See merge request !177
Hans-Christoph Steiner [Wed, 2 Nov 2016 17:18:02 +0000 (17:18 +0000)]
Merge branch 'master' into 'master'
Scanner: handle utf8 errors more gracefully
Don't throw an error without any info which file caused it.
Fixes #226
See merge request !180
Hans-Christoph Steiner [Wed, 2 Nov 2016 14:50:34 +0000 (15:50 +0100)]
reuse os.stat() result when checking for non-APK files
This should make things a bit more efficient when running on lots of files,
unless python was already caching the result...
Hans-Christoph Steiner [Thu, 13 Oct 2016 16:24:58 +0000 (18:24 +0200)]
support adding arbitrary files to a repo
This adds the most basic level of support for including arbitrary files in
an F-Droid repository. This is useful for things like including videos,
ebooks, update.zip files for ROM updates, and more. The aim is to have
this as generic as possible to keep it flexible for unforeseen uses.
Code-wise, this is really just a first effort. This area of code has not
been touched in a very long time, and the repo parsing is done in a giant
function that is not easy to break apart. It should be broken up to more
cleanly support arbitrary files.
Also remove the TODO line, we've decided to keep the old permission
format for now, at least until there is a major overhaul of the index
data format. And the issue tracker the proper place for TODOs.
Hans-Christoph Steiner [Thu, 13 Oct 2016 16:02:44 +0000 (18:02 +0200)]
create addElementIfInApk() function for clean up common operation
There are currently a couple different ways this is done in the code, this
commit changes all of them to be like addElementNonEmpty().
est31 [Wed, 2 Nov 2016 11:51:15 +0000 (12:51 +0100)]
Scanner: handle utf8 errors more gracefully
Fixes #226
Hans-Christoph Steiner [Thu, 13 Oct 2016 15:28:54 +0000 (17:28 +0200)]
remove unused 'apps' argument from update.scan_apks()
Hans-Christoph Steiner [Thu, 13 Oct 2016 14:50:31 +0000 (16:50 +0200)]
support all valid versionCode values, i.e. Java Integer values
versionCode can be any Java Integer value, from Integer.MAX_VALUE
(
2147483648) to Integer.MIN_VALUE (-
2147483647)
Hans-Christoph Steiner [Mon, 31 Oct 2016 17:51:16 +0000 (17:51 +0000)]
Merge branch 'texinfo' into 'master'
CI: use new docker image with texinfo
docs/gendocs.sh uses makeinfo.
See merge request !179
Daniel Martí [Mon, 31 Oct 2016 14:02:39 +0000 (14:02 +0000)]
CI: use new docker image with texinfo
docs/gendocs.sh uses makeinfo.
Daniel Martí [Tue, 25 Oct 2016 11:06:47 +0000 (11:06 +0000)]
Merge branch 'updates' into 'master'
makebs and CI updates
See merge request !178
Daniel Martí [Sun, 23 Oct 2016 15:58:37 +0000 (16:58 +0100)]
Bump ci images and default build-tools