Make Ubuntu desktop a better platform for App Developers
Ma Xiaojun
damage3025 at gmail.com
Tue Apr 9 04:01:38 UTC 2013
( Already posted in ubuntu-app-devel, I'm not sure how popular it is,
though. Sorry for people receiving duplicates. )
As I checked: http://developer.ubuntu.com/publish/my-apps-packages/
Proprietary apps get packaging service from Canonical, so far so good.
But for open source apps, the authors have to provide a working PPA.
Let's assume the App is written in C/GTK+ or C++/gtkmm since
* These should be popular options
* Python/PyGObject is covered by Quickly
So how to develop the the app?
1. Use whatever text editor and use Autotools as the build system,
maintain autofoo manually.
2. Use Anjuta; Autotools is wrapped by Aujuta
3. Use IDEs like Eclipse CDT, Code::Blocks but the build system is different.
We should take great care of third option since Android, iOS, Windows
development all happen in IDEs.
Let's forget about the issue whether Eclipse CDT/Code::Blocks has good
support for GTK+/gtkmm.
Say the app works on the developer's local machine now, how to package it?
Well, one can check Debian New Maintainers' Guide but it is painful to
read and it aims at a different audience.
Autotools should be better supported by whatever packaging helper
tools, but I don't know any documentation on how to make Autotools
built app /opt friendly.
How to package an app built by custom build system can be more painful.
######
Actually I find that binary packing seem to be much less painful,
there is nothing superfluous in binary packaging.
http://tldp.org/HOWTO/html_single/Debian-Binary-Package-Building-HOWTO/
But binary packaging works better for proprietary apps, since source
code is not available anyway.
For open source apps, we need to make sure that the source code does
produce the binary, right?
To solve the issue for open source apps, either Canonical accept
source code of open source apps and help packaging also.
Another way is that open source apps can be submitted binary only,
given a way of obtaining source is given. The source can be fake but
there doesn't seem to be a good motivation to do so. And all people
including users should be welcomed to report apps that are fake open
source.
More information about the ubuntu-desktop
mailing list