Make v2 localized config optional

Fixes:

Traceback (most recent call last):
  File "/home/fdroid/fdroidserver/fdroid", line 22, in <module>
    fdroidserver.__main__.main()
  File "/home/fdroid/fdroidserver/fdroidserver/__main__.py", line 222, in main
    raise e
  File "/home/fdroid/fdroidserver/fdroidserver/__main__.py", line 203, in main
    mod.main()
  File "/home/fdroid/fdroidserver/fdroidserver/update.py", line 2774, in main
    fdroidserver.index.make(archived_apps, archapks, repodirs[1], True)
  File "/home/fdroid/fdroidserver/fdroidserver/index.py", line 132, in make
    make_v2(
  File "/home/fdroid/fdroidserver/fdroidserver/index.py", line 728, in make_v2
    output["repo"] = v2_repo(repodict, repodir, archive)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/fdroid/fdroidserver/fdroidserver/index.py", line 686, in v2_repo
    repo["icon"] = config["archive" if archive else "repo"]["icon"]
                   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^
KeyError: 'icon'
This commit is contained in:
Jochen Sprickerhof 2025-04-28 08:38:54 +02:00
parent 561da8f7d1
commit b83c1aace3
No known key found for this signature in database
GPG key ID: 5BFFDCC258E69433

View file

@ -681,9 +681,13 @@ def v2_repo(repodict, repodir, archive):
config = common.load_localized_config(CONFIG_CONFIG_NAME, repodir) config = common.load_localized_config(CONFIG_CONFIG_NAME, repodir)
if config: if config:
repo["name"] = config["archive" if archive else "repo"]["name"] localized_config = config["archive" if archive else "repo"]
repo["description"] = config["archive" if archive else "repo"]["description"] if "name" in localized_config:
repo["icon"] = config["archive" if archive else "repo"]["icon"] repo["name"] = localized_config["name"]
if "description" in localized_config:
repo["description"] = localized_config["description"]
if "icon" in localized_config:
repo["icon"] = localized_config["icon"]
repo["address"] = repodict["address"] repo["address"] = repodict["address"]
if "mirrors" in repodict: if "mirrors" in repodict: