← Back to team overview

ubuntu-phone team mailing list archive

Re: How to make deb package?

 

On 04/09/2013 06:01 PM, Barry Warsaw wrote:
On Apr 09, 2013, at 12:37 PM, Ma Xiaojun wrote:

I guess we should not require painful DEB packaging any more, or we
wrapper it nicely.
It's certainly true that learning how to package for Debian/Ubuntu is a big
hurdle for developers.  It seemed a big mystery to me when I started to learn
how to do it.  Now that I know how to package and have helped others get
started, I'm even more convinced that it's too high of a hurdle to require of
developers.

Learning how to package the Debian way is worth the investment if you are an
Ubuntu and/or Debian developer (e.g. a core-dev, PPU, or DD), but IMO it's too
much if you just want to build apps for the platform.

-Barry



Actually it is not that difficult and we have good tools. The pkgme, pbuilder and the dozen of wrapper apps make packaging simple.

But regardless how good wrappers and how well automated toolchain we invent to make it even more simple the developer still need to have the information for the control file and at least have some idea what license is the best for the application.

With 5-6 commands most of the projects can be packaged and cross built.

The real problem is that all these tools and toolchains can be configured in each and every development environment differently ... a clean installation of the pbuilder/cowbuilder-dist is easy to use and we can offer a cross compiler and packaging solution based on these tools. Bit what if the developer has already a working pbuilder installed and custom configured on the development environment? How to inject our tools to that? The same way setting up a chroot is easy, but how to maintain and troubleshoot it?

These hiding landmines are a lot. That is why creating wrapper tools and hide these packaging and build tools behind a smart IDE is not something what just works.


That is why I came to the conclusion that if a developer is working on a project what needs C++, native Qt, platform APIs, crosscompilation then the developer need to understand the Ubuntu/Debian packaging at least on the basic level.

For QML/JS apps we will offer a fully automatic and bullet proof packaging solution. But for that the crossbuilder chroot with all the debian/control magic is clearly overkill.

bzoltan



Follow ups

References