Álex R. Mosteo writes: >> There are lots of tutorials for packaging beginners, but usually these >> stick to the author's workflow of choice, and I haven't found a clear >> comparison between alternatives. Also some of these are, while seemingly >> still valid, possibly somewhat outdated in regard to recent developments. >> E.g. I see different compat values (which everybody is happy to dismiss as >> "you don't need to understand this yet") that tell me that I might be >> reading stale information. > > OK, a follow-up. I had missed the obvious "packaging-tutorial" package, > which has helped me a lot to understand the status of affairs. It says that > dh is the safest way so it narrows down a bit the priority of my reading. > > Nonetheless, any insights, particular to Ada or not, that you might want to > share are welcome.
The need for a tutorial specific to Ada has been identified several times in the past. The reasons why such a tutorial does not exist yet include: - lack of time on everyone's part - the "recommended" packaging scheme is a moving target - we'd feel forced to upgrade all existing packages to this "standard" i.e. extra packaging work When I started packaging in 2003, dh did not exist and I used the predefined dh_make templates of the era as a starting point. After some time, as I gained better understanding of each command, I started removing all unnecessary bits such as the autotools; I even went so far as to patch some upstream sources not to require autotools anymore. The result is that each package that I made is pretty minimal (that does not mean small), hand-written and there is no "standard template". More recently, Nicolas Boulenguez revisited several of my packages and invented the ALDH system, which I think is the current state of the art. It is clean, maintainable and uses "dh" as recommended by recent versions of debhelper. The drawback of Nicolas' system is that it requires good knowledge of Makefile syntax, as it uses GNU Make macros. Also, it only uses recent debhelper compatibility levels; this may make it more difficult to backport packages to old stable versions of Debian, should the need arise. A note about debian/compat: it contains the "debhelper compatibility level", a version number (in ASCII) that all debhelper commands read before anything. The value of this version number affects the behaviour of some commands. For details, see the man page, debhelper(7). From time to time, the minimum value that debian/compat can contain is incremented by a new version of debhelper, forcing all packages using debhelper to upgrade. The values currently accepted by debhelper are 5..9 (8 is recommended and 9 is experimental ATM). Nicolas, would you have time to write at least a one-page description of ALDH for the novice packager, as an appendix in the Debian Policy for Ada? That would make it possible for more packagers to consider using it the next time they upgrade their packaging scripts. In the mean time, I concur with Xavier: looking at small, simple existing packages is the best way to learn. -- Ludovic Brenta. -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected] Archive: http://lists.debian.org/[email protected]
