Clone this wiki locally
The Snappy Playpen is a fun and research project, but we want the world to benefit from our work. What we want to achieve with each of the projects in the repo is that we get the snap to production quality and offer it to the projects in question to be included in their source tree. This will make the upstreams' lives a lot easier. Getting their app out to millions of users is just a matter of running
Tracking our work
|2048||dholbach||blocked on desktop content snap||Needs to be slimmed down|
|galculator||blocked on desktop content snap||Needs to be slimmed down|
|leafpad||dholbach||blocked on desktop content snap||Needs to be slimmed down|
|ubuntu-clock-app||dholbach||can't use new launcher yet||Clock tree|
Use these statuses in the table:
||needs work (new interface needed, or anything else is broken)|
Whichever status you pick, make sure you add a link to document what's required. If there's multiple bugs in question, make sure you list all of them. We want to use this list to make sure we get common issues fixed together with the
snap-confine developers. Have a look at our list of known issues to see if your issue has maybe been filed already.
Forwarding your work upstream
We as a team should make sure that if we submit our work upstream that it is production quality, that stuff just works and we can be proud of what we achieved.
This includes things such as
- all features work,
- the upstream
.desktopfile is used,
- the icon is present.
How to submit
Others choose to have their own web sites or are part of bigger projects, such as GNOME, KDE, XFCE, LXDE or others.
The best way is usually to propose this as a pull request, merge proposal or whichever other way the project in question uses to accept patches. If it's not immediately clear from looking at their developer docs, ask some of the project's members first.
Getting in touch
Maintain the contact with the upstream. It's great if you can be responsive in the conversation, even if the upstream is not. Be friendly, help fix issues, get help if necessary. If an upstream doesn't react for a longer period of time, you could try asking in their IRC channel (or whichever other real-time chat they use) or on their mailing list (or forum). Again: be friendly, if the upstream is not interested, that's their choice. They all have been maintaining their software for years and might have more pressing things on their agenda.
When you write the inclusion request, you should make sure to refer to http://snapcraft.io/ and talk about the advantages snaps have. Here are a few suggestions:
- Snaps can be installed by millions of users: Ubuntu 16.04 LTS (by default), other distros have
snapdin their repositories already.
- Necessary libraries and dependencies can be bundled to give maximum amount of control over the stack.
.snapcan be built by just running
snapcraft, publishing it to the store is just a matter of
snapcraft upload <.snap file>.
- The store offers multiple release channels (
stable, which is the default and
- Services like Launchpad offer building of snaps from your git tree (current state of Launchpad in this regard).
One thing you might also want to mention is the publishing procedure and app name registration procedure. Particularly the latter is important for upstreams to have control over publishing their app.