[Neurodebian-devel] [RFC] Should we convert to use 'Modules' (http://modules.sourceforge.net/)?
Yaroslav Halchenko
debian at onerussian.com
Tue Jan 28 17:20:05 UTC 2014
On Tue, 28 Jan 2014, Alex Waite wrote:
> >>In my opinion, it's slightly easier, more intuitive, and less error
> >>prone to go the default symlink route rather than the .version file
> >>--- especially if we ever have a need to modify it via a postinst
> >>script. However, both are so dead easy that I don't have a strong
> >>preference.
> >well -- .version is easier to control from the 'package' -- just
> >shipping it. symlinks are trickier imho (as you noted -- postinst and
> >possibly other magic would be needed).
> Is there a Debian policy against shipping the symlink? That's been
> my approach.
nope.. actually may be I took it wrong and symlink (if under non-/etc)
might indeed be the easiest way.
> >>> 3.
> >>> For packages for which we maintain multiple major releases (e.g. FSL 4.1 and
> >>> 5.0), provide symlinks to the supported release line (similar to dynamic
> >>> libraries setup). e.g. if for ants we decided to support both old 1.9
> >>> and new 2.0: 2.0 -> 2.0.0, 1.9 -> 1.9.8
> >>> this way users could explicitly load a specific 'release line', e.g.
> >>> module load ants/1.9 (or module load fsl/5.0)
> >>Isn't this what point 1 is already doing? The only thing I see
> >>different is having a link from fsl/5.1 to fsl/5.1.1. But I don't
> >>see the point of doing that unless we plan to have both fsl 5.1.0
> >>and fsl 5.1.1 installed at the same time (which I don't think you're
> >>suggesting). I think we can just keep it as fsl/5.1 for all bugfix
> >>releases of fsl 5.1.
> >rright -- so we could strip epoch index from the version in
> >module... but I thought to consider it more generally -- may be we will
> >have multiple minor revisions as well (I believe fis-gtm folks might
> >needed it)... so indeed it could vary from pkg to pkg and we could
> >provide version at the level we support (in our case major.minor) but
> >then we get to -- major vs major (fsl 3 vs 4 vs 5) -- should that be our
> >level for fsl? for freesurfer major.minor (5.2 vs 5.3), ants --
> >undecided yet ;)
> I think the version of support should vary from project to project,
> as it seems each projects assigns it's own level of meaning (or lack
> thereof) to version numbers.
yeah, ok - concur
> >>An additional option is to allow the admin to
> >>select the default version via a dialog at install.
> >hm, not sure if we would want to complicate our lives that much...
> I would tend to agree. I was just throwing it out there.
;-)
> >>Yes, this should work. Do other versions have to be explicitly
> >>unloaded first, or is that taken care of automatically by envmod?
> >I believe that is the point of modules to take care about unloading prev
> >versions ;-)
> Perfect.
> >>> Q: How we could enable per user per module specific settings?
> >>> If someone had experience with Modules -- I would be great full for
> >>> your help.
> >>I think this is what `module load use.own` is for. Though I am not
> >>sure if it as as simple as appending/overwriting a single variable.
> >>I think the entire modfile needs to be duplicated, though I am not
> >>certain.
> >good catch -- indeed worth checking
> So, I found another option. Simply depend on the module in question,
> then setenv over the variable in question:
> `module load use.own`
> in ~/privatemodules/alex_freesurfer
> #%Module#
> module load freesurfer
> setenv SUBJECTS_DIR $env(HOME)/subj
> setenv LOCAL_DIR $env(FREESURFER_HOME)/alex_local
> ## EOB
> `module load alex_freesurfer`
sounds good!
> >Thank you Alex for looking into it!
> Not a problem.
> >may be now I will find
> >time to finish my ants updated package and will ship it with
> >modulesfile.
> Ooh. That'd be nice. Once I have some spare time, I'm going to look
> into the way we (internally) ship matlab and if there's any
> improvement to be made to the neurodebian matlab-support package
> (especially as it relates to envmod).
at the moment matlab-support indeed pretty much implements modules
system as well, but in "Debian way" through alternatives. We might need
to find a closure on where we draw a line between the two ;-)
--
Yaroslav O. Halchenko, Ph.D.
http://neuro.debian.net http://www.pymvpa.org http://www.fail2ban.org
Senior Research Associate, Psychological and Brain Sciences Dept.
Dartmouth College, 419 Moore Hall, Hinman Box 6207, Hanover, NH 03755
Phone: +1 (603) 646-9834 Fax: +1 (603) 646-1419
WWW: http://www.linkedin.com/in/yarik
More information about the Neurodebian-devel
mailing list