[Soc-coordination] libdebctrl progress report, Week 6

Jonathan Yu jonathan.i.yu at gmail.com
Sat Jul 4 18:17:41 UTC 2009


Hi everyone:

It's really nice to see so much progress on all of your other
projects, they're looking very neat and I look forward to trying some
of them out when they're ready (or when I have some time).

So I've been writing a lot of documentation for libdebctrl, and I
think I have the important parts of code covered. I spent a day or two
getting familiar with Doxygen; it's a very nice package but sometimes
hard to use, and really not as flexible as I'd like. The documentation
wasn't as easy to write as I hoped, particularly because it was
somewhat difficult to explain things, and the doxygen format didn't
let me include direct text examples in a very nice way. I'm planning
to write some examples as .txt files and include them using
\verbinclude, but I'll have to look into that later.

I've run into a challenge of trying to write the library in an
object-oriented manner, but without the benefit of an object-oriented
language. It's been a bit painful to do, particularly since there is
no notion of namespaces I could use to separate method names and
things. I'm hoping that I can create a C++ wrapper which will be
cleaner to use than the C version.

The C version is still necessary because it's so much easier to link
with other languages like Perl.

Actually, you can give libdebctrl a spin by looking at the latest
branch, version 0.3:
svn export svn://svn.debian.org/libdebctrl/branches/0.3

There are still two outstanding challenges I need to figure out,
particularly because there are so many corner cases in Debian. Along
the way, I got some wording changes pushed into Debian policy and have
developed a bit of rapport with the team - I'd like to be more
involved with the Debian Policy Team in the future.

I've been discussing things on the Debian Policy and Debian Developers
list, and I want to make sure that my package is appropriately
future-proofed for significant changes anticipated with multiarch
(that is, doing something like installing i386 binaries on an amd64
machine). As this sort of thing directly affects my project, I've been
trying to follow the discussion closely -- so far libdebctrl is on
good ground with respect to the current "plan":
https://wiki.ubuntu.com/MultiarchSpec

I've also compiled libsmokeqt4 on my machine so I can continue
developing perlqt4 without having to reinstall Ubuntu (since the smoke
version I need doesn't exist in Debian yet). Turns out that I didn't
need to download the entire KDE/4.3 branch, and that I could have just
compiled the kdebindings part of it. But anyway, that's done with now.
(The svn export took an entire night!)

By the way, I'll be giving a talk on packaging Perl modules for
Debian/Ubuntu as part of the Ubuntu Packaging Training, so if that's
something you're interested in, see:
https://wiki.ubuntu.com/Packaging/Training -- I hope to see some of
you there! If you have questions about packaging Perl modules for
either Debian or Ubuntu, please join us on July 23rd and ask. If you
are unable to make the meeting, we're looking at running a separate
Q&A session during the Ubuntu Developer Week (Aug 31 - Sep 4)

Oh, and on a sort-of-related note, if you come across any Perl modules
that you want to use but that are not packaged in Debian, please feel
free to talk to me and I can put it together myself, or help walk you
through it.

Best of luck to all of you. I do hope you get a chance to look at my
library if you've got any experience working with debian/control files
and packaging. I'm taking feature requests and all that :-)

Cheers,

Jonathan



More information about the Soc-coordination mailing list