User Tools

Site Tools


packages:ruby

Ruby packaging

Since ruby >= 1.9.3.392-2 our Ruby supports noarch packages.

This also means that pld packages should put their modules into vendor dirs, and site dirs is for local installations (not to be packaged by rpm). ruby archdir and libdir are for ruby's own modules (packaged from ruby.spec), distro addon packages should not put their modules there.

Here's overview of the paths:

rpm macro rbconfig value new value old value
%ruby_version ruby_version 1.9 1.9
%ruby_archdir 1) archdir /usr/lib64/ruby/1.9 /usr/lib64/ruby/1.9/x86_64-linux
%ruby_libdir rubylibdir /usr/share/ruby/1.9 - 2)
%ruby_sitedir sitedir /usr/local/share/ruby/site_ruby - 3)
%ruby_sitearchdir sitearchdir /usr/local/lib64/ruby/site_ruby/1.9 /usr/lib64/ruby/site_ruby/1.9/x86_64-linux
%ruby_sitelibdir sitelibdir /usr/local/share/ruby/site_ruby/1.9 /usr/lib64/ruby/site_ruby/1.9
%ruby_vendordir vendordir /usr/share/ruby/vendor_ruby - 4)
%ruby_vendorarchdir vendorarchdir /usr/lib64/ruby/vendor_ruby/1.9 /usr/lib64/ruby/vendor_ruby/1.9/x86_64-linux
%ruby_vendorlibdir vendorlibdir /usr/share/ruby/vendor_ruby/1.9 /usr/lib64/ruby/vendor_ruby/1.9
%ruby_rubylibdir 5) 6) rubylibdir /usr/share/ruby/1.9 /usr/lib64/ruby/1.9

vendordir rebuilds

1) used by old arch packages
2) , 3) , 4) macro did not exist in rpm4.5
5) used by old noarch packages
6) macro exists only in pld, not rpm5 macros. deprecated, do not use
packages/ruby.txt · Last modified: 2015-07-30 23:12 by glen