Re: Novice to Debian packaging
Ludovic Brenta wrote:
> Á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
Understandable.
> 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.
Then I conclude that either hand-written, if the package is simple enough or
needs good back-compatibility, or the ALDH system are the best approaches at
the moment.
> 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.
Thanks both of you for your comments. I hope to be back soon with my first
package at the ready.
Reply to: