[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ruby 2.5 sysconfdir and others wrong



On Fri, Mar 02, 2018 at 12:02:37PM +0000, John Leach wrote:
> Hi,
> 
> tested with 2.5.0-5 from unstable
> 
> ruby2.5 -r rbconfig -e 'puts RbConfig::CONFIG["sysconfdir"]'         
> /usr/etc
> 
> but on stable, ruby2.3 returns:
> 
> ruby2.3 -r rbconfig -e 'puts RbConfig::CONFIG["sysconfdir"]'         
> /etc
> 
> it means things like the gem command looks for /usr/etc/gemrc rather
> than /etc/gemrc - which is definitely wrong.
> 
> 
> A diff of RbConfig::CONFIG between 2.3 and 2.5 reveals other broken
> looking paths:
> 
> -runstatedir: /var/run
> -localstatedir: /var
> +runstatedir: /usr/var/run
> +localstatedir: /usr/var
> -sysconfdir: /etc
> +sysconfdir: /usr/etc
> -libexecdir: /usr/lib/ruby2.3
> +libexecdir: /usr/libexec
> 
> I can't see anything that's changed in the Debian package recipes that
> looks relevant so I guess this is a change in Ruby.
> 
> This commit back in October 2017 looks related, as it changes the code
> to define sysconfgdir and adds prefixes to localstatedir and
> sharedstatedir:
> 
> https://github.com/ruby/ruby/commit/8fc8587e05163f0002915d06fbb20386cbc
> bb2ef
> 
> Not sure if this should be fixed in Ruby or Debian though. Any ideas?

Thanks for raising this.

ruby2.3 used dh_auto_configure, while ruby2.5 calls ./configure directly
due to some incompatibilities between dh_auto_configure in debhelper
compatibility level 10+ and the way multi-arch is handled in Ruby
upstream. Those paths are usually passed in to ./configure by
dh_auto_configure, but are missing from the direct call to /configure.

I have just uploaded ruby2.5 2.5.0-6 fixing this.

Attachment: signature.asc
Description: PGP signature


Reply to: