2.9. Commonly Used Path Redefinitions This section lists environment variables commonly used to redefine paths in the enable scriptlet to set up the Software Collection environment. They are also used to specify the location of the Software Collection components in the Software Collection file system hierarchy. Whether you need to specify a path redefinition in the enable scriptlet depends on the packages you choose to include in your Software Collection. The environment variables normally follow this pattern: USDENV_VAR=USDSCL_ENV_VAR:USDENV_VAR 2.9.1. Language-specific Path Redefinitions GEM_PATH The GEM_PATH environment variable specifies the location of Ruby gems. As such, it is also used in those Software Collections that extend the rh-ruby23 Software Collection. For more information, see Section 4.3, "Extending the rh-ruby23 Software Collection" . Include the following in the enable scriptlet to redefine the environment variable: export GEM_PATH="\USD{GEM_PATH:=%{gem_dir}:\`scl enable %{scl_ruby} -- ruby -e "print Gem.path.join(':')"\`}" GOPATH The GOPATH environment variable specifies the location of Go source and binary files. Include the following in the enable scriptlet to redefine the environment variable: export GOPATH="%{gopath}\USD{GOPATH:+:\USD{GOPATH}}" JAVACONFDIRS The JAVACONFDIRS environment variable is used to specify the location of the java.conf configuration file. Include the following in the enable scriptlet to redefine the environment variable: export JAVACONFDIRS="%{_sysconfdir}/java\USD{JAVACONFDIRS:+:}\USD{JAVACONFDIRS:-}" PERL5LIB The PERL5LIB environment variable is used to specify the location of custom Perl modules so that they can be installed with the %{?_scl_root} prefix. Include the following in the enable scriptlet to redefine the environment variable: export PERL5LIB="%{_scl_root}%{perl_vendorlib}\USD{PERL5LIB:+:\USD{PERL5LIB}}" PYTHONPATH The PYTHONPATH environment variable specifies the location of custom Python libraries. Include the following in the enable scriptlet to redefine the environment variable: export PYTHONPATH="%{_scl_root}%{python_sitearch}:%{_scl_root}%{python_sitelib}\USD{PYTHONPATH:+:}\USD{PYTHONPATH:-}" 2.9.2. Other Path Redefinitions CPATH The CPATH environment variable specifies include paths for the GCC compiler to use. Include the following in the enable scriptlet to redefine the environment variable: export CPATH="%{_includedir}\USD{CPATH:+:\USD{CPATH}}" INFOPATH The INFOPATH environment variable specifies directories that contain Info files. Include the following in the enable scriptlet to redefine the environment variable: export INFOPATH="%{_infodir}\USD{INFOPATH:+:\USD{INFOPATH}}" LD_LIBRARY_PATH The LD_LIBRARY_PATH environment variable specifies the location of libraries. For more information, see Section 3.5, "Software Collection Library Support" . Include the following in the enable scriptlet to redefine the environment variable: export LD_LIBRARY_PATH="%{_libdir}\USD{LD_LIBRARY_PATH:+:\USD{LD_LIBRARY_PATH}}" LIBRARY_PATH The LIBRARY_PATH environment variable specifies the location of special linker files or ordinary libraries for GCC to use. Include the following in the enable scriptlet to redefine the environment variable: export LIBRARY_PATH="%{_libdir}\USD{LIBRARY_PATH:+:\USD{LIBRARY_PATH}}" MANPATH The MANPATH environment variable specifies the location of man pages. For more information, see Section 3.7, "Software Collection MANPATH Support" . Include the following in the enable scriptlet to redefine the environment variable: export MANPATH="%{_mandir}:\USD{MANPATH:-}" PATH The PATH environment variable specifies the location of binary files. Include the following in the enable scriptlet to redefine the environment variable: export PATH="%{_bindir}:%{_sbindir}\USD{PATH:+:\USD{PATH}}" PCP_DIR The PCP_DIR environment variable specifies the location of files and directories used by PCP . Include the following in the enable scriptlet to redefine the environment variable: export PCP_DIR="%{_scl_root}" PKG_CONFIG_PATH The PKG_CONFIG_PATH environment variable specifies the location of .pc files used by the pkg-config program. For more information, see Section 3.6, "Software Collection .pc Files Support" . Include the following in the enable scriptlet to redefine the environment variable: export PKG_CONFIG_PATH="%{_libdir}/pkgconfig\USD{PKG_CONFIG_PATH:+:\USD{PKG_CONFIG_PATH}}" XDG_CONFIG_DIRS The XDG_CONFIG_DIRS environment variable specifies the location of desktop configuration files according to the freedesktop.org specification. Include the following in the enable scriptlet to redefine the environment variable: export XDG_CONFIG_DIRS="%{_sysconfdir}/xdg:\USD{XDG_CONFIG_DIRS:-/etc/xdg}" XDG_DATA_DIRS The XDG_DATA_DIRS environment variable specifies the location of desktop data files according to the freedesktop.org specification. It is used in some Software Collections to locate the Software Collection-specific scripts or to enable bash completion. Include the following in the enable scriptlet to redefine the environment variable: export XDG_DATA_DIRS="%{_datadir}:\USD{XDG_DATA_DIRS:-/usr/local/share:%{_root_datadir}}"

Commands:
USDENV_VAR=USDSCL_ENV_VAR:USDENV_VAR
export GEM_PATH="\USD{GEM_PATH:=%{gem_dir}:\`scl enable %{scl_ruby} -- ruby -e "print Gem.path.join(':')"\`}"
export GOPATH="%{gopath}\USD{GOPATH:+:\USD{GOPATH}}"
export JAVACONFDIRS="%{_sysconfdir}/java\USD{JAVACONFDIRS:+:}\USD{JAVACONFDIRS:-}"
export PERL5LIB="%{_scl_root}%{perl_vendorlib}\USD{PERL5LIB:+:\USD{PERL5LIB}}"
export PYTHONPATH="%{_scl_root}%{python_sitearch}:%{_scl_root}%{python_sitelib}\USD{PYTHONPATH:+:}\USD{PYTHONPATH:-}"
export CPATH="%{_includedir}\USD{CPATH:+:\USD{CPATH}}"
export INFOPATH="%{_infodir}\USD{INFOPATH:+:\USD{INFOPATH}}"
export LD_LIBRARY_PATH="%{_libdir}\USD{LD_LIBRARY_PATH:+:\USD{LD_LIBRARY_PATH}}"
export LIBRARY_PATH="%{_libdir}\USD{LIBRARY_PATH:+:\USD{LIBRARY_PATH}}"
export MANPATH="%{_mandir}:\USD{MANPATH:-}"
export PATH="%{_bindir}:%{_sbindir}\USD{PATH:+:\USD{PATH}}"
export PCP_DIR="%{_scl_root}"
export PKG_CONFIG_PATH="%{_libdir}/pkgconfig\USD{PKG_CONFIG_PATH:+:\USD{PKG_CONFIG_PATH}}"
export XDG_CONFIG_DIRS="%{_sysconfdir}/xdg:\USD{XDG_CONFIG_DIRS:-/etc/xdg}"
export XDG_DATA_DIRS="%{_datadir}:\USD{XDG_DATA_DIRS:-/usr/local/share:%{_root_datadir}}"