Skip to content
Snippets Groups Projects
README 2.12 KiB
Newer Older
Simon McVittie's avatar
Simon McVittie committed
flatdeb
=======

flatdeb is a proof of concept for building Flatpak runtimes and apps
from Debian packages.

Walkthrough
-----------

On a Debian 10 'buster' machine:

    apt install \
    binutils \
    debootstrap \
    debos \
    dpkg-dev \
    flatpak \
    flatpak-builder \
    ostree \
    python3 \
    python3-debian \
    python3-gi \
    python3-yaml \
    systemd-container \
    time \
    ${NULL}

(Or use Debian 9 'stretch' and get flatpak, flatpak-builder and ostree
from stretch-backports, and install
[fakemachine](https://github.com/go-debos/fakemachine)
and [debos](https://github.com/go-debos/debos) from upstream source code.)
Simon McVittie's avatar
Simon McVittie committed
Also edit org.debian.packages.openarena.yaml to specify where you have
put local clones of ioquake3 and openarena if you can't (or don't
want to) clone them via https.
You will probably want to use a caching proxy such as apt-cacher-ng to
download `.deb` packages, which you can do by prefixing all the commands
below with `env http_proxy=http://192.168.122.1:3142` or similar.

Simon McVittie's avatar
Simon McVittie committed
Finally, put a copy of debian-archive-keyring.gpg in this directory.

Then you can run:
    ./run.py --suite=stretch --arch=amd64 base
    ./run.py --suite=stretch --arch=amd64 runtimes \
        runtimes/net.debian.flatpak.Base.yaml
    ./run.py --suite=stretch --arch=amd64 runtimes \
        runtimes/net.debian.flatpak.Games.yaml
    ./run.py --suite=stretch --arch=amd64 app \
        apps/org.debian.packages.hello.yaml
    ./run.py --suite=stretch --arch=amd64 app \
        apps/org.debian.packages.openarena.yaml
    ./run.py --suite=stretch --arch=amd64 app \
        apps/org.debian.packages.mesa_utils.yaml
To use the ./run.py app subcommand, you must include python3 and python3-debian
in the SDK.

On the same machine, or a test machine onto which you have copied
`$HOME/.cache/flatdeb/repo` with `rsync` or similar:

    flatpak --user remote-add --no-gpg-verify flatdeb $HOME/.cache/flatdeb/repo
Simon McVittie's avatar
Simon McVittie committed
    flatpak --user install flatdeb org.debian.packages.hello
    flatpak run org.debian.packages.hello
Simon McVittie's avatar
Simon McVittie committed
    flatpak --user install flatdeb org.debian.packages.openarena
    flatpak run org.debian.packages.openarena