Directory structure and version conflicts
Fabricio Cannini
fcannini at gmail.com
Wed May 22 22:03:13 UTC 2013
Em 22-05-2013 17:00, Miroslav Suchy escreveu:
> On 22.5.2013 19:44, Fabricio Cannini wrote:
>> I could not find how to change the PATH when enabling a collection. I'd
>> guess it's the same way as with LD_LIBRARY_PATH [0] but I'm not sure .
>
> You install scl-utils and meta-package (in my case we are using ruby
> 1.9.3 on el6 - it is named ruby193).
>
> And then:
> # ruby --version
> ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]
> # scl enable ruby193 "ruby --version"
> ruby 1.9.3p327 (2012-11-10 revision 37606) [x86_64-linux]
>
> "scl enable foo" will (beside few other things) the script
> /opt/rh/ruby193/enable
> which is very short and contains:
> export PATH=/opt/rh/ruby193/root/usr/bin:$PATH
> export LD_LIBRARY_PATH=/opt/rh/ruby193/root/usr/lib64:$LD_LIBRARY_PATH
> export MANPATH=/opt/rh/ruby193/root/usr/share/man:$MANPATH
Are these scripts generated by SCL or should I provide them ?
> This allows you to install ruby193 packages into something which looks
> like chroot in /opt/rh/ruby193/root, but it actually is not chroot. It
> is just preferred path. And allows you to use libraries from base
> operating system.
Can the paths be customized ? E.G. removing the 'root' directory, or
setting it to something else ?
> > What would be a great advantage of Software Collections against
> > environment-modules ?
>
> SCL is in its core environment modules (EM). The difference is that EM
> modify you current shell, but SCL start new shell.
Can this behavior be modified ? Can SCL modify my current shell ?
> SCL allows you to easy convert your spec files to SCL spec files (man
> spec2scl) with just very few changes. For example when you install
> ruby193-build and scl-utils-build, then %{_bindir} is evaluated to:
> /opt/rh/ruby193/root/usr/bin
I can do the same thing by modifying %_prefix in ~/.rpmrc , right ? ;)
More information about the Rpm-list
mailing list