RPA and Debian
I seem not to have written here for two weeks, where did the time go? Well, study projects probably… I have been working on GOAT! a lot and other misc stuff.
Today, I’ve looked into the first implementations of the RPA and Debian coupling. Now RPA base is maturing and the development 0.3 branch had some Debian source/binary specific generating code in it by bitserf, I decided to try it and and maybe help.
It is going to look something like this (or then again, maybe not at all):
% rpa source iowa % rpa-build -t debian -b ./iowa source % ls iowa/ iowa-0.9.1/ iowa_0.9.1-2.diff.gz iowa_0.9.1-2.dsc iowa_0.9.1.orig.tar.gz % cd iowa-0.9.1 % dpkg-buildpackage -rfakeroot …When the source port is downloaded, Debian source can be generated from the meta-data in the RPA installer file/class in
iowa/install.rb
.
A Debian specific install script is put in iowa-0.9.1/debian/rules
which could inherit the installer and be modified at will by the maintainer.
An example of generated debian/rules
template doing the standard stuff:
#!/usr/bin/env ruby require ‘install’ class Debianize_iowa < Install_iowa end
I’m not sure how to handle the Debian Changelog yet. debian/rules
specific targets should be handled by the class in some way as well.
If we get this working, both RPA (and thus users of other operating systems working with Ruby) and Debian will benefit from this. I intend to commit non-Debian specific changes back to RPA (also QA stuff) and create a tight coupling so that Debian packages are very up-to-date and easy to maintain (read: no work at all to maintain). I’m currently trying to find my way in the code. You will hear more of this…