chiark / gitweb /
Hans-Christoph Steiner [Wed, 28 Jun 2017 21:12:04 +0000 (23:12 +0200)]
gitlab-ci: fix metadata_v0 test to run on the right commits
Checking out master will often mean its testing the wrong commit, since
merge requests rarely are in master.
Hans-Christoph Steiner [Thu, 22 Jun 2017 14:32:44 +0000 (16:32 +0200)]
gitlab-ci: fix metadata_v0 test for new buildozer build flag
Just remove it, since 0.7.0 does not know about that build flag.
Hans-Christoph Steiner [Wed, 21 Jun 2017 12:04:45 +0000 (12:04 +0000)]
Merge branch 'buildozer-build' into 'master'
Added a method to build python/kivy projects using buildozer.
See merge request !290
lb@lb520 [Wed, 21 Jun 2017 06:26:52 +0000 (08:26 +0200)]
Test metadata files updated.
Hans-Christoph Steiner [Tue, 20 Jun 2017 18:24:43 +0000 (20:24 +0200)]
gitlab-ci: properly quote colons
Hans-Christoph Steiner [Tue, 20 Jun 2017 16:15:03 +0000 (18:15 +0200)]
gitlab-ci: ignore blank Description in metadata_v0 test
We'll eventually be moving to having the internal representation use a
'' or None when there is no Description, so no use in fixing this.
lb@lb520 [Tue, 20 Jun 2017 13:56:15 +0000 (15:56 +0200)]
build.py corrected
lb@lb520 [Tue, 20 Jun 2017 12:16:31 +0000 (14:16 +0200)]
Added a method to build python/kivy projects using buildozer.
Hans-Christoph Steiner [Mon, 19 Jun 2017 09:36:21 +0000 (09:36 +0000)]
Merge branch 'vagrantfile-box' into 'master'
Copy initial buildserver CPU/memory configuration to final box Vagrantfile
See merge request !279
Hans-Christoph Steiner [Sat, 17 Jun 2017 11:01:39 +0000 (11:01 +0000)]
Merge branch 'gradle4' into 'master'
makebs: add gradle4.0
See merge request !289
Hans-Christoph Steiner [Sat, 17 Jun 2017 11:00:57 +0000 (11:00 +0000)]
Merge branch 'googlemaven' into 'master'
Add Google's maven repo to allowed list
See merge request !275
Boris Kraut [Fri, 16 Jun 2017 23:39:44 +0000 (01:39 +0200)]
makebs: add gradle4.0
Hans-Christoph Steiner [Fri, 16 Jun 2017 20:20:59 +0000 (22:20 +0200)]
set gettext template to UTF-8
Hans-Christoph Steiner [Fri, 16 Jun 2017 20:10:37 +0000 (22:10 +0200)]
move translation files to 'locale' like Repomaker does
The django gettext layout seems to the most standard approach with
Python projects.
Hans-Christoph Steiner [Thu, 15 Jun 2017 15:20:38 +0000 (17:20 +0200)]
jenkins-build: point to new dir named after the script
This changes out the arbitrary names used before.
Hans-Christoph Steiner [Thu, 15 Jun 2017 15:16:52 +0000 (17:16 +0200)]
Hans-Christoph Steiner [Thu, 15 Jun 2017 15:07:01 +0000 (17:07 +0200)]
jenkins-build: `git clean` before running fdroid cli tests
Otherwise, `fdroid init` will fail since the old repo files are present.
Hans-Christoph Steiner [Mon, 12 Jun 2017 14:15:07 +0000 (16:15 +0200)]
update: do not crash on screenshots without texts/graphics
`fdroid update` crashed for apps that only had screenshots but no graphics
or localized texts because destdir was not being set in that case. This
fixes that and adds a test case.
closes #320
!286
Hans-Christoph Steiner [Mon, 12 Jun 2017 19:26:04 +0000 (19:26 +0000)]
Merge branch 'fix' into 'master'
fix #320 due to unintentionally reusing the same variable name
Closes #320
See merge request !286
Rui Zhao (renyuneyun) [Mon, 12 Jun 2017 17:04:30 +0000 (18:04 +0100)]
fix !320 due to unintentionally reusing the same variable name
Boris Kraut [Sat, 10 Jun 2017 09:55:47 +0000 (09:55 +0000)]
Merge branch 'master' into 'master'
makebuildserver: bump tools, add api26 and build-tools 26
See merge request !284
Sergey Eremin [Fri, 9 Jun 2017 17:35:04 +0000 (20:35 +0300)]
makebuildserver: bump tools, add api26 and build-tools 26
Boris Kraut [Thu, 8 Jun 2017 01:54:34 +0000 (01:54 +0000)]
Merge branch 'fdroiddata-localization-fixes' into 'master'
fdroiddata localization fixes
See merge request !283
Hans-Christoph Steiner [Wed, 7 Jun 2017 09:33:01 +0000 (11:33 +0200)]
rewritemeta: do not include empty Summary: or Description:
Since the Summary: and Description: in the metadata file has the highest
priority of all the localized texts, adding blank versions means that
apps would always have blank Summary and Description even if the app has
those fields in the localized sections of fdroiddata and/or in the app's
source repo itself.
fdroiddata!2262
Hans-Christoph Steiner [Fri, 2 Jun 2017 11:56:57 +0000 (13:56 +0200)]
lint can no longer properly detect unset Summary/Description
Since the Summary/Description can now be set in the app's source code, or
in fdroiddata/metadata/<packageName>/<locale>/*.txt, this lint check is
no longer valid. It is important to check whether these texts are empty,
but it'll require some thinking about how and where to best to that.
`fdroid update` will have access to all that data, but perhaps at that
point it is too late.
Also, the current text prioritization puts Summary/Description in the
.txt/.yml file at the highest priority, overriding every other copy,
including in fdroiddata/metadata/<packageName>/<locale> and in the app's
source code.
Hans-Christoph Steiner [Fri, 2 Jun 2017 11:41:04 +0000 (13:41 +0200)]
support fdroid names in filenames for localized texts
* "full description" is just "description"
* "short description" is "summary"
* "title" is "name"
Hans-Christoph Steiner [Fri, 2 Jun 2017 11:39:18 +0000 (13:39 +0200)]
support fastlane simplified metadata dir
Running `fastlane init` gave me a much simpler directory layout, which
turns out to be the same as what is used for fdroiddata.
Hans-Christoph Steiner [Wed, 7 Jun 2017 18:19:40 +0000 (18:19 +0000)]
Merge branch 'check-vmx-libvirt' into 'master'
Use Qemu instead of KVM when we don't have VMX/SVM
See merge request !282
Torsten Grote [Fri, 2 Jun 2017 14:22:26 +0000 (14:22 +0000)]
Merge branch 'localization-template' into 'master'
add core help strings to gettext source file
See merge request !281
Torsten Grote [Fri, 2 Jun 2017 14:20:20 +0000 (14:20 +0000)]
Merge branch 'duplicate-apk-processing' into 'master'
APK processing for duplicate versionCodes and renaming
See merge request !280
Hans-Christoph Steiner [Thu, 18 May 2017 16:54:16 +0000 (18:54 +0200)]
add core help strings to gettext source file
This will allow us to put these up on Weblate and have people start
translating them. Then we can figure out how to actually include and
deploy the translations later. It is unfortunately non-trivial, since
we have to manually figure out the install paths.
Willem Mulder [Fri, 2 Jun 2017 09:35:46 +0000 (11:35 +0200)]
Use Qemu instead of KVM when we don't have VMX/SVM
Hans-Christoph Steiner [Thu, 1 Jun 2017 14:24:31 +0000 (16:24 +0200)]
check signature and OpenSSL after APK has proven valid
If working with a random grabbag of APKs, there can be all sorts of
issues like corrupt entries in the ZIP, bad signatures, signatures that
are invalid since they use MD5, etc. Moving these two checks later means
that the APKs can be renamed still.
This does change how common.getsig() works. For years, it returned
None if the signature check failed. Now that I've started working
with giant APK collections gathered from the wild, I can see that
`fdroid update` needs to be able to first index what's there, then
make decisions based on that information. So that means separating
the getsig() fingerprint fetching from the APK signature verification.
This is not hugely security sensitive, since the APKs still have to
get past the Android checks, e.g. update signature checks. Plus the
APK hash is already included in the signed index.
Hans-Christoph Steiner [Thu, 1 Jun 2017 08:29:30 +0000 (10:29 +0200)]
strip file extension from generated name for non-APKs
With a generic file, the file name is the only guaranteed name metadata
field. So if the name is not specified in the metadata, then the name
is set to the filename. This changes that so that the file extension is
stripped from that generated name.
Hans-Christoph Steiner [Thu, 1 Jun 2017 08:27:35 +0000 (10:27 +0200)]
use var naming scheme in KnownApks (apk --> apkName)
Everywhere else, the file name of the APK is called apkName.
Hans-Christoph Steiner [Wed, 31 May 2017 21:02:28 +0000 (23:02 +0200)]
regexs for getting packageName and versionCode from filenames
This is useful for parsing APK files, which can include packageName,
versionCode, and optionally 7 char signing key ID (i.e. <sig>).
This also can set the packageName and versionCoe for non APK files, so
that it is easy to assign them to metadata files, and to allow for
upgrades by setting the versionCode in the filename.
Hans-Christoph Steiner [Wed, 31 May 2017 19:43:40 +0000 (21:43 +0200)]
index.xml cannot handle APKs with the same packageName/versionCode
Really, it is the fdroidclient parser of index.xml that fails, due to the
hardcoded expectation that there will only ever be a single APK for any
given versionCode. We keep index.xml backwards compatible for old
clients, and use index-v1.json to support new things. Having multiple
APKs that have the same packageName and versionCode will break the client
v0.103.* since that version uses index-v1.json, but still has the hard-
coded database parsing stuff.
#153
Hans-Christoph Steiner [Wed, 31 May 2017 19:20:35 +0000 (21:20 +0200)]
update: add --rename-apks to force APK filenames to fdroid standard
uses the standard package.name_123.apk. If that exists, it appends the
shasum. If that exists, then its a duplicate, so its deleted. This should
help @SergeWinters with his 12,000 APKs.
Andrew Patrikalakis [Thu, 1 Jun 2017 13:53:33 +0000 (09:53 -0400)]
Copy initial buildserver CPU/memory configuration to final box Vagrantfile
Hans-Christoph Steiner [Tue, 30 May 2017 12:52:33 +0000 (14:52 +0200)]
allow APKs with same packageName/versionCode but different signer
There are many APKs out in the wild that claim to be the same app and
version and each other, but they are signed by different keys. fdroid
should be able to index these, and work with them. This supports having
the developer's signature via reproducible builds, random collections of
APKs like repomaker, etc.
Hans-Christoph Steiner [Sat, 27 May 2017 19:13:36 +0000 (21:13 +0200)]
gitlab-ci: add index v0 metadata parsing test
This test is very handy for making sure the old index.xml v0 format does
not inadvertantly change.
Hans-Christoph Steiner [Thu, 25 May 2017 18:39:15 +0000 (20:39 +0200)]
add basic test for `fdroid scanner`
There was no test coverage at all for this command, this is a very basic
test that should prevent things like
2626858450953ac65124765d2cd73d1602846372
Hans-Christoph Steiner [Tue, 30 May 2017 19:08:28 +0000 (19:08 +0000)]
Merge branch 'master' into 'master'
Add support for the new Bitbucket look
See merge request !278
Alexey Krasilnikov [Tue, 30 May 2017 10:24:07 +0000 (13:24 +0300)]
Add support for the new Bitbucket look
Hans-Christoph Steiner [Mon, 29 May 2017 08:01:32 +0000 (08:01 +0000)]
Merge branch 'makebs' into 'master'
makebs: update to ndk-r14b and build-tools-25.0.3
See merge request !277
Boris Kraut [Fri, 26 May 2017 21:38:35 +0000 (21:38 +0000)]
Merge branch 'lint-for-newness' into 'master'
`fdroid lint` support for SPDX, l18n, dev signatures
Closes #234
See merge request !269
Boris Kraut [Fri, 26 May 2017 14:54:06 +0000 (16:54 +0200)]
makebs: update to ndk-r14b and build-tools-25.0.3
Hans-Christoph Steiner [Mon, 15 May 2017 14:58:10 +0000 (16:58 +0200)]
make tests pass new lint rules
Hans-Christoph Steiner [Mon, 15 May 2017 14:46:52 +0000 (16:46 +0200)]
lint: use only license tags from https://spdx.org/license-list
closes #234
Hans-Christoph Steiner [Mon, 15 May 2017 13:17:33 +0000 (15:17 +0200)]
lint: support new per-package subdirs for l18n and dev signatures
Graphics and localized text can now be stored in the package folders,
always in a folder that is named for the locale. The upstream developer
signature is also now stored, so that the upstream APK can be reproduced
even if they remove their APKs.
#291
fdroiddata!2229
fdroiddata!2224
fdroidclient#15
fdroidserver#174
Hans-Christoph Steiner [Mon, 15 May 2017 12:58:01 +0000 (14:58 +0200)]
lint: add popular URL shorteners to the banned list
Boris Kraut [Thu, 25 May 2017 18:55:50 +0000 (20:55 +0200)]
scanner: allow google maven
Hans-Christoph Steiner [Thu, 25 May 2017 18:49:14 +0000 (18:49 +0000)]
Merge branch 'master' into 'master'
Don't pass root_dir to scan_source
See merge request !276
mimi89999 [Thu, 25 May 2017 18:11:14 +0000 (20:11 +0200)]
Don't pass root_dir to scan_source
Torsten Grote [Thu, 25 May 2017 14:00:36 +0000 (14:00 +0000)]
Merge branch 'modernize-pylint' into 'master'
modernize pylint
See merge request !252
Hans-Christoph Steiner [Wed, 24 May 2017 10:57:21 +0000 (10:57 +0000)]
Merge branch 'linphone-packages' into 'master'
Add required packages for linphone 3.1.0 build
See merge request !274
Andrew Patrikalakis [Wed, 24 May 2017 04:19:13 +0000 (21:19 -0700)]
Add required packages for linphone 3.1.0 build
Hans-Christoph Steiner [Thu, 13 Apr 2017 09:58:56 +0000 (11:58 +0200)]
fix pylink 'dict' has no member 'keystore'
Hans-Christoph Steiner [Thu, 13 Apr 2017 10:30:04 +0000 (12:30 +0200)]
fix pylint unused-argument
Hans-Christoph Steiner [Thu, 13 Apr 2017 09:57:02 +0000 (11:57 +0200)]
update outdated pylint setup
The logilab-astng lib is dead, replaced by python-astroid. The crazy astng
plugin is no longer needed also.
#281
Hans-Christoph Steiner [Tue, 23 May 2017 18:38:57 +0000 (18:38 +0000)]
Merge branch 'python-vagrant-copy-caches' into 'master'
complete staging buildserver setup on jenkins.debian.net using nested KVM instances
See merge request !176
Hans-Christoph Steiner [Tue, 23 May 2017 09:59:53 +0000 (11:59 +0200)]
makebuildserver: make config['domain'] local var where its needed
Michael Pöhn [Tue, 23 May 2017 10:53:07 +0000 (12:53 +0200)]
refactored vm related code from build.py to vmtools.py
Michael Pöhn [Tue, 23 May 2017 09:37:09 +0000 (11:37 +0200)]
removed unused buildserver code
Hans-Christoph Steiner [Mon, 22 May 2017 13:50:32 +0000 (15:50 +0200)]
leave VirtualBox `vagrant package` as it was originally
We only need Vagrantfile hacks for KVM.
Michael Pöhn [Tue, 25 Apr 2017 12:45:41 +0000 (14:45 +0200)]
restart builder vm when ssh connection fails
Hans-Christoph Steiner [Tue, 25 Apr 2017 08:27:09 +0000 (10:27 +0200)]
build: delete bad builder/ symlinks
If builder/ is a symlink but is not detected as a directory by
os.path.isdir(), then it is a broken symlink.
Michael Pöhn [Fri, 14 Apr 2017 13:58:16 +0000 (15:58 +0200)]
wait a sec after suspending
Michael Pöhn [Thu, 13 Apr 2017 16:41:50 +0000 (18:41 +0200)]
reset buildserver vm if vagrant uuid not present
Michael Pöhn [Thu, 13 Apr 2017 10:49:14 +0000 (12:49 +0200)]
makebuildserver vbox logmessage fix
Michael Pöhn [Wed, 12 Apr 2017 20:06:21 +0000 (22:06 +0200)]
use uuid for vbox snapshots again
Michael Pöhn [Wed, 12 Apr 2017 15:07:50 +0000 (17:07 +0200)]
removed useless vm validity check; attempted to fix vbox support
Michael Pöhn [Sun, 9 Apr 2017 13:36:31 +0000 (15:36 +0200)]
deal with outdated box images in libvirt storage pool
Michael Pöhn [Sat, 8 Apr 2017 22:57:59 +0000 (00:57 +0200)]
makebuildserver deal with apt cache lock
Hans-Christoph Steiner [Mon, 22 May 2017 15:53:12 +0000 (17:53 +0200)]
build server use up instead or resume; logging
Hans-Christoph Steiner [Mon, 22 May 2017 15:53:47 +0000 (17:53 +0200)]
test script for vmtools
Michael Pöhn [Thu, 6 Apr 2017 09:42:35 +0000 (11:42 +0200)]
revised build server creation
Michael Pöhn [Sat, 1 Apr 2017 10:27:26 +0000 (12:27 +0200)]
auto-lookup vm provider based on available executables; more fault tolerant vagrant package
Hans-Christoph Steiner [Mon, 22 May 2017 15:17:01 +0000 (17:17 +0200)]
fixed reading libvirt box image size
Michael Pöhn [Wed, 29 Mar 2017 15:36:04 +0000 (17:36 +0200)]
vmtools debug logging for check_output calls
Hans-Christoph Steiner [Mon, 22 May 2017 15:14:48 +0000 (17:14 +0200)]
added box handling to vmtools
Hans-Christoph Steiner [Mon, 22 May 2017 15:12:34 +0000 (17:12 +0200)]
refactored kvm_package to vmtools
Hans-Christoph Steiner [Mon, 22 May 2017 15:29:12 +0000 (17:29 +0200)]
added makebuildserver option for keeping vagrant box
This is very useful for debugging this process, and also for people
who might want to keep a working copy of the box.
Michael Pöhn [Sun, 26 Mar 2017 01:34:29 +0000 (03:34 +0200)]
fix virsh destroy parameters
Michael Pöhn [Sun, 26 Mar 2017 01:15:33 +0000 (03:15 +0200)]
use configured vm provider in when calling destroy in makebuildserver
Michael Pöhn [Sun, 26 Mar 2017 00:51:28 +0000 (01:51 +0100)]
use overhauled mv destroy code in build.py
Michael Pöhn [Sun, 26 Mar 2017 00:41:39 +0000 (01:41 +0100)]
overhauled and moved destroying builder vm to vmtools.py
Michael Pöhn [Sat, 25 Mar 2017 03:19:36 +0000 (04:19 +0100)]
fdroid build: added sleep after destroy/undefine
Michael Pöhn [Sat, 25 Mar 2017 02:50:22 +0000 (03:50 +0100)]
makebuildserver added sleep after destroy/undefine
Michael Pöhn [Sat, 25 Mar 2017 01:48:00 +0000 (02:48 +0100)]
makebuildserver more robust codepath for vagrant destroy
Michael Pöhn [Sat, 25 Mar 2017 01:37:08 +0000 (02:37 +0100)]
makebuildserver added failsafe when destroy vagrant vm
Michael Pöhn [Sat, 25 Mar 2017 01:19:15 +0000 (02:19 +0100)]
makebuildserver use virsh instead of libvirt for forcing domain off
Michael Pöhn [Sat, 25 Mar 2017 00:56:20 +0000 (01:56 +0100)]
makebuildserver debug logging when initial provisioning fails
Michael Pöhn [Sat, 25 Mar 2017 00:40:41 +0000 (01:40 +0100)]
overhauled makebuildserver libvirt vm cleanup
Michael Pöhn [Fri, 24 Mar 2017 19:04:50 +0000 (20:04 +0100)]
makebuildserver debugging log details
Michael Pöhn [Fri, 24 Mar 2017 03:16:30 +0000 (04:16 +0100)]
makebuildserver prune gloabal vagrant status when purging broken VMs
Michael Pöhn [Fri, 24 Mar 2017 02:15:35 +0000 (03:15 +0100)]
delete .vagrant dir when cleaning up buildserver vm
Michael Pöhn [Thu, 23 Mar 2017 23:49:02 +0000 (00:49 +0100)]
jenkins makebuildserver fail if vagrant box was not created
Hans-Christoph Steiner [Mon, 22 May 2017 14:57:47 +0000 (16:57 +0200)]
calculate correct size for buildserver-box in makebuildserver
https://gitlab.com/fdroid/fdroidserver/issues/238#note_24000153
"Our hard-coded image size meta-data (1000) is for some interpreted as less
than the size of the box-image by my kvm setup. This makes grub/initrd
refuse to boot. So I've changed the metadata size to 9999 which resulted in
an actually booting vm. I can log in on the builder-vm via virt-manager
and virsh.
Michael Pöhn [Tue, 14 Mar 2017 23:12:01 +0000 (00:12 +0100)]
auto-reset broken builder vm