RANT: Flatpaks suck to implement (well poorly documented in a holistic way really)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



So with Python 2 being fully removed (more or less) with Fedora 32, Fedora 31 is the last version that will contain Chirp, which is an important and the ONLY tool for Amateur Radio operators to program radios in linux. 

Don't get me started on upstreams lack of interest on correcting the issue...

So I decided to look at flatpaks as a method of making it available post Fedora 31.

1. The documentation sucks. You see code snippets everywhere and it's not clear what section it belongs in the json file, which leads me to #2.

2. JSON may be fine for machine readability but it SUCKS for human readability. Both brackets and braces! Do I need a "," after that one? All I know is I screw around with it until vim doesn't show me any more red highlights. 

Yes, you can do YAML instead, which is FAR more readable, but MOST of the examples are in JSON. 

3. I understand the names (app-id) need to be unique, but how about some better guidance on how to name them!

4. Examples show you how to execute "pip..." to install python dependencies, but they don't show you what you need to include SDK wise so a python interpreter is available! I've googles references that you need the correct SDK, but "flatpak search" doesn't return those. 

So I know I need the following (and their dependencies):
$ rpm -q --requires chirp | grep ^py
pygtk2
python(abi) = 2.7
python2-libxml2
python2dist(pyserial)
python2dist(suds-jurko)
python2dist(future)

So how do I get a functional python2 interpreter and access to pip?

I've gotten this far and pretty much stuck at this point:


    "app-id": "org.flatpak.chirp",
    "runtime": "org.freedesktop.Platform",
    "runtime-version": "19.08",
    "sdk": "org.freedesktop.Sdk",
    "command": "chirpw",
    "modules": [
        {
            "name": "chirp",
            "buildsystem": "simple",
            "build-commands": [
                "pip install --prefix=/app pygtk2 future libxml2 pyserial suds-jurko",
                "/usr/bin/python2 setup.py  build --executable='/usr/bin/python2 -s'",
                "mkdir /app/share/applications",
                "cp org.flatpak.chirp.desktop /app/share/applications/"
            ],
            "sources": [
                {
                    "type": "archive",
                    "url": "http://trac.chirp.danplanet.com/chirp_daily/daily-20200409/chirp-daily-20200409.tar.gz",
                    "sha256": "98923aeece4c3e3b0ab9eb21e9de174104ec26e75be9583abeb3dcdac5e3f09b"
                }
            ]
        }
    ],
    "finish-args": [
        "--socket=x11",
        "--socket=wayland",
        "--share=network"
    ]
}


If I had to use JSON for packing for Fedora I think I would give up and just be an end user again...

Thanks,
Richard

_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux