gugod/App-perlbrew — Issue #172: An "env-less" perlbrew
Author: gugod
Created: 2011-12-14 11:13:30+00:00
State: open

Hi all,

I have spent some time to investigate a possible implementation of perlbrew without the need to setup bashrc / cshrc at all. The current work in progress is in the 'feature/envless' branch for whom wants to track. Since this is something that might impacts daily usage of perlbrew, it is better to let developers know beforehand.

The intention of trying was to see if simplify the development process. I have to admit that maintaining bashrc/cshrc can be sometimes a PITA :) With some brief understanding from the implementation of [rbenv](http://rbenv.org), I now know that it can be done, and has several advantages comparing to what we have:

- Works the same way for *all* shells, no need to maintain bashrc/cshrc content, and can be made working inside emacs / vim.
- Without the need of bashrc/cshrc, it's made easier for multi-user setup, and to be used in crontab / init.d scripts and those `$HOME`-less programs.
- Per-directory auto-switching is trivial without the need to provide a shell `cd()` function (which is generally considered dangerous), and again, possible for all shells

Of course there are some cons:

- 'use' might need to go away, or work differently (with sub-shell or similar), or there are still some minimun shell-integration
- CPAN module that installs new commands needs to be shim-ed (see also [rbenv rehash](https://github.com/sstephenson/rbenv#section_3.6))

I'll use this github issue page as the announcement page whenever it's needed, and I'm, as usual, open for opinions to tell me either to proceed or stop :)