mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-10-02 09:10:11 +02:00
init: no error if examples/ dir cannot be found; overhaul repo_icon
There are so many possible installation paths for Python modules, it has been very hard to even find and test them all. This adds a fallback option if the examples dir cannot be found. A repo can work without an icon or the example config.py. This removes the fake assumption that the icon can be a full path in the config.py. While the path was being properly passed through to the index file, the file was never copied properly into place nor rsynced to the web server.
This commit is contained in:
parent
b655d20d6b
commit
5ae2703477
@ -13,7 +13,6 @@ include examples/fdroid_exportkeystore.py
|
|||||||
include examples/fdroid_export_keystore_to_nitrokey.py
|
include examples/fdroid_export_keystore_to_nitrokey.py
|
||||||
include examples/fdroid_extract_repo_pubkey.py
|
include examples/fdroid_extract_repo_pubkey.py
|
||||||
include examples/fdroid_fetchsrclibs.py
|
include examples/fdroid_fetchsrclibs.py
|
||||||
include examples/fdroid-icon.png
|
|
||||||
include examples/fdroid_nitrokeyimport.py
|
include examples/fdroid_nitrokeyimport.py
|
||||||
include examples/makebuildserver.config.py
|
include examples/makebuildserver.config.py
|
||||||
include examples/opensc-fdroid.cfg
|
include examples/opensc-fdroid.cfg
|
||||||
|
@ -54,7 +54,6 @@
|
|||||||
|
|
||||||
repo_url: https://MyFirstFDroidRepo.org/fdroid/repo
|
repo_url: https://MyFirstFDroidRepo.org/fdroid/repo
|
||||||
repo_name: My First F-Droid Repo Demo
|
repo_name: My First F-Droid Repo Demo
|
||||||
repo_icon: fdroid-icon.png
|
|
||||||
repo_description: >-
|
repo_description: >-
|
||||||
This is a repository of apps to be used with F-Droid. Applications in this
|
This is a repository of apps to be used with F-Droid. Applications in this
|
||||||
repository are either official binaries built by the original application
|
repository are either official binaries built by the original application
|
||||||
@ -68,10 +67,18 @@ repo_description: >-
|
|||||||
archive_older: 3
|
archive_older: 3
|
||||||
archive_url: https://f-droid.org/archive
|
archive_url: https://f-droid.org/archive
|
||||||
archive_name: My First F-Droid Archive Demo
|
archive_name: My First F-Droid Archive Demo
|
||||||
archive_icon: fdroid-icon.png
|
|
||||||
archive_description: >-
|
archive_description: >-
|
||||||
The repository of older versions of packages from the main demo repository.
|
The repository of older versions of packages from the main demo repository.
|
||||||
|
|
||||||
|
# The repo's icon defaults to a file called 'icon.png' in the 'icons'
|
||||||
|
# folder for each section, e.g. repo/icons/icon.png and
|
||||||
|
# archive/icons/icon.png. To use a different filename for the icons,
|
||||||
|
# set the filename here. You must still copy it into place in
|
||||||
|
# repo/icons/ and/or archive/icons/.
|
||||||
|
#
|
||||||
|
# repo_icon: myicon.png
|
||||||
|
# archive_icon: myicon.png
|
||||||
|
|
||||||
# This allows a specific kind of insecure APK to be included in the
|
# This allows a specific kind of insecure APK to be included in the
|
||||||
# 'repo' section. Since April 2017, APK signatures that use MD5 are
|
# 'repo' section. Since April 2017, APK signatures that use MD5 are
|
||||||
# no longer considered valid, jarsigner and apksigner will return an
|
# no longer considered valid, jarsigner and apksigner will return an
|
||||||
|
Binary file not shown.
Before Width: | Height: | Size: 3.3 KiB |
@ -147,7 +147,7 @@ default_config = {
|
|||||||
'keyaliases': {},
|
'keyaliases': {},
|
||||||
'repo_url': "https://MyFirstFDroidRepo.org/fdroid/repo",
|
'repo_url': "https://MyFirstFDroidRepo.org/fdroid/repo",
|
||||||
'repo_name': "My First FDroid Repo Demo",
|
'repo_name': "My First FDroid Repo Demo",
|
||||||
'repo_icon': "fdroid-icon.png",
|
'repo_icon': "icon.png",
|
||||||
'repo_description': _('''
|
'repo_description': _('''
|
||||||
This is a repository of apps to be used with FDroid. Applications in this
|
This is a repository of apps to be used with FDroid. Applications in this
|
||||||
repository are either official binaries built by the original application
|
repository are either official binaries built by the original application
|
||||||
@ -228,7 +228,7 @@ def fill_config_defaults(thisconfig):
|
|||||||
return None
|
return None
|
||||||
return path
|
return path
|
||||||
|
|
||||||
for k in ['sdk_path', 'ant', 'mvn3', 'gradle', 'keystore', 'repo_icon']:
|
for k in ['sdk_path', 'ant', 'mvn3', 'gradle', 'keystore']:
|
||||||
v = thisconfig[k]
|
v = thisconfig[k]
|
||||||
exp = expand_path(v)
|
exp = expand_path(v)
|
||||||
if exp is not None:
|
if exp is not None:
|
||||||
|
@ -75,13 +75,13 @@ def make(apps, apks, repodir, archive):
|
|||||||
|
|
||||||
if archive:
|
if archive:
|
||||||
repodict['name'] = common.config['archive_name']
|
repodict['name'] = common.config['archive_name']
|
||||||
repodict['icon'] = os.path.basename(common.config['archive_icon'])
|
repodict['icon'] = common.config.get('archive_icon', common.default_config['repo_icon'])
|
||||||
repodict['address'] = common.config['archive_url']
|
repodict['address'] = common.config['archive_url']
|
||||||
repodict['description'] = common.config['archive_description']
|
repodict['description'] = common.config['archive_description']
|
||||||
urlbasepath = os.path.basename(urllib.parse.urlparse(common.config['archive_url']).path)
|
urlbasepath = os.path.basename(urllib.parse.urlparse(common.config['archive_url']).path)
|
||||||
else:
|
else:
|
||||||
repodict['name'] = common.config['repo_name']
|
repodict['name'] = common.config['repo_name']
|
||||||
repodict['icon'] = os.path.basename(common.config['repo_icon'])
|
repodict['icon'] = common.config.get('repo_icon', common.default_config['repo_icon'])
|
||||||
repodict['address'] = common.config['repo_url']
|
repodict['address'] = common.config['repo_url']
|
||||||
repodict['description'] = common.config['repo_description']
|
repodict['description'] = common.config['repo_description']
|
||||||
urlbasepath = os.path.basename(urllib.parse.urlparse(common.config['repo_url']).path)
|
urlbasepath = os.path.basename(urllib.parse.urlparse(common.config['repo_url']).path)
|
||||||
@ -331,7 +331,7 @@ def make_v0(apps, apks, repodir, repodict, requestsdict, fdroid_signing_key_fing
|
|||||||
doc.appendChild(root)
|
doc.appendChild(root)
|
||||||
|
|
||||||
repoel = doc.createElement("repo")
|
repoel = doc.createElement("repo")
|
||||||
repoel.setAttribute("icon", os.path.basename(repodict['icon']))
|
repoel.setAttribute("icon", repodict['icon'])
|
||||||
if 'maxage' in repodict:
|
if 'maxage' in repodict:
|
||||||
repoel.setAttribute("maxage", str(repodict['maxage']))
|
repoel.setAttribute("maxage", str(repodict['maxage']))
|
||||||
repoel.setAttribute("name", repodict['name'])
|
repoel.setAttribute("name", repodict['name'])
|
||||||
@ -604,7 +604,7 @@ def make_v0(apps, apks, repodir, repodict, requestsdict, fdroid_signing_key_fing
|
|||||||
if os.path.exists(repo_icon):
|
if os.path.exists(repo_icon):
|
||||||
shutil.copyfile(common.config['repo_icon'], iconfilename)
|
shutil.copyfile(common.config['repo_icon'], iconfilename)
|
||||||
else:
|
else:
|
||||||
logging.warning(_('repo_icon %s does not exist, generating placeholder.')
|
logging.warning(_('repo_icon "repo/icons/%s" does not exist, generating placeholder.')
|
||||||
% repo_icon)
|
% repo_icon)
|
||||||
os.makedirs(os.path.dirname(iconfilename), exist_ok=True)
|
os.makedirs(os.path.dirname(iconfilename), exist_ok=True)
|
||||||
try:
|
try:
|
||||||
|
@ -120,8 +120,17 @@ def main():
|
|||||||
# 'metadata' and 'tmp' are created in fdroid
|
# 'metadata' and 'tmp' are created in fdroid
|
||||||
if not os.path.exists('repo'):
|
if not os.path.exists('repo'):
|
||||||
os.mkdir('repo')
|
os.mkdir('repo')
|
||||||
shutil.copy(os.path.join(examplesdir, 'fdroid-icon.png'), fdroiddir)
|
example_config_yml = os.path.join(examplesdir, 'config.yml')
|
||||||
shutil.copyfile(os.path.join(examplesdir, 'config.yml'), 'config.yml')
|
if os.path.exists(example_config_yml):
|
||||||
|
shutil.copyfile(example_config_yml, 'config.yml')
|
||||||
|
else:
|
||||||
|
from pkg_resources import get_distribution
|
||||||
|
versionstr = get_distribution('fdroidserver').version
|
||||||
|
if not versionstr:
|
||||||
|
versionstr = 'master'
|
||||||
|
with open('config.yml', 'w') as fp:
|
||||||
|
fp.write('# see https://gitlab.com/fdroid/fdroidserver/blob/'
|
||||||
|
+ versionstr + '/examples/config.yml\n')
|
||||||
os.chmod('config.yml', 0o0600)
|
os.chmod('config.yml', 0o0600)
|
||||||
# If android_home is None, test_config['sdk_path'] will be used and
|
# If android_home is None, test_config['sdk_path'] will be used and
|
||||||
# "$ANDROID_HOME" may be used if the env var is set up correctly.
|
# "$ANDROID_HOME" may be used if the env var is set up correctly.
|
||||||
|
@ -192,7 +192,7 @@ def main():
|
|||||||
readme = '''
|
readme = '''
|
||||||
# {repo_git_base}
|
# {repo_git_base}
|
||||||
|
|
||||||
[![{repo_url}](icon.png)]({repo_url})
|
[![{repo_url}]({repo_url}/icons/icon.png)]({repo_url})
|
||||||
|
|
||||||
Last updated: {date}'''.format(repo_git_base=repo_git_base,
|
Last updated: {date}'''.format(repo_git_base=repo_git_base,
|
||||||
repo_url=repo_url,
|
repo_url=repo_url,
|
||||||
@ -202,16 +202,8 @@ Last updated: {date}'''.format(repo_git_base=repo_git_base,
|
|||||||
mirror_git_repo.git.add(all=True)
|
mirror_git_repo.git.add(all=True)
|
||||||
mirror_git_repo.index.commit("update README")
|
mirror_git_repo.index.commit("update README")
|
||||||
|
|
||||||
icon_path = os.path.join(git_mirror_path, 'icon.png')
|
|
||||||
try:
|
|
||||||
import qrcode
|
|
||||||
qrcode.make(repo_url).save(icon_path)
|
|
||||||
except Exception:
|
|
||||||
exampleicon = os.path.join(common.get_examples_dir(), 'fdroid-icon.png')
|
|
||||||
shutil.copy(exampleicon, icon_path)
|
|
||||||
mirror_git_repo.git.add(all=True)
|
mirror_git_repo.git.add(all=True)
|
||||||
mirror_git_repo.index.commit("update repo/website icon")
|
mirror_git_repo.index.commit("update repo/website icon")
|
||||||
shutil.copy(icon_path, repo_basedir)
|
|
||||||
|
|
||||||
os.chdir(repo_basedir)
|
os.chdir(repo_basedir)
|
||||||
if os.path.isdir(git_mirror_repodir):
|
if os.path.isdir(git_mirror_repodir):
|
||||||
@ -234,11 +226,9 @@ Last updated: {date}'''.format(repo_git_base=repo_git_base,
|
|||||||
config += "identity_file = '%s'\n" % ssh_private_key_file
|
config += "identity_file = '%s'\n" % ssh_private_key_file
|
||||||
config += "repo_name = '%s'\n" % repo_git_base
|
config += "repo_name = '%s'\n" % repo_git_base
|
||||||
config += "repo_url = '%s'\n" % repo_url
|
config += "repo_url = '%s'\n" % repo_url
|
||||||
config += "repo_icon = 'icon.png'\n"
|
|
||||||
config += "repo_description = 'Nightly builds from %s'\n" % git_user_email
|
config += "repo_description = 'Nightly builds from %s'\n" % git_user_email
|
||||||
config += "archive_name = '%s'\n" % (repo_git_base + ' archive')
|
config += "archive_name = '%s'\n" % (repo_git_base + ' archive')
|
||||||
config += "archive_url = '%s'\n" % (repo_base + '/archive')
|
config += "archive_url = '%s'\n" % (repo_base + '/archive')
|
||||||
config += "archive_icon = 'icon.png'\n"
|
|
||||||
config += "archive_description = 'Old nightly builds that have been archived.'\n"
|
config += "archive_description = 'Old nightly builds that have been archived.'\n"
|
||||||
config += "archive_older = %i\n" % options.archive_older
|
config += "archive_older = %i\n" % options.archive_older
|
||||||
config += "servergitmirrors = '%s'\n" % servergitmirror
|
config += "servergitmirrors = '%s'\n" % servergitmirror
|
||||||
|
@ -2244,9 +2244,8 @@ def main():
|
|||||||
for k in ['repo_icon', 'archive_icon']:
|
for k in ['repo_icon', 'archive_icon']:
|
||||||
if k in config:
|
if k in config:
|
||||||
if not os.path.exists(config[k]):
|
if not os.path.exists(config[k]):
|
||||||
logging.critical(_('{name} "{path}" does not exist! Correct it in config.py.')
|
logging.warning(_('{name} "{section}/icons/{path}" does not exist! Check "config.yml".')
|
||||||
.format(name=k, path=config[k]))
|
.format(name=k, section=k.split('_')[0], path=config[k]))
|
||||||
sys.exit(1)
|
|
||||||
|
|
||||||
# if the user asks to create a keystore, do it now, reusing whatever it can
|
# if the user asks to create a keystore, do it now, reusing whatever it can
|
||||||
if options.create_key:
|
if options.create_key:
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
|
|
||||||
repo_url = "https://MyFirstFDroidRepo.org/fdroid/repo"
|
repo_url = "https://MyFirstFDroidRepo.org/fdroid/repo"
|
||||||
repo_name = "My First F-Droid Repo Demo"
|
repo_name = "My First F-Droid Repo Demo"
|
||||||
repo_icon = "fdroid-icon.png"
|
|
||||||
repo_description = """
|
repo_description = """
|
||||||
This is a repository of apps to be used with F-Droid. Applications in this
|
This is a repository of apps to be used with F-Droid. Applications in this
|
||||||
repository are either official binaries built by the original application
|
repository are either official binaries built by the original application
|
||||||
@ -12,7 +11,6 @@ using the tools on https://gitlab.com/u/fdroid.
|
|||||||
archive_older = 3
|
archive_older = 3
|
||||||
archive_url = "https://f-droid.org/archive"
|
archive_url = "https://f-droid.org/archive"
|
||||||
archive_name = "My First F-Droid Archive Demo"
|
archive_name = "My First F-Droid Archive Demo"
|
||||||
archive_icon = "fdroid-icon.png"
|
|
||||||
archive_description = """
|
archive_description = """
|
||||||
The repository of older versions of applications from the main demo repository.
|
The repository of older versions of applications from the main demo repository.
|
||||||
"""
|
"""
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
"timestamp": 1502845383782,
|
"timestamp": 1502845383782,
|
||||||
"version": 20000,
|
"version": 20000,
|
||||||
"name": "My First F-Droid Repo Demo",
|
"name": "My First F-Droid Repo Demo",
|
||||||
"icon": "fdroid-icon.png",
|
"icon": "icon.png",
|
||||||
"address": "https://MyFirstFDroidRepo.org/fdroid/repo",
|
"address": "https://MyFirstFDroidRepo.org/fdroid/repo",
|
||||||
"description": "This is a repository of apps to be used with F-Droid. Applications in this repository are either official binaries built by the original application developers, or are binaries built from source by the admin of f-droid.org using the tools on https://gitlab.com/u/fdroid.",
|
"description": "This is a repository of apps to be used with F-Droid. Applications in this repository are either official binaries built by the original application developers, or are binaries built from source by the admin of f-droid.org using the tools on https://gitlab.com/u/fdroid.",
|
||||||
"mirrors": [
|
"mirrors": [
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<fdroid>
|
<fdroid>
|
||||||
<repo icon="fdroid-icon.png" name="My First F-Droid Repo Demo" pubkey="308204e1308202c9a003020102020434597643300d06092a864886f70d01010b050030213110300e060355040b1307462d44726f6964310d300b06035504031304736f7661301e170d3136303931333230313930395a170d3434303133303230313930395a30213110300e060355040b1307462d44726f6964310d300b06035504031304736f766130820222300d06092a864886f70d01010105000382020f003082020a028202010086ef94b5aacf2ba4f38c875f4194b44f5644392e3715575d7c92828577e692c352b567172823851c8c72347fbc9d99684cd7ca3e1db3e4cca126382c53f2a5869fb4c19bdec989b2930501af3e758ff40588915fe96b10076ce3346a193a0277d79e83e30fd8657c20e35260dd085aa32eac7c4b85786ffefbf1555cafe2bc928443430cdbba48cfbe701e12ae86e676477932730d4fc7c00af820aef85038a5b4df084cf6470d110dc4c49ea1b749b80b34709d199b3db516b223625c5de4501e861f7d261b3838f8f616aa78831d618d41d25872dc810c9b2087b5a9e146ca95be740316dcdbcb77314e23ab87d4487913b800b1113c0603ea2294188b71d3e49875df097b56f9151211fc6832f9790c5c83d17481f14ad37915fd164f4fd713f6732a15f4245714b84cd665bdbd085660ea33ad7d7095dcc414f09e3903604a40facc2314a115c0045bb50e9df38efb57e1b8e7cc105f340a26eeb46aba0fa6672953eee7f1f92dcb408e561909bbd4bdf4a4948c4d57c467d21aa238c34ba43be050398be963191fa2b49828bc1e4eeed224b40dbe9dc3e570890a71a974a2f4527edb1b07105071755105edcb2af2f269facfb89180903a572a99b46456e80d4a01685a80b233278805f2c876678e731f4ec4f52075aeef6b2b023efbb8a3637ef507c4c37c27e428152ec1817fcba640ad601cb09f72f0fbe2d274a2410203010001a321301f301d0603551d0e04160414c28bf33dd5a9a17338e5b1d1a6edd8c7d141ed0b300d06092a864886f70d01010b0500038202010084e20458b2aafd7fc27146b0986f9324f4260f244920417a77c9bf15e2e2d22d2725bdd8093ec261c3779c3ca03312516506f9410075b90595b41345956d8eb2786fb5994f195611382c2b99dba13381b0100a30bc9e6e47248bf4325e2f6eec9d789216dc7536e753bf1f4be603d9fa2e6f5e192b4eb988b8cdb0bb1e8668a9225426f7d4636479f73ed24ad1d2657c31e63c93d9679b9080171b3bd1bf10a3b92b80bd790fbf62d3644900cd08eae8b9bf9c2567be98dc8cdd2ae19a8d57a3e3e2de899f81f1279f578989e6af906f80c8c2b67651730ee7e568c1af5bcb845b6d685dc55332a9984aeceaea3b7e883447edf1c76b155d95253e39b9710eaa22efa6c81468829702b5dce7126538f3ca70c2f0ad9a5795435fdb1f715f20d60359ef9a9926c7050116e802df651727447848827815f70bd82af3cedd08783156102d2d8ce995c4c43b8e47e91a3e6927f3505a5d395e6bebb84542c570903eeab4382a1c2151f1471c7a06a34dc4d268d8fa72e93bdcd2dccc4302ecac47b9e7e3d8bc9b46d21cd097874a24d529548018dc190ff568c6aa428f0a5eedff1a347730931c74f19277538e49647a4ad7254f4c1ec7d4da12cce9e1fad9607534e66ab40a56b473d9d7e3d563fd03cad2052bad365c5a29f8ae54f09b60dbca3ea768d7767cbe1c133ca08ce725c1c1370f4aab8e5b6e286f52dc0be8d0982b5a" timestamp="1480431575" url="https://MyFirstFDroidRepo.org/fdroid/repo" version="20000">
|
<repo icon="icon.png" name="My First F-Droid Repo Demo" pubkey="308204e1308202c9a003020102020434597643300d06092a864886f70d01010b050030213110300e060355040b1307462d44726f6964310d300b06035504031304736f7661301e170d3136303931333230313930395a170d3434303133303230313930395a30213110300e060355040b1307462d44726f6964310d300b06035504031304736f766130820222300d06092a864886f70d01010105000382020f003082020a028202010086ef94b5aacf2ba4f38c875f4194b44f5644392e3715575d7c92828577e692c352b567172823851c8c72347fbc9d99684cd7ca3e1db3e4cca126382c53f2a5869fb4c19bdec989b2930501af3e758ff40588915fe96b10076ce3346a193a0277d79e83e30fd8657c20e35260dd085aa32eac7c4b85786ffefbf1555cafe2bc928443430cdbba48cfbe701e12ae86e676477932730d4fc7c00af820aef85038a5b4df084cf6470d110dc4c49ea1b749b80b34709d199b3db516b223625c5de4501e861f7d261b3838f8f616aa78831d618d41d25872dc810c9b2087b5a9e146ca95be740316dcdbcb77314e23ab87d4487913b800b1113c0603ea2294188b71d3e49875df097b56f9151211fc6832f9790c5c83d17481f14ad37915fd164f4fd713f6732a15f4245714b84cd665bdbd085660ea33ad7d7095dcc414f09e3903604a40facc2314a115c0045bb50e9df38efb57e1b8e7cc105f340a26eeb46aba0fa6672953eee7f1f92dcb408e561909bbd4bdf4a4948c4d57c467d21aa238c34ba43be050398be963191fa2b49828bc1e4eeed224b40dbe9dc3e570890a71a974a2f4527edb1b07105071755105edcb2af2f269facfb89180903a572a99b46456e80d4a01685a80b233278805f2c876678e731f4ec4f52075aeef6b2b023efbb8a3637ef507c4c37c27e428152ec1817fcba640ad601cb09f72f0fbe2d274a2410203010001a321301f301d0603551d0e04160414c28bf33dd5a9a17338e5b1d1a6edd8c7d141ed0b300d06092a864886f70d01010b0500038202010084e20458b2aafd7fc27146b0986f9324f4260f244920417a77c9bf15e2e2d22d2725bdd8093ec261c3779c3ca03312516506f9410075b90595b41345956d8eb2786fb5994f195611382c2b99dba13381b0100a30bc9e6e47248bf4325e2f6eec9d789216dc7536e753bf1f4be603d9fa2e6f5e192b4eb988b8cdb0bb1e8668a9225426f7d4636479f73ed24ad1d2657c31e63c93d9679b9080171b3bd1bf10a3b92b80bd790fbf62d3644900cd08eae8b9bf9c2567be98dc8cdd2ae19a8d57a3e3e2de899f81f1279f578989e6af906f80c8c2b67651730ee7e568c1af5bcb845b6d685dc55332a9984aeceaea3b7e883447edf1c76b155d95253e39b9710eaa22efa6c81468829702b5dce7126538f3ca70c2f0ad9a5795435fdb1f715f20d60359ef9a9926c7050116e802df651727447848827815f70bd82af3cedd08783156102d2d8ce995c4c43b8e47e91a3e6927f3505a5d395e6bebb84542c570903eeab4382a1c2151f1471c7a06a34dc4d268d8fa72e93bdcd2dccc4302ecac47b9e7e3d8bc9b46d21cd097874a24d529548018dc190ff568c6aa428f0a5eedff1a347730931c74f19277538e49647a4ad7254f4c1ec7d4da12cce9e1fad9607534e66ab40a56b473d9d7e3d563fd03cad2052bad365c5a29f8ae54f09b60dbca3ea768d7767cbe1c133ca08ce725c1c1370f4aab8e5b6e286f52dc0be8d0982b5a" timestamp="1480431575" url="https://MyFirstFDroidRepo.org/fdroid/repo" version="20000">
|
||||||
<description>This is a repository of apps to be used with F-Droid. Applications in this repository are either official binaries built by the original application developers, or are binaries built from source by the admin of f-droid.org using the tools on https://gitlab.com/u/fdroid.</description>
|
<description>This is a repository of apps to be used with F-Droid. Applications in this repository are either official binaries built by the original application developers, or are binaries built from source by the admin of f-droid.org using the tools on https://gitlab.com/u/fdroid.</description>
|
||||||
<mirror>http://foobarfoobarfoobar.onion/fdroid/repo</mirror>
|
<mirror>http://foobarfoobarfoobar.onion/fdroid/repo</mirror>
|
||||||
<mirror>https://foo.bar/fdroid/repo</mirror>
|
<mirror>https://foo.bar/fdroid/repo</mirror>
|
||||||
|
@ -228,7 +228,6 @@ echo_header 'copy git import and run "fdroid scanner" on it'
|
|||||||
|
|
||||||
REPOROOT=`create_test_dir`
|
REPOROOT=`create_test_dir`
|
||||||
cd $REPOROOT
|
cd $REPOROOT
|
||||||
cp $WORKSPACE/examples/fdroid-icon.png $REPOROOT/
|
|
||||||
mkdir metadata
|
mkdir metadata
|
||||||
echo "AutoName: Just A Test" > metadata/org.fdroid.ci.test.app.yml
|
echo "AutoName: Just A Test" > metadata/org.fdroid.ci.test.app.yml
|
||||||
echo "WebSite: " >> metadata/org.fdroid.ci.test.app.yml
|
echo "WebSite: " >> metadata/org.fdroid.ci.test.app.yml
|
||||||
@ -942,7 +941,6 @@ echo_header "setup a new repo manually and generate a keystore"
|
|||||||
REPOROOT=`create_test_dir`
|
REPOROOT=`create_test_dir`
|
||||||
KEYSTORE=$REPOROOT/keystore.p12
|
KEYSTORE=$REPOROOT/keystore.p12
|
||||||
cd $REPOROOT
|
cd $REPOROOT
|
||||||
cp $WORKSPACE/examples/fdroid-icon.png $REPOROOT/
|
|
||||||
! test -e $KEYSTORE
|
! test -e $KEYSTORE
|
||||||
set +e
|
set +e
|
||||||
$fdroid update
|
$fdroid update
|
||||||
|
Loading…
Reference in New Issue
Block a user