color.md 0000664 00000002442 14751163265 0006222 0 ustar 00 RVM will automatically use colors when it is possible.
To overwrite use command line parameter --color=no or --color=force.
It is also possible to set it with variable in ~/.rvmrc:
rvm_pretty_print_flag=[no|auto|force]
To change default colors use following variables in ~/.rvmrc:
rvm_error_color=red
rvm_warn_color=yellow
rvm_debug_color=magenta
rvm_notify_color=green
rvm_code_color=blue
rvm_comment_color=iblack
Available colors are:
black red green yellow blue magenta cyan white default
You can add emphasis to the color using bold/offbold.
It is also possible to change background color:
bblack bred bgreen byellow bblue bmagenta bcyan bwhite bdefault
On some terminals like xterm ( echo $TERM ) the bold and background colors give the same effect.
Use commas to put multiple definitions in one color. You can mix color, bold and background in one definition.
Specifying multiple colors/bold/background definitions will use last defined.
Using bold in one definition requires resetting it in others with offbold.
Using background in one definition requires resetting it in others with bdefault.
Example:
$ cat ~/.rvmrc
rvm_error_color=bold,red
rvm_warn_color=bold,yellow
rvm_debug_color=offbold,magenta
rvm_notify_color=offbold,green
gpg.md 0000664 00000000712 14751163265 0005657 0 ustar 00 # GPG
1. [Creating GPG Keys](https://alexcabal.com/creating-the-perfect-gpg-keypair/)
2. Add public key to rvm-site repo
`gpg --armor --export developer_name > developer_name.asc`
2. [Extending key expiration date](https://www.g-loaded.eu/2010/11/01/change-expiration-date-gpg-key/)
3. Signing installer
`gpg --armor --detach-sign --yes binscripts/rvm-installer`
4. Signing release (follow on screen instructions)
`bash sign-releases.sh`
upgrade-notes.md 0000664 00000006431 14751163265 0007663 0 ustar 00 * If you wish to disable the project .rvmrc file functionality, set
rvm_project_rvmrc=0 in either /etc/rvmrc or ~/.rvmrc.
then log out and back in.
* after_use and after_cd hook now supports multiple files with after_*_*
the custom hooks can be easily turned on/off by:
chmod +x $rvm_path/hooks/after_cd_[hook_name]
chmod -x $rvm_path/hooks/after_use_[hook_name]
* If your shell exits on entering a directory with freshly checked out sources
you should update .rvmrc file, and replace any `exit ` with `return `.
* In case you have some old RVM files/rubies in '/usr/local/bin' or '$HOME/bin' feel free to remove them,
they were copied there because of bug in path detection.
* Zsh 4.3.15 is buggy, be careful with it, it can break RVM, especially multiuser installations,
You should consider downgrading Zsh to 4.3.12 which has proven to work more reliable with RVM.
* Optionally you can run \`rvm tools rvm-env ruby bash\` which will generate
shebang wrappers for easier selecting ruby in scripts.
* If you wish to get more default(global) gems installed, install RVM with this flag: --with-gems="pry vagrant"
this option is remembered, it's enough to use it once.
* Binary rubies are installed by default if available, you can read about it in help:
rvm help install
rvm help mount
* RVM comes with a set of default gems including 'bundler', 'rake', 'rubygems-bundler' and 'rvm' gems;
if you do not wish to get these gems, install RVM with this flag: --without-gems="rvm rubygems-bundler"
this option is remembered, it's enough to use it once.
* RVM will try to automatically use available package manager, might require `sudo`,
read more about it in `rvm help autolibs`
* The default umask for multi-user installation got extended to `umask u=rwx,g=rwx,o=rx`,
comment it out to avoid automatic updates.
* If you encounter any issues with a ruby 'X' your best bet is to:
rvm get head && rvm reinstall X --debug
* RVM will run 'rvm requirements' by default, to disable run:
echo rvm_autolibs_flag=0 >> ~/.rvmrc
* RVM 1.20.12 removes the automated --progress-bar from curl options,
if you liked this then you can restore this behavior with:
echo progress-bar >> ~/.curlrc
* RVM will set first installed ruby as default and use it if run as function.
To avoid this behavior either use full path to rvm binary or prefix it with `command `.
* To update RVM loading code run 'rvm get ... --auto-dotfiles'
* RVM 1.20 changes default behavior of Autolibs to Enabled - if you prefer the 1.19 behavior
then run "rvm autolibs read-fail", read more details: rvm help autolibs
* RVM 1.24 changes default package manager on OSX to Homebrew,
use `rvm autolibs macports` if you prefer Macports.
* RVM 1.24 changes default `--verify-downloads` flag to `1` you can get the paranoid mode again with:
echo rvm_verify_downloads_flag=0 >> ~/.rvmrc
* RVM 1.25 disables default pollution of rvm_path/bin, you still can generate the links using:
rvm wrapper ruby-name # or for default:
rvm wrapper default --no-prefix
* RVM 1.25.11 'rvm remove' will by default remove gems, to remove only ruby use 'rvm uninstall'
* RVM 1.30 simplifies behavior of 'rvm wrapper' subcommand
alt.md 0000664 00000003501 14751163265 0005661 0 ustar 00 # RVM is not the only Ruby enVironment Manager
Other implementations allowing you to switch your Ruby environment:
- https://github.com/postmodern/chruby (Shell)
- https://github.com/TomFreudenberg/rvm-mini (Shell)
- https://github.com/vertiginous/pik (Windows)
- https://github.com/kwatch/versionswitcher (Python)
- https://bitbucket.org/jonforums/uru (Go)
- https://github.com/jayferd/ry (Shell)
- https://github.com/terlar/fry (Fish)
- https://github.com/niw/rubies (Shell)
- https://github.com/nkryptic/sandbox (Ruby)
- https://github.com/regularfry/gemenv (Ruby)
- https://github.com/sstephenson/rbenv (Shell)
- https://github.com/HashNuke/asdf-ruby (Shell)
- https://github.com/cpetschnig/switch-ruby (Ruby)
- https://github.com/uninets/p5-Ruby-VersionManager (Perl)
- https://github.com/seattlerb/zentest (Ruby)
- http://www.dribin.org/dave/blog/archives/2006/01/07/rails_encap/ (Tutorial)
- http://www.mjwall.com/2008/08/multiple-versions-of-ruby-with-stow/ (Tutorial)
- https://github.com/hmans/rbfu (Deprecated)
- https://github.com/wilmoore/ruby-version (Deprecated)
# RVM is not the only Ruby Version Manager
Other implementations allowing to install new Ruby versions:
- you can use your system to install ruby,
most distributions come with ruby 1.8 already installed
- https://github.com/postmodern/ruby-install (Shell)
- https://github.com/TomFreudenberg/rvm-mini (Shell)
- https://github.com/vertiginous/pik (Windows)
- https://github.com/kwatch/versionswitcher (Python)
- https://github.com/jayferd/ry (Shell)
- https://github.com/sstephenson/ruby-build (Shell)
- https://github.com/HashNuke/asdf-ruby (Shell)
- https://github.com/uninets/p5-Ruby-VersionManager (Perl)
# RVM IDE support
RVM is supported by the following IDE products:
- [RubyMine](http://www.jetbrains.com/ruby/)
- Vim [rvm.vim](https://github.com/tpope/vim-rvm)
release-procedure.md 0000664 00000002200 14751163265 0010502 0 ustar 00 # Release procedure
## Preconditions
Add `bitbucket` remote:
```bash
git remote add bitbucket git@bitbucket.org:mpapis/rvm.git
```
## Procedure
1. Merge `master` to `stable`
```bash
git checkout master
git pull
git checkout stable
git pull
git merge master
```
2. Increase [VERSION](../VERSION) number and remove `-next`
3. Update [CHANGELOG](../CHANGELOG.md) with release date and links to changes (do not add new `Next` section yet)
4. Commit changes
```bash
git commit -m "Release 1.29.6"
```
5. Tag stable with version
```bash
git tag 1.29.6
```
6. Merge `stable` to `master`
```bash
git checkout master
git merge stable
```
5. Push to github and bitbucket
```bash
git push origin master stable
git push origin --tags
git push bitbucket master stable
git push bitbucket --tags
```
7. Sign release and upload files to GitHub and BitBucket
```bash
bash ./sign-releases.sh
```
8. Close milestone in github
9. Publish blog entry on http://rvm.io
10. Publish info on twitter
11. Prepare for the next release on `master` branch
* add `-next` to the [VERSION](../VERSION)
* add new `Next` section to [CHANGELOG](../CHANGELOG.md)