chiark / gitweb /
fdroidserver.git
9 years agoMerge branch 'update-vagrantfile' into 'master'
Ciaran Gultnieks [Fri, 7 Nov 2014 14:44:58 +0000 (14:44 +0000)]
Merge branch 'update-vagrantfile' into 'master'

Update Vagrantfile and docs to clarify v1.4.3 is ok

Saw in the server docs that we were recommending 1.3.x and saying 1.4.x was broken. I've confirmed that 1.4.x works, and updated things accordingly. Higher version might work, but figured minimal change to build stuff was best :)

See merge request !24

9 years agoinclude test cases for python getsig replacement
Hans-Christoph Steiner [Sat, 30 Aug 2014 15:07:29 +0000 (11:07 -0400)]
include test cases for python getsig replacement

This includes the old getsig.java since that is the canonical implementation
of that algorithm.

fixes #5 https://gitlab.com/fdroid/fdroidserver/issues/5

9 years agomove apk signature verification into getsig() function
Hans-Christoph Steiner [Sat, 30 Aug 2014 04:45:12 +0000 (00:45 -0400)]
move apk signature verification into getsig() function

This makes the python replacement behave like an all-in-one replacement
for getsig.java.

fixes #5 https://gitlab.com/fdroid/fdroidserver/issues/5

9 years agoReplace getsig.java with a pure python implementation
Daniel Martí [Sat, 30 Aug 2014 02:53:55 +0000 (22:53 -0400)]
Replace getsig.java with a pure python implementation

Special thanks to deki for helping out with the certificate encodings:
https://gitlab.com/snippets/1842

fixes #5 https://gitlab.com/fdroid/fdroidserver/issues/5

9 years agouse jarsigner to verify the APK signature is valid
Hans-Christoph Steiner [Sat, 30 Aug 2014 02:53:21 +0000 (22:53 -0400)]
use jarsigner to verify the APK signature is valid

By using jarsigner here, we can get rid of getsig.java, since the rest of
what getsig.java does can easily be handled in python.  This simplifies
installation and deployment, and makes things work better cross-platform.
This also means that the fdroidserver Debian package no longer needs to
Build-Depends: on default-jdk, which makes builds in pbuilder run a lot
faster. :-)

refs #5 https://gitlab.com/fdroid/fdroidserver/issues/5

9 years agoAdd support for gradle plugin version 0.14 in the wrapper
Daniel Martí [Wed, 5 Nov 2014 20:30:00 +0000 (21:30 +0100)]
Add support for gradle plugin version 0.14 in the wrapper

9 years agoSet correct defaults for Binaries metadata field
Ciaran Gultnieks [Mon, 27 Oct 2014 17:21:04 +0000 (17:21 +0000)]
Set correct defaults for Binaries metadata field

9 years agoMove build/fdroidserver info to META-INF
Ciaran Gultnieks [Fri, 24 Oct 2014 21:20:42 +0000 (22:20 +0100)]
Move build/fdroidserver info to META-INF

9 years agoMake lint report total app counts as well
Daniel Martí [Fri, 24 Oct 2014 20:24:11 +0000 (22:24 +0200)]
Make lint report total app counts as well

9 years agoFix all pep8 warnings
Daniel Martí [Fri, 24 Oct 2014 20:23:58 +0000 (22:23 +0200)]
Fix all pep8 warnings

9 years agoSupport for publishing signed binaries from elsewhere
Ciaran Gultnieks [Fri, 24 Oct 2014 20:04:15 +0000 (21:04 +0100)]
Support for publishing signed binaries from elsewhere

Done after verifying that they match ones built using a recipe.
Everything in the metadata should be the same as normal, with the
addition of the Binaries: directive to specify where (with pattern
substitution) to get the binaries from.

Publishing only takes place if there is a proper match. (Which seems
very unlikely to be the case unless the exact same toolchain is used, so
I would imagine that unless the person building and signing the incoming
binaries uses fdroidserver to build them, probably the exact same
buildserver id, they will not match. But at least we have the
functionality to support that.)

9 years agoAlso bump build-tools in the example config
Daniel Martí [Thu, 23 Oct 2014 13:22:40 +0000 (15:22 +0200)]
Also bump build-tools in the example config

9 years agoForgot to bump the build tools in the server config
Daniel Martí [Thu, 23 Oct 2014 13:21:07 +0000 (15:21 +0200)]
Forgot to bump the build tools in the server config

9 years agoBump build-tools to 21.0.2
Daniel Martí [Wed, 22 Oct 2014 13:01:01 +0000 (15:01 +0200)]
Bump build-tools to 21.0.2

9 years agoAdd android-21 (5.0) target sdk to the buildserver
Daniel Martí [Sat, 18 Oct 2014 09:55:06 +0000 (11:55 +0200)]
Add android-21 (5.0) target sdk to the buildserver

9 years agoUse '\s' instead of ' ' to identify spaces in regex
Daniel Martí [Wed, 15 Oct 2014 13:00:45 +0000 (15:00 +0200)]
Use '\s' instead of ' ' to identify spaces in regex

9 years agoMake lint check for trailing spaces
Daniel Martí [Wed, 15 Oct 2014 12:36:59 +0000 (14:36 +0200)]
Make lint check for trailing spaces

9 years agoFix gradle 2.1
Daniel Martí [Fri, 10 Oct 2014 10:53:44 +0000 (12:53 +0200)]
Fix gradle 2.1

9 years agoAdd support for gradle plugin version 0.13 via gradle 2.1
Daniel Martí [Tue, 7 Oct 2014 14:36:10 +0000 (16:36 +0200)]
Add support for gradle plugin version 0.13 via gradle 2.1

9 years ago'ndk_path' will always be in the config
Daniel Martí [Thu, 25 Sep 2014 16:13:16 +0000 (18:13 +0200)]
'ndk_path' will always be in the config

9 years agoCreate local.properties if it doesn't exist
Daniel Martí [Thu, 25 Sep 2014 16:11:56 +0000 (18:11 +0200)]
Create local.properties if it doesn't exist

9 years agoTry using Auto Name before falling back to appid for Name
Daniel Martí [Tue, 23 Sep 2014 07:56:09 +0000 (09:56 +0200)]
Try using Auto Name before falling back to appid for Name

9 years agoFix 'fdroid import' flavours crasher
Daniel Martí [Sat, 20 Sep 2014 20:35:58 +0000 (22:35 +0200)]
Fix 'fdroid import' flavours crasher

9 years agoAdd the python3-gnupg package
Daniel Martí [Thu, 18 Sep 2014 13:37:30 +0000 (15:37 +0200)]
Add the python3-gnupg package

9 years agoRemove .egg-info dir when tests succeed
Daniel Martí [Wed, 17 Sep 2014 06:54:02 +0000 (08:54 +0200)]
Remove .egg-info dir when tests succeed

9 years agoFix --android-home in 'fdroid init' when ANDROID_HOME is set
Daniel Martí [Tue, 16 Sep 2014 22:20:37 +0000 (00:20 +0200)]
Fix --android-home in 'fdroid init' when ANDROID_HOME is set

9 years agoName config args thisconfig to avoid confusion with the global config
Daniel Martí [Tue, 16 Sep 2014 22:12:24 +0000 (00:12 +0200)]
Name config args thisconfig to avoid confusion with the global config

9 years agoFix gradle builds without flavours
Daniel Martí [Tue, 16 Sep 2014 06:38:18 +0000 (08:38 +0200)]
Fix gradle builds without flavours

9 years agoFix issue where gradle=yes would be removed by rewritemeta
Daniel Martí [Mon, 15 Sep 2014 15:03:45 +0000 (17:03 +0200)]
Fix issue where gradle=yes would be removed by rewritemeta

9 years agoconfig['sdk_path'] will never be None, behave properly if ANDROID_HOME is unset
Daniel Martí [Mon, 15 Sep 2014 10:49:36 +0000 (12:49 +0200)]
config['sdk_path'] will never be None, behave properly if ANDROID_HOME is unset

9 years agoOnly expand paths on config items that can actually be paths
Daniel Martí [Mon, 15 Sep 2014 10:39:42 +0000 (12:39 +0200)]
Only expand paths on config items that can actually be paths

9 years agoKeep consistency in config defaults and writes
Daniel Martí [Mon, 15 Sep 2014 10:34:40 +0000 (12:34 +0200)]
Keep consistency in config defaults and writes

* Default paths are not expanded
* When writing to config.py in "fdroid init", don't write expanded paths
  either
* Support changes in e.g. $ANDROID_HOME after a config.py is generated thanks
  to the fix above

9 years agoFix a few remaining gradle flavour crashes
Daniel Martí [Mon, 15 Sep 2014 09:52:12 +0000 (11:52 +0200)]
Fix a few remaining gradle flavour crashes

9 years agoMore list comprehension fixes
Daniel Martí [Sat, 13 Sep 2014 11:07:21 +0000 (13:07 +0200)]
More list comprehension fixes

9 years agoCentralise handling of default gradle flavours
Daniel Martí [Sat, 13 Sep 2014 11:04:24 +0000 (13:04 +0200)]
Centralise handling of default gradle flavours

9 years agoMake gradle and antcommands (previously antcommand) proper lists
Daniel Martí [Sat, 13 Sep 2014 11:01:08 +0000 (13:01 +0200)]
Make gradle and antcommands (previously antcommand) proper lists

9 years agodocs: Properly explain gradle= with multiple flavors
Daniel Martí [Sat, 13 Sep 2014 10:27:10 +0000 (12:27 +0200)]
docs: Properly explain gradle= with multiple flavors

9 years agoCloses #34: Catch OSErrors when running Popen
Daniel Martí [Thu, 11 Sep 2014 21:08:51 +0000 (23:08 +0200)]
Closes #34: Catch OSErrors when running Popen

9 years agoFix urlencoding of category in next page links, etc
Ciaran Gultnieks [Thu, 4 Sep 2014 13:31:37 +0000 (14:31 +0100)]
Fix urlencoding of category in next page links, etc

9 years agoMake stats retrieval more configurable
Ciaran Gultnieks [Tue, 2 Sep 2014 17:53:22 +0000 (18:53 +0100)]
Make stats retrieval more configurable

9 years agoDiscard descriptions longer than one line when checking duplicates
Daniel Martí [Mon, 1 Sep 2014 08:34:12 +0000 (10:34 +0200)]
Discard descriptions longer than one line when checking duplicates

9 years agoSort builds by vercode when reading them
Daniel Martí [Sat, 30 Aug 2014 22:21:29 +0000 (00:21 +0200)]
Sort builds by vercode when reading them

Then, when written, the order will be enforced.

9 years agoFix typo in app link hrefs
Daniel Martí [Thu, 28 Aug 2014 13:36:09 +0000 (15:36 +0200)]
Fix typo in app link hrefs

9 years agoUpdate Vagrantfile and docs to clarify v1.4.3 is ok.
Patrick Connolly [Wed, 27 Aug 2014 14:35:31 +0000 (11:35 -0300)]
Update Vagrantfile and docs to clarify v1.4.3 is ok.

9 years agometadata: Simplify the writing of optional fields
Daniel Martí [Tue, 26 Aug 2014 12:06:59 +0000 (14:06 +0200)]
metadata: Simplify the writing of optional fields

9 years agoProperly obey build --force. Fixes #29.
Daniel Martí [Tue, 26 Aug 2014 11:49:42 +0000 (13:49 +0200)]
Properly obey build --force. Fixes #29.

9 years agoDon't accept empty commits
Daniel Martí [Tue, 26 Aug 2014 11:40:18 +0000 (13:40 +0200)]
Don't accept empty commits

With SCMs like git, "git checkout ''" doesn't actually fail, so one may
commit builds without noticing that they left the commit empty.

9 years agolint: warn about redundant links too
Daniel Martí [Tue, 26 Aug 2014 11:32:44 +0000 (13:32 +0200)]
lint: warn about redundant links too

9 years agolint: fix duplicate usage of appid
Daniel Martí [Tue, 26 Aug 2014 11:31:31 +0000 (13:31 +0200)]
lint: fix duplicate usage of appid

9 years agoDon't print tracebacks for option errors
Ciaran Gultnieks [Mon, 25 Aug 2014 15:48:18 +0000 (16:48 +0100)]
Don't print tracebacks for option errors

9 years agocommon: discard wrapping quotes in strings
Daniel Martí [Mon, 25 Aug 2014 06:45:46 +0000 (08:45 +0200)]
common: discard wrapping quotes in strings

Fixes auto names that shouldn't have wrapping quotes like '"PassDroid"'
instead of just 'PassDroid'.

9 years agolint: Also warn about descriptions that are just the summary
Daniel Martí [Sun, 24 Aug 2014 22:41:25 +0000 (00:41 +0200)]
lint: Also warn about descriptions that are just the summary

9 years agolint: remove pedantic warnings that are often wrong
Daniel Martí [Sun, 24 Aug 2014 22:41:01 +0000 (00:41 +0200)]
lint: remove pedantic warnings that are often wrong

9 years agoAdd lint warning for empty summaries
Daniel Martí [Sun, 24 Aug 2014 22:28:40 +0000 (00:28 +0200)]
Add lint warning for empty summaries

9 years agoFix "no such package" search logic
Daniel Martí [Sun, 24 Aug 2014 22:27:46 +0000 (00:27 +0200)]
Fix "no such package" search logic

9 years agoAdd ability to filter asshattery from stats
Ciaran Gultnieks [Fri, 22 Aug 2014 20:18:55 +0000 (21:18 +0100)]
Add ability to filter asshattery from stats

9 years agoMake the scanner log scanignore as well
Daniel Martí [Thu, 21 Aug 2014 18:02:52 +0000 (20:02 +0200)]
Make the scanner log scanignore as well

9 years agoRevert some stuff from 94c29f9c37 that shouldn't have been commited
Daniel Martí [Mon, 18 Aug 2014 09:25:39 +0000 (11:25 +0200)]
Revert some stuff from 94c29f9c37 that shouldn't have been commited

9 years agofd-commit: don't break when non-metadata files show up in git status
Daniel Martí [Sat, 16 Aug 2014 15:51:32 +0000 (17:51 +0200)]
fd-commit: don't break when non-metadata files show up in git status

9 years agoFix return in parse_metadata(None)
Daniel Martí [Sat, 16 Aug 2014 14:01:00 +0000 (16:01 +0200)]
Fix return in parse_metadata(None)

9 years agoMap apps in memory from appid to appinfo
Daniel Martí [Sat, 16 Aug 2014 10:46:02 +0000 (12:46 +0200)]
Map apps in memory from appid to appinfo

Instead of storing them in a list and doing linear searches by appinfo['id']

9 years agoAdd setup.py to pep8+pyflakes hook, fix it
Daniel Martí [Sat, 16 Aug 2014 09:51:23 +0000 (11:51 +0200)]
Add setup.py to pep8+pyflakes hook, fix it

9 years agostats: simpler repo type logic
Daniel Martí [Sat, 16 Aug 2014 09:42:51 +0000 (11:42 +0200)]
stats: simpler repo type logic

9 years agoBe more specific about when git svn is used
Daniel Martí [Sat, 16 Aug 2014 08:55:21 +0000 (10:55 +0200)]
Be more specific about when git svn is used

9 years agoAdd Update Check Name to docs
Daniel Martí [Fri, 15 Aug 2014 12:03:33 +0000 (14:03 +0200)]
Add Update Check Name to docs

9 years agoAlso warn about HEAD, ignore disabled builds
Daniel Martí [Fri, 15 Aug 2014 10:29:03 +0000 (12:29 +0200)]
Also warn about HEAD, ignore disabled builds

9 years agoTry to fix apk path matching with newer maven plugin versions
Daniel Martí [Tue, 12 Aug 2014 10:56:15 +0000 (12:56 +0200)]
Try to fix apk path matching with newer maven plugin versions

9 years agoRemove gpg sig when removing disabled builds
Ciaran Gultnieks [Mon, 11 Aug 2014 11:48:27 +0000 (12:48 +0100)]
Remove gpg sig when removing disabled builds

9 years agoDon't assume that Result: will be in the first line
Daniel Martí [Sun, 10 Aug 2014 17:56:45 +0000 (19:56 +0200)]
Don't assume that Result: will be in the first line

Fixes nasty bugs with _JAVA_OPTIONS

9 years agoMake use of Popen.wait() return value
Daniel Martí [Sun, 10 Aug 2014 10:28:19 +0000 (12:28 +0200)]
Make use of Popen.wait() return value

9 years agoinstall: don't error if there are bin apks in repo/
Daniel Martí [Sat, 9 Aug 2014 23:09:44 +0000 (01:09 +0200)]
install: don't error if there are bin apks in repo/

9 years agoFix update, broken in 7ac0c5abb2d
Ciaran Gultnieks [Fri, 8 Aug 2014 11:34:37 +0000 (12:34 +0100)]
Fix update, broken in 7ac0c5abb2d

9 years agoImprove 'no sdk version found' output
Ciaran Gultnieks [Fri, 8 Aug 2014 11:34:16 +0000 (12:34 +0100)]
Improve 'no sdk version found' output

9 years agoRevert "Add android-L target to the buildserver"
Daniel Martí [Thu, 7 Aug 2014 08:29:44 +0000 (10:29 +0200)]
Revert "Add android-L target to the buildserver"

This reverts commit 7809ef419f6dcd7f4898ddc0c51db7286fd30a59.

android-L is a preview, we want to add android-20 when it comes out.

9 years agoMerge branch 'master' into 'master'
Ciaran Gultnieks [Tue, 5 Aug 2014 21:51:52 +0000 (21:51 +0000)]
Merge branch 'master' into 'master'

Manual - fix name and location of sample files

It seems name and location of the sample files were changed. The documentation tells about "config.sample.py" and "makebs.config.sample.py". I did not find these while setting up the environment today.

The files are now located inside the "exmaples" directory and named as the real files.

See merge request !21

9 years agoupdate: use sets for permissions and features to avoid duplicates
Daniel Martí [Tue, 5 Aug 2014 21:04:21 +0000 (23:04 +0200)]
update: use sets for permissions and features to avoid duplicates

9 years agoAdd android-L target to the buildserver
Daniel Martí [Sun, 3 Aug 2014 07:51:19 +0000 (09:51 +0200)]
Add android-L target to the buildserver

9 years agoBump version to 0.2.1 0.2.1
Daniel Martí [Sat, 2 Aug 2014 11:44:48 +0000 (13:44 +0200)]
Bump version to 0.2.1

9 years agoAdd python-gnupg to buildserver
Ciaran Gultnieks [Thu, 31 Jul 2014 17:49:34 +0000 (18:49 +0100)]
Add python-gnupg to buildserver

9 years agofixed name and location of config.py sample file
Tilman Beitter [Fri, 25 Jul 2014 12:20:56 +0000 (14:20 +0200)]
fixed name and location of config.py sample file

9 years agoRemove extra argument in magic warning call
Daniel Martí [Thu, 24 Jul 2014 06:55:54 +0000 (08:55 +0200)]
Remove extra argument in magic warning call

9 years agostats: don't include disabled apps
Daniel Martí [Wed, 23 Jul 2014 17:55:45 +0000 (19:55 +0200)]
stats: don't include disabled apps

9 years agoUse --before when using find-rev in git-svn
Daniel Martí [Wed, 23 Jul 2014 15:26:33 +0000 (17:26 +0200)]
Use --before when using find-rev in git-svn

9 years agoDon't crash if a magic number can't be used
Daniel Martí [Tue, 22 Jul 2014 08:06:38 +0000 (10:06 +0200)]
Don't crash if a magic number can't be used

This should fix the anki build crashing.

9 years agoMerge branch 'master' of https://gitlab.com/eighthave/fdroidserver
Daniel Martí [Fri, 18 Jul 2014 11:21:40 +0000 (13:21 +0200)]
Merge branch 'master' of https://gitlab.com/eighthave/fdroidserver

9 years agoDrop svn support in favour of git-svn
Daniel Martí [Fri, 18 Jul 2014 10:39:24 +0000 (12:39 +0200)]
Drop svn support in favour of git-svn

Reasons:

* Cloning a svn repo via svn doesn't fetch the entire history
* Svn checkout is incredibly slow
* Svn doesn't have important features such as a 'clean' command

The only reason why we kept svn was for anonymous logins to repositories. This
is no longer a reason since git-svn also supports them.

9 years agoUse os.path.join instead of adding strings more often
Daniel Martí [Fri, 18 Jul 2014 10:21:52 +0000 (12:21 +0200)]
Use os.path.join instead of adding strings more often

9 years agoFix Tags UCM on newer git-svn versions
Daniel Martí [Fri, 18 Jul 2014 10:12:16 +0000 (12:12 +0200)]
Fix Tags UCM on newer git-svn versions

9 years agodefault to Pillow for Python Imaging, that's what most people use now
Hans-Christoph Steiner [Thu, 17 Jul 2014 16:31:57 +0000 (12:31 -0400)]
default to Pillow for Python Imaging, that's what most people use now

PIL is the old standard Python Imaging.  Pillow is a fork where development
is actually continuing.  It seems that all the distros are also switching
from PIL to Pillow, including Debian, Ubuntu, Fedora, brew, MacPorts, etc.

9 years agoPut lastbuild log on wiki by vercode (with redirect)
Ciaran Gultnieks [Thu, 17 Jul 2014 13:05:16 +0000 (14:05 +0100)]
Put lastbuild log on wiki by vercode (with redirect)

9 years agoMerge branch 'support-multiple-serverwebroots-and-fixes' into 'master'
Ciaran Gultnieks [Wed, 16 Jul 2014 21:07:10 +0000 (21:07 +0000)]
Merge branch 'support-multiple-serverwebroots-and-fixes' into 'master'

Support multiple serverwebroots and fixes

This adds support for lists of serverwebroots in config.py, and cleans newlines and spaces in the repo_description and archive_description.

9 years agoMake FlattrID a hexadecimal value
Daniel Martí [Tue, 15 Jul 2014 22:02:01 +0000 (00:02 +0200)]
Make FlattrID a hexadecimal value

This adds support for flattr "things" that are not direct flattr numeric ids,
but hexadecimal hashes representing web pages outside of flattr.

9 years agosupport lists/tuples in 'serverwebroot' config item
Hans-Christoph Steiner [Mon, 14 Jul 2014 19:03:58 +0000 (15:03 -0400)]
support lists/tuples in 'serverwebroot' config item

This allows the user to specify multiple servers to put the repo to, and
`fdroid server update` will automatically push to them all.

fixes #22 https://gitlab.com/fdroid/fdroidserver/issues/22

9 years agoupdate local_copy_dir rsync to handle FAT and filesystems with perms
Hans-Christoph Steiner [Thu, 3 Jul 2014 01:03:26 +0000 (21:03 -0400)]
update local_copy_dir rsync to handle FAT and filesystems with perms

With FAT filesystems, the user, group, and permissions will not be at all
preserved.  With file systems like ext4 that have perms, the umask might
not be set to something that makes sense for the public repo files, which
are meant to be published and therefore readible by all.

If need be, it would be easy enough to add a config option for rsync's
chmod string, to address setups that have specific permissions needs.

fixes #23 https://gitlab.com/fdroid/fdroidserver/issues/23

9 years agoauto-clean newlines and spaces in repo/archive descriptions
Hans-Christoph Steiner [Thu, 3 Jul 2014 00:57:47 +0000 (20:57 -0400)]
auto-clean newlines and spaces in repo/archive descriptions

This gives us flexibility in how the blocks of text can be formatted in
config.py, but also provides a more useful format for displaying since the
client can decide where to wrap the text.

9 years agoserver init: replace ssh subprocess with paramiko
Hans-Christoph Steiner [Thu, 3 Jul 2014 00:54:52 +0000 (20:54 -0400)]
server init: replace ssh subprocess with paramiko

It is easier to handle programming with python rather than subprocess calls
so I replaced the subprocess call to 'ssh' with paramiko.  This also makes
fdroid more portable since it no longer relies on the local system having
ssh installed.

9 years agoDon't use the error-prone -x method to avoid lint usage
Daniel Martí [Thu, 10 Jul 2014 10:07:10 +0000 (12:07 +0200)]
Don't use the error-prone -x method to avoid lint usage

9 years agoUse p.wait() instead of p.communicate()
Daniel Martí [Wed, 9 Jul 2014 17:22:39 +0000 (19:22 +0200)]
Use p.wait() instead of p.communicate()

The latter calls the former anyway, and we don't need to fetch the output nor
send any stdin.

9 years agoMake a few Popens silent
Daniel Martí [Wed, 9 Jul 2014 17:15:39 +0000 (19:15 +0200)]
Make a few Popens silent

9 years agoMuch cleaner and nicer way to ignore vcs dot dirs
Daniel Martí [Wed, 9 Jul 2014 17:11:13 +0000 (19:11 +0200)]
Much cleaner and nicer way to ignore vcs dot dirs

We now discard their entire subtree directly