chruby vs plenv
chruby
github.complenv
github.comSide by side
| Figure | chruby | plenv |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Runtime Version Managers | 7.9 (#7) | 7.5 (#17) |
| Spec score · Development Environment Managers | 7.9 (#17) | 7.4 (#35) |
| Integrations | The project wiki links usage instructions for Capistrano, Chef, Cron, Emacs, Pow, Puppet, Sudo, Vim, and Fish. | The README recommends using plenv with Carton for Perl upgrades and deployments. |
| License | The repository identifies its license as MIT. | The project says plenv is free software redistributable under the same terms as Perl itself. |
| Purpose | chruby changes the current Ruby version in a shell. | plenv lets users select a Perl version for an application so the development environment matches production. |
| Shell support | It supports bash 3 or later and zsh. | The README documents setup for Bash and Zsh, including optional shell integration and autocompletion. |
Plans
In their own words
chruby
chruby is a free, MIT-licensed shell utility for changing the Ruby version used in a session. Selecting a Ruby updates PATH and sets GEM_HOME and GEM_PATH for that installation. It can match installed Ruby names fuzzily and uses the system Ruby when no selection is made. Optional automatic switching checks the current and parent directories for a .ruby-version file. chruby supports bash 3 or later and zsh on Linux and macOS. Installation instructions cover a release tarball, Homebrew, Arch Linux AUR, Fedora Copr, and FreeBSD ports. Additional Ruby implementations can be installed with ruby-install or ruby-build. The project provides guidance for integrations including Capistrano, Chef, Cron, Emacs, Pow, Puppet, Sudo, Vim, and Fish. Releases are PGP signed, with verification instructions, and the codebase is described as about 100 lines with tests.
plenv
plenv is a free Perl version manager for selecting the interpreter an application uses, helping keep development aligned with production. It installs Perl versions in the user’s home directory and switches between them in the shell. A `.perl-version` file can pin a Perl version to a directory, taking precedence over the global selection. Shell script wrappers called shims route Perl executable commands to the selected version. Setup instructions cover Bash and Zsh, with optional shell integration and autocompletion. Installation options include GitHub, an archive, and Homebrew on Mac OS X. The `perl-build` plugin supplies `plenv install`; `plenv-contrib` adds `use` and `lib` commands as a local::lib integration replacement. The README recommends Carton for upgrades and deployments. `migrate-modules` installs the newest module versions from one Perl environment into another, though the resulting versions may differ. The README lists Perl 5.8.1+ and Bash as dependencies, and curl for `plenv install-cpanm`. plenv supports Linux and macOS and is free software redistributable under the same terms as Perl itself.