# Flatpak packaging ## Manifest Flatpak packaging manifest is generated by running ``` packaging/flatpak/generate-flatpak-script.sh ``` from the root of the project. This script requires `libolm` to be installed on the development PC as it will create Python virtual environment and install all the requirements in it. Note that the requirements are taken from `packaging/flatpak/requirements.flatpak.txt` and the ones specified in the project' root `requirements.txt`. At the moment of writing, included packages are `multidict` with the version that installs in Flatpak (newer versions seem to have some issues), `uvloop`, and few packages required for building other packages. In addition, the list of ignored packages is in `packaging/flatpak/generate-flatpak-script.sh`. Flatpak manifest is created automatically by `generate-flatpak-script.sh` using `mirage.flatpak.base.yaml` and replacing the marked placeholder with Python module dependencies. ## Building Flatpak To build flatpak package, you will need flatpak, runtime and SDK (KDE 5.12), and flatpak-builder. To build, run ``` flatpak-builder --repo=../flatpak-repo --force-clean flatpak-build packaging/flatpak/mirage.flatpak.yaml ```