Skip to content
master
Switch branches/tags
Go to file
Code

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
Jun 11, 2013
Aug 15, 2020
Aug 15, 2020

README.md

anyenv - All in one for **env

This is a simple wrapper for rbenv style environment managers. You don't have to git clone or modify your shell profile for each **env anymore if you install anyenv.

Feedback required!

This repository is under development. All feedback are welcome! See https://github.com/anyenv/anyenv/issues

Getting started

1. Install and configure anyenv

Homebrew (for macOS user)

  1. Install anyenv
$ brew install anyenv
  1. Set up anyenv in your shell.
$ anyenv init

Follow the printed instructions.

  1. Close your Terminal window and open a new one so your changes take effect.

You'll see a warning if you don't have manifest directory.

ANYENV_DEFINITION_ROOT(/Users/riywo/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by:
> anyenv install --init

Manual git checkout

  1. Clone anyenv into ~/.anyenv.
$ git clone https://github.com/anyenv/anyenv ~/.anyenv
  1. Add ~/.anyenv/bin to your $PATH for access to the anyenv command-line utility.
    • For bash:

      $ echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bash_profile
      
    • For Ubuntu Desktop:

      $ echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.bashrc
      
    • For Zsh:

      $ echo 'export PATH="$HOME/.anyenv/bin:$PATH"' >> ~/.zshrc
      
    • For Fish shell:

      $ set -Ux fish_user_paths $HOME/.anyenv/bin $fish_user_paths
      
  2. Set up anyenv in your shell.
$ ~/.anyenv/bin/anyenv init

Follow the printed instructions.

  1. Close your Terminal window and open a new one so your changes take effect.

You'll see a warning if you don't have manifest directory.

ANYENV_DEFINITION_ROOT(/Users/riywo/.config/anyenv/anyenv-install) doesn't exist. You can initialize it by:
> anyenv install --init

2. Initialize install manifest directory

If you want, you can initialize install manifest directory with anyenv/anyenv-install.

anyenv install --init

If you have own manifest repository, you can specify it:

$ anyenv install --init https://github.com/foo/anyenv-install.git
Manifest directory doesn't exist: /Users/riywo/.config/anyenv/anyenv-install
Do you want to checkout https://github.com/foo/anyenv-install.git? [y/N]:

Usage

Install any **env in your manifest directory:

$ anyenv install rbenv
$ anyenv install pyenv
$ anyenv install nodenv
$ exec $SHELL -l

$ rbenv install ...
$ pyenv install ...
$ nodenv install ...

Update your manifest directory:

anyenv install --update

Configuration

ANYENV_DEFINITION_ROOT

This is the directory containing install manifests. Manifests should be directly under this directory:

$ tree ~/.config/anyenv/anyenv-install
/Users/riywo/.config/anyenv/anyenv-install
├── Renv
...
├── scalaenv
└── swiftenv

If it is not defined by user, it uses fallbacks:

  • ${XDG_CONFIG_HOME}/anyenv/anyenv-install if ${XDG_CONFIG_HOME} is defined
  • ${HOME}/.config/anyenv/anyenv-install by default

Plugins