Add perl package, based on [work by
justintoo](https://github.com/LLNL/spack/pull/105). He had too many
things pulled into that pull request, this just adds a perl package.
Support the current releases on the past three minor branches.
Run perl's tests before installing.
Install cpanm into the core (makes building on top of this perl *much*
simpler). Controlled by a variant.
I cargo culted that from my *nextflow* package. I [thought I] needed it
to work around Spack trying to use tar to unpack something that was
neither a tar ball nor unpackable.
This package works fine without it. In retrospect, the error that I was
seeing in the *nextflow* package was probably this problem #1308.
Add a package for [ack](http://beyondgrep.com/install/). Simply install
the fatpacked script.
It uses '#!/usr/bin/env perl' and it very much not choosy about what
perl it needs. For now just trust that there's one available, perhaps
someday we can/should uncomment the depends_on('perl').
Follows the methodolgy I used in nextflow. Has the same
uninstall/install problem that nextflow has, there is an issue in
progress for that: https://github.com/LLNL/spack/issues/1308.
Tested on CentOS7.
r-jsonlite 0.0.21 -> 1.0
r-mime 0.4 -> 0.5
rcpp 0.12.5 -> 0.12.6
CRAN is funny. The older versions of these packages are still available
in package specific directories but the current version is not there, so
I don't see any way to make the older versions work.
This is my first cut at a package to support nextflow. It's also my
first package. It works, but has issues. I'm going to submit a pull
request and get some coaching on how to deal with it.
One issue particular: if I install, then uninstall, then try to install
again (which uses the cached copy of the "distribution file"), it
explodes.
Assuming a bash interactive environment will be correctly formed on login, we
should prefer to probe the environment using a shell that reports itself as
`bash` instead of `sh` which may not source files that set the
environment modules in statements like:
```
case "$is" in
bash) test -s /etc/bash.bashrc.local && . /etc/bash.bashrc.local ;;
ksh) test -s /etc/ksh.kshrc.local && . /etc/ksh.kshrc.local ;;
zsh) test -s /etc/zsh.zshrc.local && . /etc/zsh.zshrc.local ;;
ash) test -s /etc/ash.ashrc.local && . /etc/ash.ashrc.local
esac
test -s /etc/sh.shrc.local && . /etc/sh.shrc.local
```