Avoid quoting environment variable values.
[msysgit.git] / etc / profile
blob8026e743650d144926b71177f986376214dbc6ba
1 # Copyright (C) 2001, 2002  Earnie Boyd  <earnie@users.sf.net>
2 # This file is part of the Minimal SYStem.
3 #   http://www.mingw.org/msys.shtml
5 #         File: profile
6 #  Description: Shell environment initialization script
7 # Last Revised: 2002.05.04
9 if [ -z "$MSYSTEM" ]; then
10   MSYSTEM=MINGW32
13 # My decision to add a . to the PATH and as the first item in the path list
14 # is to mimick the Win32 method of finding executables.
16 # I filter the PATH value setting in order to get ready for self hosting the
17 # MSYS runtime and wanting different paths searched first for files.
18 if [ $MSYSTEM == MINGW32 ]; then
19   export PATH=".:/usr/local/bin:/mingw/bin:/bin:$PATH"
20 else
21   export PATH=".:/usr/local/bin:/bin:/mingw/bin:$PATH"
24 # check msys-1.0.dll
25 if test -f /etc/msys-1.0.dll.md5
26 then
27         # if check succeeds, let's avoid checking again
28         test "$(md5sum /bin/msys-1.0.dll)" = "$(cat /etc/msys-1.0.dll.md5)" &&
29         rm -f /etc/msys-1.0.dll.md5 ||
30         printf "\n\033[31mERROR: Your msys-1.0.dll is out-of-date!\033[m\n\n"
33 if [ -z "$USERNAME" ]; then
34   LOGNAME="`id -un`"
35 else
36   LOGNAME="$USERNAME"
39 # Set up USER's home directory
40 if [ -z "$HOME" -o ! -d "$HOME" ]; then
41   HOME="$HOMEDRIVE$HOMEPATH"
42   if [ -z "$HOME" -o ! -d "$HOME" ]; then
43     HOME="$USERPROFILE"
44   fi
47 if [ ! -d "$HOME" ]; then
48         printf "\n\033[31mERROR: HOME directory '$HOME' doesn't exist!\033[m\n\n"
49         echo "This is an error which might be related to msysGit issue 108."
50         echo "You might want to set the environment variable HOME explicitly."
51         printf "\nFalling back to \033[31m/ ($(cd / && pwd -W))\033[m.\n\n"
52         HOME=/
55 # normalize HOME to unix path
56 HOME="$(cd "$HOME" ; pwd)"
58 export PATH="$HOME/bin:$PATH"
60 export GNUPGHOME=~/.gnupg
62 if [ "x$HISTFILE" == "x/.bash_history" ]; then
63   HISTFILE=$HOME/.bash_history
66 if [ -e ~/.inputrc ]; then
67     export INPUTRC=~/.inputrc
68 else
69     export INPUTRC=/etc/inputrc
72 export HOME LOGNAME MSYSTEM HISTFILE
74 for i in /etc/profile.d/*.sh ; do
75   if [ -f $i ]; then
76     . $i
77   fi
78 done
80 export MAKE_MODE=unix
82 # Git specific stuff
83 test -e /bin/git.exe -o -e /git/git.exe || {
84         echo
85         echo -------------------------------------------------------
86         echo "Building and Installing Git"
87         echo -------------------------------------------------------
89         cd /git &&
90         make install
92         case $? in
93         0)
94                 MESSAGE="You are in the git working tree, and all is ready for you to hack."
95         ;;
96         *)
97                 MESSAGE="Your build failed...  Please fix it, and give feedback on the Git list."
98         esac
100         test -d /installer-tmp && rm -rf /installer-tmp
102         cat <<EOF
105 -------------------------
106 Hello, dear Git developer.
108 This is a minimal MSYS environment to work on Git.
110 $MESSAGE
115 # let's make sure that the post-checkout hook is installed
116 test -d /.git && test ! -x /.git/hooks/post-checkout &&
117 test -x /share/msysGit/post-checkout-hook &&
118 mkdir -p /.git/hooks &&
119 cp /share/msysGit/post-checkout-hook /.git/hooks/post-checkout
121 test -f /etc/motd && sed "s/\$MESSAGE/$MESSAGE/" < /etc/motd
122 test -x /share/msysGit/initialize.sh -a ! -d /.git &&
123 cat << EOF
125 It appears that you installed msysGit using the full installer.
126 To set up the Git repositories, please run /share/msysGit/initialize.sh
129 case ":$PATH:" in
130 *:/cmd:*|*:/bin:*) ;;
132         cat << EOF
134 In order to use Git from cmd.exe:
135 1. Add c:\msysgit\cmd to cmd's PATH
136 2. DON'T add c:\msysgit\bin or c:\msysgit\mingw\bin to cmd's PATH
137 Commands like 'git add' will work from cmd.exe now.
138 Commands like 'git-add' will NOT work. Add more wrappers as appropriate.
140 esac
143 . /git/contrib/completion/git-completion.bash
144 PS1='\[\033]0;$MSYSTEM:\w\007
145 \033[32m\]\u@\h \[\033[33m\w$(__git_ps1)\033[0m\]
146 $ '
148 # set default options for 'less'
149 export LESS=-FRSX
150 # set default protocol for 'plink'
151 export PLINK_PROTOCOL=ssh
153 # read user-specific settings, possibly overriding anything above
154 if [ -e ~/.bashrc ]; then
155     . ~/.bashrc
156 elif [ -e ~/.bash_profile ]; then
157     . ~/.bash_profile
158 elif [ -e /etc/bash_profile ]; then
159     . /etc/bash_profile