chiark / gitweb /
Daniel Martí [Fri, 15 May 2015 14:51:58 +0000 (16:51 +0200)]
Make comma-separated list parsing code common
Ciaran Gultnieks [Thu, 14 May 2015 16:12:04 +0000 (16:12 +0000)]
Merge branch 'support-all-signing-key-types' into 'master'
support all APK signing key types: DSA, EC, RSA
The lovely python getsig replacement was only looking for .RSA files, but the signing key is defined as: "A signature block file with a .DSA, .RSA, or .EC extension"
https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html
For more info:
https://f-droid.org/forums/topic/binary-repo-whatsapp-error
See merge request !51
Ciaran Gultnieks [Thu, 14 May 2015 16:11:32 +0000 (16:11 +0000)]
Merge branch 'debug-builds' into 'master'
support plain paths as a serverwebroot
For use cases where there is a web server running on the same machine where the `fdroid update` is being run, allow plain paths in the serverwebroot list. This is useful for debug repos from build servers, like:
https://dev.guardianproject.info/fdroid
This also includes small change in the `fdroid server update` delete behavior: it delays the delete phase until after the new APKs are uploaded. This is keep things working for a long as possible while the repo is being updated.
See merge request !49
Ciaran Gultnieks [Thu, 14 May 2015 16:09:40 +0000 (16:09 +0000)]
Merge branch 'master' into 'master'
make it really easy to upgrade unsigned repos to signed
As a key step to removing support for unsigned repos from fdroidclient (https://gitlab.com/fdroid/fdroidclient/issues/12), this merge request makes `fdroid update` require a signing key. If there is no keystore, it'll prompt the user to create one using `fdroid update --create-key`.
This closes #13
See merge request !48
Hans-Christoph Steiner [Wed, 13 May 2015 21:50:08 +0000 (17:50 -0400)]
support all APK signing key types: DSA, EC, RSA
"A signature block file with a .DSA, .RSA, or .EC extension"
https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html
Daniel Martí [Thu, 14 May 2015 10:31:10 +0000 (12:31 +0200)]
ACCESS_SUPERUSER is now deprecated
Daniel Martí [Wed, 13 May 2015 11:05:42 +0000 (13:05 +0200)]
Detect most bad URLs
Also [appid] links that should really be [[appid]]
Daniel Martí [Sun, 10 May 2015 13:42:07 +0000 (13:42 +0000)]
Merge branch 'vars' into 'master'
Update documentation to cover COMMIT, VERSION and VERCODE vars
See merge request !50
Boris Kraut [Sun, 10 May 2015 13:29:41 +0000 (15:29 +0200)]
Update documentation to cover COMMIT, VERSION and VERCODE vars
Daniel Martí [Sun, 10 May 2015 11:53:06 +0000 (13:53 +0200)]
Add COMMIT, VERSION and VERCODE recipe vars. Fixes #69
Hans-Christoph Steiner [Tue, 21 Apr 2015 02:27:31 +0000 (22:27 -0400)]
common.write_to_config(): if key doesn't exist in config.py, append it
This lets `fdroid update --create-key` add key/value pairs to config.py
Hans-Christoph Steiner [Tue, 21 Apr 2015 01:52:41 +0000 (21:52 -0400)]
tests: no need to dump the index.xml to the build log
This should make the build log a lot shorter.
Hans-Christoph Steiner [Tue, 21 Apr 2015 01:38:52 +0000 (21:38 -0400)]
`fdroid update --create-key` to create a keystore/key
This provides the final option in this series, allowing the user to just
add --create-key to `fdroid update, and thereby upgrade an unsigned repo to
a proper signed repo. It also might be useful
closes #13 https://gitlab.com/fdroid/fdroidserver/issues/13
Hans-Christoph Steiner [Tue, 21 Apr 2015 00:27:38 +0000 (20:27 -0400)]
move keystore gen logic to common function
This moves the method for generating a new keystore for the repo signing
key to a common function so that it can be used in more subcommands beyond
`fdroid init`. The immediate idea is to make `fdroid update --create-key`
upgrade unsigned repos to signed ones so we can make fdroidclient only use
signed repos.
Hans-Christoph Steiner [Mon, 20 Apr 2015 23:29:50 +0000 (19:29 -0400)]
move default keystore location to `keystore.jks`, i.e. in the fdroid repo
This makes `fdroid init` create a complete, self-contained repo in a single
folder. That makes it easily transferable, backupable, etc. It also means
that `fdroid update` can add a keystore to an existing unsigned repo
without having to worry about finding the right folder or overwriting any
other existing files.
Hans-Christoph Steiner [Mon, 20 Apr 2015 23:14:58 +0000 (19:14 -0400)]
move genkey() and genpassword() to common.py for use in multiple sections
genkey() and genpassword() are now going to be used by `fdroid update` as
well as `fdroid init`, so they should be in common.py
Hans-Christoph Steiner [Mon, 20 Apr 2015 23:09:50 +0000 (19:09 -0400)]
make `fdroid update` check that it can sign the repo, or exit with error
There is no good reason to run unsigned repos any more. It is trivially
easy to create and use a signed repo, and having to support unsigned repos
in the client makes some security-critical parts of the code a lot more
complicated.
refs #13 https://gitlab.com/fdroid/fdroidserver/issues/13
https://gitlab.com/fdroid/fdroidclient/issues/12
Hans-Christoph Steiner [Wed, 11 Mar 2015 21:40:26 +0000 (17:40 -0400)]
jenkins-build: always use speced dir for APK source
Otherwise, the test process can pick up lots and lots of APKs from various
places like a ~/fdroid folder or various ~/workspace/fdroidserver Jenkins
projects.
Hans-Christoph Steiner [Fri, 1 May 2015 03:39:58 +0000 (23:39 -0400)]
server: support plain paths as a serverwebroot
For use cases where there is a web server running on the same machine where
the `fdroid update` is being run, allow plain paths in the serverwebroot
list. This is useful for debug repos from build servers, like:
https://dev.guardianproject.info/fdroid
Hans-Christoph Steiner [Fri, 1 May 2015 03:36:10 +0000 (23:36 -0400)]
server: delay deleting on the server for as long as possible
In order to keep things working as much as possible during the update, the
rsync should only delete the obsolete APKs after it has finished uploading
the new APKs.
Ciaran Gultnieks [Tue, 28 Apr 2015 16:23:42 +0000 (17:23 +0100)]
Use --safe-links with rsync
Daniel Martí [Thu, 7 May 2015 22:58:52 +0000 (00:58 +0200)]
Don't match gradle plugin import lines which are commented
Daniel Martí [Wed, 29 Apr 2015 20:15:57 +0000 (22:15 +0200)]
Add plugin version 1.2 to our gradle wrapper
Daniel Martí [Tue, 28 Apr 2015 15:39:26 +0000 (17:39 +0200)]
Sort debian packages to be installed
Daniel Martí [Tue, 28 Apr 2015 15:36:15 +0000 (17:36 +0200)]
Add scons, make-like tool used by godot
Daniel Martí [Thu, 23 Apr 2015 14:42:22 +0000 (16:42 +0200)]
Order counter stats by value, not key
Daniel Martí [Mon, 20 Apr 2015 16:26:23 +0000 (18:26 +0200)]
stats: Don't confuse app with appid
Daniel Martí [Mon, 20 Apr 2015 16:25:40 +0000 (18:25 +0200)]
stats: sort counter outputs
Daniel Martí [Mon, 20 Apr 2015 16:20:24 +0000 (18:20 +0200)]
Add stats/disabled_apps.txt (closes #87)
Daniel Martí [Sun, 19 Apr 2015 15:04:44 +0000 (17:04 +0200)]
lint: warn about None category
Daniel Martí [Sun, 19 Apr 2015 15:04:34 +0000 (17:04 +0200)]
lint: Remove NOP
Daniel Martí [Fri, 17 Apr 2015 17:28:35 +0000 (17:28 +0000)]
Merge branch 'projectproperties' into 'master'
Fix project.properties dependency issue
Correctly place scrlib references also
in the case there is no project.properties file
present in the original repository.
This commit fixes a problem, which was introduced with
021df3c42420de542bf11f22948831023b47ebf3: If no
project.properties file exists in the original
project's source repo, place_srclib will not place
a dependency --- even if there should be one:
> if not os.path.isfile(proppath):
> return
Example app: fdroiddata/metadata/org.berlin_vegan.bvapp.txt
See merge request !47
Daniel Martí [Fri, 17 Apr 2015 11:02:47 +0000 (13:02 +0200)]
Don't try reading lines from directories
micu [Thu, 16 Apr 2015 22:58:20 +0000 (00:58 +0200)]
Fix project.properties dependency issue
Correctly place scrlib references also
in the case there is no project.properties file
present in the original repository.
This commit fixes a problem, which was introduced with
021df3c42420de542bf11f22948831023b47ebf3: If no
project.properties file exists in the original
project's source repo, place_srclib will not place
a dependency --- even if there should be one:
> if not os.path.isfile(proppath):
> return
Example app: fdroiddata/metadata/org.berlin_vegan.bvapp.txt
Daniel Martí [Tue, 14 Apr 2015 12:18:44 +0000 (14:18 +0200)]
lint: add commented out warnings about google code
Daniel Martí [Thu, 9 Apr 2015 22:14:52 +0000 (00:14 +0200)]
Also run main gradle clean task in case it's got dependencies
Daniel Martí [Thu, 9 Apr 2015 22:13:50 +0000 (00:13 +0200)]
Start supporting gradle tasks that belong to subprojects
Daniel Martí [Thu, 9 Apr 2015 14:02:35 +0000 (16:02 +0200)]
Add gradle 2.3 to the buildserver
Fixes apps that explicitly require 2.3 via gradleVersion
Daniel Martí [Mon, 6 Apr 2015 20:18:54 +0000 (22:18 +0200)]
Add android version 5.1
Daniel Martí [Mon, 6 Apr 2015 15:42:26 +0000 (17:42 +0200)]
When patching or checking plugin versions, use *.gradle
Apparently all *.gradle files are valid, e.g. global.gradle.
Daniel Martí [Thu, 2 Apr 2015 22:14:32 +0000 (00:14 +0200)]
Other minor file reading fixes
Daniel Martí [Thu, 2 Apr 2015 22:05:22 +0000 (00:05 +0200)]
Always check that files actually are files before reading
This fixes crashes with e.g. broken symlinks
Daniel Martí [Tue, 31 Mar 2015 21:08:32 +0000 (23:08 +0200)]
Fix buildTools versions that reference variables
Ciaran Gultnieks [Mon, 23 Mar 2015 11:28:38 +0000 (11:28 +0000)]
Work when cpu count is not defined
Daniel Martí [Tue, 24 Mar 2015 20:36:42 +0000 (21:36 +0100)]
Forgot to bump build_tools in the configs
Daniel Martí [Sun, 22 Mar 2015 17:18:45 +0000 (17:18 +0000)]
Merge branch 'import' into 'master'
Importer: Fix duplicated urls
Importer uses provided URL for the "website" as default. If "sourcecode" is set to the same, this causes a lint error. For Github the website is now empty while Gitlab's sourcecode is no longer the bas project url.
See merge request !46
Boris Kraut [Sun, 22 Mar 2015 02:24:43 +0000 (03:24 +0100)]
Importer: Fix duplicated urls
Daniel Martí [Sat, 21 Mar 2015 22:42:31 +0000 (23:42 +0100)]
Update build tools to 22.0.0
Daniel Martí [Sat, 21 Mar 2015 22:41:08 +0000 (23:41 +0100)]
Update sdk to 24.1.2
Daniel Martí [Sat, 21 Mar 2015 22:28:09 +0000 (23:28 +0100)]
Add android-22 target
Daniel Martí [Sun, 15 Mar 2015 15:25:41 +0000 (16:25 +0100)]
Gradle plugin version 1.1 still uses gradle 2.2
Ciaran Gultnieks [Wed, 11 Mar 2015 13:32:09 +0000 (13:32 +0000)]
Merge branch 'update-readme' into 'master'
Update readme
Updated the main README file to include a list of dependencies.
Forgot to update my e-mail address, so I closed Merge Request !44 first.
See merge request !45
Schneider Werner-Walter [Wed, 11 Mar 2015 08:28:47 +0000 (10:28 +0200)]
Update README file.
Daniel Martí [Thu, 5 Mar 2015 14:32:45 +0000 (15:32 +0100)]
lint: don't take commas as punctuation
Daniel Martí [Thu, 5 Mar 2015 14:25:21 +0000 (15:25 +0100)]
Don't take placeholders commits as possible tags
Daniel Martí [Thu, 5 Mar 2015 14:25:09 +0000 (15:25 +0100)]
Also set ANDROID_NDK_HOME since gradle may need it
Daniel Martí [Thu, 5 Mar 2015 14:24:52 +0000 (15:24 +0100)]
Also ignore PEP8 W503
Daniel Martí [Sun, 8 Feb 2015 05:58:24 +0000 (21:58 -0800)]
Ignore all the pep8 errors ignored by the default config
Ciaran Gultnieks [Thu, 5 Feb 2015 09:10:52 +0000 (09:10 +0000)]
Merge branch 'LOffice' into 'master'
Add LibreOffice build-deps.
These are the dependencies that i needed in a VM with a "Debian Jessie netinst" installation. I had in the system the "Standard system utilities", fdroidserver, all the packages listed in "buildserver/cookbooks/fdroidbuild-general/recipes/default.rb", and "build-essential". I assume that the BS has build-essential installed as its needed to build the "VirtualBox Guest Additions".
See merge request !42
Matías Zúñiga [Tue, 3 Feb 2015 23:45:26 +0000 (23:45 +0000)]
Add dependencies needed by "LibreOffice Viewer Beta"
Ciaran Gultnieks [Sun, 1 Feb 2015 20:32:03 +0000 (20:32 +0000)]
Failed to update what page?
Ciaran Gultnieks [Sun, 1 Feb 2015 20:31:46 +0000 (20:31 +0000)]
Note about required python version
Ciaran Gultnieks [Sun, 1 Feb 2015 09:00:04 +0000 (09:00 +0000)]
Allow buildserver CPU count to be configured
Ciaran Gultnieks [Sat, 31 Jan 2015 16:04:39 +0000 (16:04 +0000)]
Signature file names are not fixed
Ciaran Gultnieks [Sat, 31 Jan 2015 15:59:00 +0000 (15:59 +0000)]
Use jarsigner-based verification in publish
Ciaran Gultnieks [Sat, 31 Jan 2015 15:58:08 +0000 (15:58 +0000)]
Need the information about what's different from verify_apks
Parménides GV [Sat, 31 Jan 2015 15:55:18 +0000 (15:55 +0000)]
Add function to verify apks via jarsigner
Ciaran Gultnieks [Sat, 31 Jan 2015 15:36:57 +0000 (15:36 +0000)]
Use pre-retrieved Binary when publishing
This allows this system to work when the machine that runs 'fdroid
publish' is offline.
Ciaran Gultnieks [Sat, 31 Jan 2015 15:36:26 +0000 (15:36 +0000)]
Retrieve Binaries at build time
Ciaran Gultnieks [Sat, 31 Jan 2015 12:07:33 +0000 (12:07 +0000)]
Improve validation of fdroid import page parsing
Ciaran Gultnieks [Tue, 27 Jan 2015 07:13:21 +0000 (07:13 +0000)]
Handle not-found package name gracefully
Ciaran Gultnieks [Sat, 31 Jan 2015 12:04:16 +0000 (12:04 +0000)]
Merge branch 'fxbuilddeps' into 'master'
Add firefox build-deps.
See merge request !40
Ciaran Gultnieks [Mon, 26 Jan 2015 18:29:39 +0000 (18:29 +0000)]
Ensure package names are valid
Ciaran Gultnieks [Mon, 26 Jan 2015 18:14:29 +0000 (18:14 +0000)]
Remove shell option from FDroidPopen
Ciaran Gultnieks [Mon, 26 Jan 2015 18:12:30 +0000 (18:12 +0000)]
wp-fdroid: Properly escape fdfilter
Resolves an XSS issue identified by Cure53 (https://cure53.de)
Boris Kraut [Sun, 25 Jan 2015 18:33:02 +0000 (19:33 +0100)]
Add compare-locales via easy_install for Firefox
Boris Kraut [Sun, 25 Jan 2015 00:09:13 +0000 (01:09 +0100)]
Add build-deps for Firefox
Ciaran Gultnieks [Wed, 21 Jan 2015 16:30:43 +0000 (16:30 +0000)]
Merge branch 'master' into 'master'
fix build issues
Fixed three build issues: one PEP8 and two small errors in the tests.
See merge request !39
Hans-Christoph Steiner [Tue, 20 Jan 2015 21:43:55 +0000 (22:43 +0100)]
fix update.TestCase: remove unused SilentPopen import, that class was removed
Hans-Christoph Steiner [Tue, 20 Jan 2015 21:40:45 +0000 (22:40 +0100)]
fix install test by making sure common.options is set
Hans-Christoph Steiner [Tue, 20 Jan 2015 17:01:29 +0000 (18:01 +0100)]
fix PEP8 E124 closing bracket missing visual indentation
Ciaran Gultnieks [Wed, 21 Jan 2015 09:19:12 +0000 (09:19 +0000)]
Merge branch 'antifeature' into 'master'
Update docs: AntiFeatures
See merge request !38
Ciaran Gultnieks [Wed, 21 Jan 2015 09:15:20 +0000 (09:15 +0000)]
Fix no-checksum option type for local sync (fixes #67)
Boris Kraut [Sat, 17 Jan 2015 00:11:43 +0000 (01:11 +0100)]
Update docs: Add UpstreamNonFree; apps with AFs are not hidden.
Ciaran Gultnieks [Fri, 16 Jan 2015 21:05:02 +0000 (21:05 +0000)]
Merge branch 'update_docs' into 'master'
Added docs how to get platform cache files (closes #53)
See merge request !37
Rancor [Fri, 16 Jan 2015 20:59:33 +0000 (21:59 +0100)]
Added docs how to get platform cache files (closes #53)
Daniel Martí [Tue, 13 Jan 2015 15:37:10 +0000 (16:37 +0100)]
Fix adding paths to the PATH env variable
Daniel Martí [Tue, 13 Jan 2015 15:15:11 +0000 (16:15 +0100)]
Fix issue introduced in
49549f4cad2097 (fixes #62)
Ciaran Gultnieks [Tue, 13 Jan 2015 08:26:30 +0000 (08:26 +0000)]
Fix PEP8 issues from latest pull request
Ciaran Gultnieks [Tue, 13 Jan 2015 08:25:27 +0000 (08:25 +0000)]
Daniel Martí [Mon, 12 Jan 2015 22:47:40 +0000 (23:47 +0100)]
Don't limit gradle's forceversion to string literals
Ciaran Gultnieks [Mon, 12 Jan 2015 18:58:03 +0000 (18:58 +0000)]
Only set Auto Name if one isn't set already
Ciaran Gultnieks [Mon, 12 Jan 2015 10:06:26 +0000 (10:06 +0000)]
Merge branch 'master' into 'master'
streamline verify process in `fdroid publish`
This is a collection of small fixes to streamline the process of verifying a build against a provided APK as set in the `Binaries:` metadata.
See merge request !35
Hans-Christoph Steiner [Mon, 12 Jan 2015 09:51:54 +0000 (10:51 +0100)]
if a build did verify against Binaries:, delete the comparison dirs
If the comparison between the provided APK and the built APK is verified,
then there is no need to keep the old comparison files around. On big build
servers like f-droid.org, there will be thousands of leftover dirs from all
the builds, so this is necessary.
Hans-Christoph Steiner [Wed, 7 Jan 2015 19:09:03 +0000 (20:09 +0100)]
if `meld` is available, use it to show differences on failed APK compare
meld is much easier to browse when comparing directory trees.
Hans-Christoph Steiner [Wed, 7 Jan 2015 19:08:15 +0000 (20:08 +0100)]
if `apktool` is available, use it to decompress APKs when verifying
apktool decompiles the binary XML to regular XML, so it is much easier to
read for differences.
Hans-Christoph Steiner [Wed, 7 Jan 2015 18:57:15 +0000 (19:57 +0100)]
fix typo in error message
Hans-Christoph Steiner [Wed, 7 Jan 2015 18:56:55 +0000 (19:56 +0100)]
uncompress using `jar xf` in a folder with the same name
This makes it easier to compare the whole APK folders when there are
multiple methods of uncompressing the APK.
Hans-Christoph Steiner [Wed, 7 Jan 2015 18:55:26 +0000 (19:55 +0100)]
make resulting dirs of compare_apks() have clearer dir names
This makes it a lot easier to remember which APK is which when trying to
make sense of the differences.
Hans-Christoph Steiner [Wed, 7 Jan 2015 17:54:01 +0000 (18:54 +0100)]
prevent `fdroid publish` from repeatedly downloading the developer binary
wget's --continue makes wget not overwrite the existing file, or create a
new version with a .1 extension. Instead it tries to finish an incomplete
download, or does nothing if the download is complete and matching.