SCIENTIFIC-LINUX-USERS Archives

July 2016

SCIENTIFIC-LINUX-USERS@LISTSERV.FNAL.GOV

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Andrew C Aitchison <[log in to unmask]>
Reply To:
Andrew C Aitchison <[log in to unmask]>
Date:
Sun, 31 Jul 2016 21:02:20 +0100
Content-Type:
text/plain
Parts/Attachments:
text/plain (54 lines)
On Sun, 31 Jul 2016, ~Stack~ wrote:

> I have the exact same problem. Don't try to replace 2.6.6. It broke ALL
> KINDS of things including RPM when I tried it...did not go well at all
> (but a good learning experience! :-).
>
> Here are three solutions:
>
> 1) Software Collections: https://www.softwarecollections.org/en/
> Upside, A certain favored upstream vendor backs a lot of these packages
> (just no support). Downside, they run in a special environment which can
> be tricky depending on the application. It basically runs in a subshell
> and that confuses my users at least....

>                          Same with SCL. We use it elsewhere too, but
> anything that the users have to interact with, we found they get
> frustrated because of the weird subshell-environment it uses.

If your users are used to environment modules, the SCL pythons
can be made to work with those rather than SCL sub-shells
- here is our python27 module:

#%Module2013
#
# $Id: python27,v 1.2 2016/07/31 19:54:12 werdna Exp $
#

conflict python33

if [ file isfile /opt/rh/python27/root/usr/bin/python ] {
 	module-whatis "Loads python27"

 	set pythonroot /opt/rh/python27/root

 	prepend-path  PATH $pythonroot/usr/bin
 	prepend-path  LD_LIBRARY_PATH $pythonroot/usr/lib64
 	prepend-path  MANPATH $pythonroot/usr/share/man
 	# For systemtap
 	prepend-path  XDG_DATA_DIRS $pythonroot/usr/share
 	# For pkg-config
 	prepend-path  PKG_CONFIG_PATH $pythonroot/usr/lib64/pkgconfig
} else {
     module-whatis "Python 27 not installed on this machine"
     set helpmsg "Python 27 not installed on this machine"
     if [ expr [ module-info mode load ] || [ module-info mode display ] ] {
 	# bring in new version
 	puts stderr "Python 27 not installed on [uname nodename]"
     }
}


-- 
Andrew C Aitchison

ATOM RSS1 RSS2