wbyoung / avn

Automatic Version Switching for Node
MIT License
1.14k stars 54 forks source link

Incorrectly creates `.bash_profile` file on WSL Ubuntu #88

Open cdgriffith opened 4 years ago

cdgriffith commented 4 years ago

When using the windows subsystem for linux and installing avn it creates a .bash_profile. Doing so makes Ubuntu no longer load the .profile file and therefor no longer loads the .bashrc file.

Top of ~/.profile

# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.

By default nvm is loaded into bashrc and I believe avn should be added below it.

Details

avn is loaded in my ~/.bash_profile file with:

[[ -s "$HOME/.avn/bin/avn.sh" ]] && source "$HOME/.avn/bin/avn.sh" # load avn

nvm specific

wbyoung commented 4 years ago

Can you find an example of another tool that does a better job with figuring out which script file to use based on platform? Something like RVM may be a good place to look. Then we can model after work that's already been done.

ljharb commented 4 years ago

I’d be interested in a reliable algorithm for nvm’s own install script; I’ve yet to find one.

evenfrost commented 4 years ago

There's open PR for that: https://github.com/wbyoung/avn/pull/51.

musahaidari commented 4 years ago

Just to mention the obvious, till the time the PR #51 is ready, WSL users can delete ~/.bash_profile and add [[ -s "$HOME/.avn/bin/avn.sh" ]] && source "$HOME/.avn/bin/avn.sh" # load avn to the end of ~/.profile.