moment/packaging/flatpak/collector.py

33 lines
924 B
Python

import json
import yaml
with open("mirage.flatpak.base.yaml") as f:
base = yaml.load(f, Loader=yaml.FullLoader)
with open("flatpak-pip.json") as f:
modules = json.load(f)["modules"]
# set some modules in front as dependencies and dropping matrix-nio
# which is declared separately
front = []
back = []
for m in modules:
n = m["name"]
if n.startswith("python3-") and \
n[len("python3-"):] in ["cffi", "importlib-metadata", "multidict", "pytest-runner", "setuptools-scm"]:
front.append(m)
else:
back.append(m)
# replace placeholder with modules
phold = None
for i in range(len(base["modules"])):
if base["modules"][i]["name"] == "PLACEHOLDER PYTHON DEPENDENCIES":
phold = i
break
base["modules"] = base["modules"][:i] + front + back + base["modules"][i+1:]
with open("mirage.flatpak.yaml", "w") as f:
f.write(yaml.dump(base, sort_keys=False, indent=2))