So, Debian is still trying to decide if it likes upstream developers including debian directories in their source. Unlike the rpm world, where including a spec file in the tarball is expected, there has historically been some dislike about this being done on the deb side, mostly because of tool limitations.

In the meantime, an interesting thing is happening in the wider world. Developing "apps" for mobile phones is appealing to lots of developers. And in an inversion of the linux distro status quo, part of making such an "app" is packaging it. Typically, for linux-based phones, into a .deb package, or something very close to it.

  • For Android, there is apparently a aapt tool that is used to generate .apk files. These are a zip file with some metadata.
  • For the Palm Pre, there is a palm-install command that is run in Windows, and generates a control file and builds a '.ipk' that is really just a (limited) .deb.
  • For the Nokia N900, this describes cargo-culting debian/rules, debian/control, and debian/changelog files to build a standard .deb.

Since N900 apps can fairly easily be ported to/from desktop linux, I won't be suprised if debian directories start popping up in lots more upstream sources. Like it or not.

Some libraries and applications in Maemo
Some libraries and applications in Maemo have control files which still contain upstream maintainers. This shows how easy it is to bring your average debian app to Maemo.
Comment by jeremiahfoster []
package format 3.0
It might be off-topic, but I believe most of the limitations would be easily solved when 3.0 formats are accepted into the archive..
Comment by id []
Cydia on the iPod Touch works fine; Cydia uses reverse DNS package names to ward off collisions; the main repo comes with keys and links to a wide "federation" of repositories that would probably would drive any Debian admin crazy. The package dependencies are mostly very shallow graphs, and then there are of course tons of themes and things like that that don't carry executables.
Comment by
Yes, cydia does use inverse-hostname package names, which is an interesting idea. Unfortunately the repository has plenty of com.example.* packages.
Comment by jmtd []