swc-windows-installer.py: Bring in Ethan's make_bash_profile and make_posix_path
authorEthan White <ethan@weecology.org>
Mon, 21 Oct 2013 05:01:59 +0000 (22:01 -0700)
committerW. Trevor King <wking@tremily.us>
Mon, 21 Oct 2013 17:13:52 +0000 (10:13 -0700)
commite93aafb40d0c958e43bd4db4ddae1453f7cf8965
tree2728974dc9db36a1ae659df22c4976d84eea42fe
parent3b539bdebf3a954018c47bf58abd11f980937b7f
swc-windows-installer.py: Bring in Ethan's make_bash_profile and make_posix_path

This integerates some of Ethan's nano-installer changes.  In the pull
request, Ethan elaborates on the .bash_profile choice [1]:

  In response to comments on the Tutors list the installer now uses
  .bash_profile instead of .bashrc and appends the lines rather than
  overwriting the file. I have also added comments that indicate where
  the new lines in .bash_profile come from.

  Once the Python version is in I'll move on to getting this compiled
  into a .exe file, which should be more familiar to our students and
  won't run into issues with Canopy installs opening the file in
  Canopy rather than executing it.

The referenced tutors@ discussion is in the messages leading up to
[2], where Ethan top-quotes a discussion with R. David Murray about
the relative merits of .bash_profile and .bashrc.  The imporant point
David made was that .bash_profile is only executed once at login,
while .bashrc is executed for each new shell.  Putting PATH appends in
.bash_profile means that you don't end up adding duplicate entries to
the PATH as you spawn subshells.  For example:

  ${ORIGINAL_PATH}:${NANO_PATH}:${NANO_PATH}:...

[1]: https://github.com/swcarpentry/bc/pull/35
[2]: http://lists.software-carpentry.org/pipermail/tutors_lists.software-carpentry.org/2013-September/000969.html
setup/swc-windows-installer.py