[Spice-devel] [RFC spice-gtk] Add flatpak builder manifest file for spicy

Pavel Grunt pgrunt at redhat.com
Fri Jul 21 08:42:03 UTC 2017


On Fri, 2017-07-21 at 10:29 +0200, Christophe Fergeau wrote:
> Hey,
> 
> On Thu, Jul 20, 2017 at 10:49:48PM +0200, Pavel Grunt wrote:
> > To give example for creating flatpaks depending on spice-gtk
> > 
> 
> Yup, good idea, just a few minor comments:
> 
> > How to use to build and run the flatpak:
> 
> Maybe mention that the gnome 3.24 SDK has to be installed?
ok
> 
> >  $ flatpak-builder spicy org.spicespace.spicy.json
> 
> I'd use data/org.spicespace.spicy.json
ok

btw I noticed that some projects put this file into the project's root
directory, some have flatpak subdirectory. I guess data/ is fine for us.

> Any reason for using org.spicespace rather than org.spice-space?
I know, apparently it is not allowed to use '-' in the name

error: 'org.spice-space.spicy' is not a valid application name: Only last name
segment can contain -

it is indeed an interesting requirement 
>  I think
> we usually use the latter as our domain name, even though spicespace is
> an alias to it.
> 
> >  $ flatpak build-export repo spicy
> >  $ flatpak --user remote-add --no-gpg-verify --if-not-exists spice-repo repo
> >  $ flatpak --user install spice-repo org.spicespace.spicy
> >  $ flatpak run org.spicespace.spicy
> > ---
> >  data/org.spicespace.spicy.json | 72
> > ++++++++++++++++++++++++++++++++++++++++++
> >  1 file changed, 72 insertions(+)
> >  create mode 100644 data/org.spicespace.spicy.json
> > 
> > diff --git a/data/org.spicespace.spicy.json b/data/org.spicespace.spicy.json
> > new file mode 100644
> > index 0000000..e384aff
> > --- /dev/null
> > +++ b/data/org.spicespace.spicy.json
> > @@ -0,0 +1,72 @@
> > +{
> > +    "app-id": "org.spicespace.spicy",
> > +    "runtime": "org.gnome.Platform",
> > +    "runtime-version": "3.24",
> > +    "sdk": "org.gnome.Sdk",
> > +    "command": "spicy",
> > +    "tags": ["devel", "development", "nightly"],
> > +        "finish-args": [
> > +        "--share=ipc", "--socket=x11",
> > +        "--socket=wayland",
> > +        "--filesystem=xdg-pictures",
> > +        "--share=network"
> > +    ],
> > +    "modules": [
> > +        {
> > +            "name": "python-six",
> > +            "buildsystem": "simple",
> > +            "build-commands": [
> > +                "pip3 install --target=/app six-1.10.0-py2.py3-none-
> > any.whl"
> > +            ],
> > +            "sources": [
> > +                {
> > +                   "type": "file",
> > +                   "url": "https://pypi.python.org/packages/c8/0a/b6723e1bc
> > 4c516cb687841499455a8505b44607ab535be01091c0f24f079/six-1.10.0-py2.py3-none-
> > any.whl#md5=3ab558cf5d4f7a72611d59a81a315dc8",
> > +                   "sha256":
> > "0ff78c403d9bccf5a425a6d31a12aa6b47f1c21ca4dc2573a7e2f32a97335eb1"
> > +                }
> > +            ]
> > +        },
> > +        {
> > +            "name": "pyparsing",
> > +            "buildsystem": "simple",
> > +            "build-commands": [
> > +                "pip3 install --target=/app pyparsing-2.0.3-py2.py3-none-
> > any.whl"
> > +            ],
> > +            "sources": [
> > +                {
> > +                    "type": "file",
> > +                    "url": "https://pypi.python.org/packages/8f/f4/3a70b5e5
> > b865b1ec45fe48dc5a57cd4facb5c7bd80e5cb1255c362732e81/pyparsing-2.0.3-
> > py2.py3-none-any.whl#md5=4c16ef222caea2e5de741ae503aae652",
> > +                    "sha256":
> > "a9c896bab06dbf3759ad5fb63cfdb3777191e2c4ae640e6dd69ed37530f6ba56"
> > +                }
> > +            ]
> > +        },
> > +        {
> > +            "builddir": true,
> > +            "name": "spice-protocol",
> > +            "sources": [
> > +                {
> > +                    "type": "git",
> > +                    "url": "git://anongit.freedesktop.org/spice/spice-
> > protocol"
> > +                }
> > +            ]
> > +        },
> > +        {
> > +            "builddir": true,
> > +            "name": "spice-gtk",
> > +            "build-options": {
> > +                "env": {
> > +                    "PERL5LIB": "/app/lib/perl5",
> > +                    "PYTHONPATH": "/app"
> > +                }
> 
> Is that really required? Shouldn't flatpak-builder do it for us?

perl should be dropped, PYTHON path is required, otherwise it fails to find the
installed modules. It is possible that I install them in a wrong way.

Thanks for the comments,
Pavel

> 
> Christophe


More information about the Spice-devel mailing list