[Pkg-puppet-devel] [SCM] Packaging of Facter for debian branch, master, updated. debian/1.5.6-1-3-gf695058

Andrew Pollock me at andrew.net.au
Tue Jun 30 19:44:41 UTC 2009


On Tue, Jun 30, 2009 at 04:53:37PM +0000, Micah Anderson wrote:
> The following commit has been merged in the master branch:
> commit 9b25e4ae9cea6dfce1db3f253d461c01533720c7
> Author: Micah Anderson <micah at riseup.net>
> Date:   Tue Jun 30 12:36:51 2009 -0400
> 
>     Now that upstream has done quite a bit of work to get facter to work
>     with ruby 1.9 we need to make the Debian package work with ruby1.9.
>     
>     This came about because there was a lintian problem:
>     
>     E: facter: ruby-script-but-no-ruby-dep ./usr/bin/facter
>     
>     That happened because the install.rb, provided by facter, munges the
>     perfectly fine shebang in bin/facter (#!/usr/bin/env ruby) into the
>     ruby1.8 specific one (#!/usr/bin/ruby1.8) just because my
>     /usr/bin/ruby is a symlink to /usr/bin/ruby1.8.
>     
>     Because facter can work with both 1.8 and 1.9, having a shebang that
>     specifically uses 1.8, when someone might have only 1.9 installed is
>     actually an error.
>     
>     So, after some investigation, I found that the way to do this is to
>     switch to the newer setup.rb mechanism for installation (as install.rb
>     has been deprecated by Minero Aoki in favor of setup.rb for years)
>     which allows for a switch that keeps the shebang from being
>     re-written.
>     
>     So, to summarize, the changes I made to get this to work:
>     
>      * Added an optional dependency on the libopenssl-ruby1.9 package
>      * Stopped using the upstream provided install.rb (which btw. has been
>        deprecated by Minero Aoki years ago) and switched to using the
>        standardized Debian ruby CDBS classes that provide a setup.rb
>      * Shipping the facter libraries into /usr/lib/ruby/vendor_ruby instead
>        of /usr/lib/ruby/ruby1.8 (NB: the vendor_ruby directory seems to be
>        the one the Debian Ruby team intends to use for version independent
>        ruby libraries, as most recently discussed here:
>        http://www.mail-archive.com/debian-ruby@lists.debian.org/msg00528.html)
> 

So a big fat +1 for a nice detailed commit message, but a big fat -1 for the
resulting change. Perhaps if we'd been as verbose in our commit messages,
this wouldn't have happened.

We went to great pains to switch over to using install.rb expressly because
we wanted to get away from from having "#!/usr/bin/env ruby" as the shebang
line, because we were seeing machines where users had messed around with
their ruby runtime and Facter (and Puppet) ended up running with something
out of /usr/local/bin instead of the system-provided one, and everything
broke spectacularly.

I'd like to move to a development model where we're not all working in
isolation commiting changes, but send patches to the list, and reach some
sort of agreement or at the very least obtain some peer review/feedback
before submitting. I'm not exactly sure how to accomplish this yet though.

regards

Andrew
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-puppet-devel/attachments/20090701/0f7a5c86/attachment.pgp>


More information about the Pkg-puppet-devel mailing list