Compare commits
4 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
530c25c6a1
|
|||
|
b35dbca22e
|
|||
|
fd0ea3d858
|
|||
|
bbbe52f453
|
@@ -290,7 +290,16 @@ ask_bashrc() {
|
|||||||
|
|
||||||
read -r bashrc_answer </dev/tty
|
read -r bashrc_answer </dev/tty
|
||||||
else
|
else
|
||||||
return 1
|
# On windows .bashrc isn't an important user config, so we adjust it
|
||||||
|
# always. On other platforms, let's be a bit more conservative.
|
||||||
|
case "${plat}" in
|
||||||
|
MSYS*|MINGW*)
|
||||||
|
return 1
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
return 0
|
||||||
|
;;
|
||||||
|
esac
|
||||||
fi
|
fi
|
||||||
case $bashrc_answer in
|
case $bashrc_answer in
|
||||||
[Pp]* | "")
|
[Pp]* | "")
|
||||||
@@ -326,7 +335,7 @@ adjust_bashrc() {
|
|||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
cat <<-EOF > "${GHCUP_DIR}"/env || die "Failed to create env file"
|
cat <<-EOF > "${GHCUP_DIR}"/env || die "Failed to create env file"
|
||||||
export PATH="\$HOME/.cabal/bin:\$PATH:${GHCUP_BIN}"
|
export PATH="\$PATH:\$HOME/.cabal/bin:${GHCUP_BIN}"
|
||||||
EOF
|
EOF
|
||||||
;;
|
;;
|
||||||
*) ;;
|
*) ;;
|
||||||
@@ -335,7 +344,10 @@ adjust_bashrc() {
|
|||||||
case $1 in
|
case $1 in
|
||||||
1 | 2)
|
1 | 2)
|
||||||
case $MY_SHELL in
|
case $MY_SHELL in
|
||||||
"") break ;;
|
"")
|
||||||
|
warn_path "Couldn't figure out login shell!"
|
||||||
|
return
|
||||||
|
;;
|
||||||
fish)
|
fish)
|
||||||
mkdir -p "${GHCUP_PROFILE_FILE%/*}"
|
mkdir -p "${GHCUP_PROFILE_FILE%/*}"
|
||||||
sed -i -e '/# ghcup-env$/ s/^#*/#/' "${GHCUP_PROFILE_FILE}"
|
sed -i -e '/# ghcup-env$/ s/^#*/#/' "${GHCUP_PROFILE_FILE}"
|
||||||
@@ -365,15 +377,30 @@ adjust_bashrc() {
|
|||||||
echo "[ -f \"${GHCUP_DIR}/env\" ] && source \"${GHCUP_DIR}/env\" # ghcup-env" >> "${GHCUP_PROFILE_FILE}"
|
echo "[ -f \"${GHCUP_DIR}/env\" ] && source \"${GHCUP_DIR}/env\" # ghcup-env" >> "${GHCUP_PROFILE_FILE}"
|
||||||
break ;;
|
break ;;
|
||||||
esac
|
esac
|
||||||
|
echo
|
||||||
|
echo "==============================================================================="
|
||||||
|
echo
|
||||||
warn "OK! ${GHCUP_PROFILE_FILE} has been modified. Restart your terminal for the changes to take effect,"
|
warn "OK! ${GHCUP_PROFILE_FILE} has been modified. Restart your terminal for the changes to take effect,"
|
||||||
warn "or type \"source ${GHCUP_DIR}/env\" to apply them in your current terminal session."
|
warn "or type \"source ${GHCUP_DIR}/env\" to apply them in your current terminal session."
|
||||||
return
|
return
|
||||||
;;
|
;;
|
||||||
*)
|
*)
|
||||||
|
warn_path
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
|
warn_path() {
|
||||||
|
echo
|
||||||
|
echo "==============================================================================="
|
||||||
|
echo
|
||||||
|
[ -n "$1" ] && warn "$1"
|
||||||
|
yellow "In order to run ghc and cabal, you need to adjust your PATH variable."
|
||||||
|
yellow "To do so, you may want run 'source $GHCUP_DIR/env' in your current terminal"
|
||||||
|
yellow "session as well as your shell configuration (e.g. ~/.bashrc)."
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
adjust_cabal_config() {
|
adjust_cabal_config() {
|
||||||
edo cabal user-config -a "extra-prog-path: $(cygpath -w "$GHCUP_BIN"), $(cygpath -w "$HOME"/AppData/Roaming/cabal/bin), $(cygpath -w "$GHCUP_MSYS2"/usr/bin), $(cygpath -w "$GHCUP_MSYS2"/mingw64/bin)" -a "extra-include-dirs: $(cygpath -w "$GHCUP_MSYS2"/mingw64/include)" -a "extra-lib-dirs: $(cygpath -w "$GHCUP_MSYS2"/mingw64/lib)" -f init
|
edo cabal user-config -a "extra-prog-path: $(cygpath -w "$GHCUP_BIN"), $(cygpath -w "$HOME"/AppData/Roaming/cabal/bin), $(cygpath -w "$GHCUP_MSYS2"/usr/bin), $(cygpath -w "$GHCUP_MSYS2"/mingw64/bin)" -a "extra-include-dirs: $(cygpath -w "$GHCUP_MSYS2"/mingw64/include)" -a "extra-lib-dirs: $(cygpath -w "$GHCUP_MSYS2"/mingw64/lib)" -f init
|
||||||
}
|
}
|
||||||
@@ -615,36 +642,8 @@ case $ask_stack_answer in
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
|
|
||||||
|
adjust_bashrc $ask_bashrc_answer
|
||||||
|
|
||||||
# short-circuit script based on platform
|
|
||||||
case "${plat}" in
|
|
||||||
MSYS*|MINGW*)
|
|
||||||
# For windows we always adjust bashrc, since it's inside msys2
|
|
||||||
adjust_bashrc $adjust_bashrc_answer
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
if [ -z "${BOOTSTRAP_HASKELL_NONINTERACTIVE}" ] ; then
|
|
||||||
case $ask_bashrc_answer in
|
|
||||||
1 | 2)
|
|
||||||
echo
|
|
||||||
echo "==============================================================================="
|
|
||||||
echo
|
|
||||||
yellow "In order to run ghc and cabal, start a new shell or"
|
|
||||||
yellow "run 'source $GHCUP_DIR/env' in your current shell session."
|
|
||||||
adjust_bashrc $adjust_bashrc_answer
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo
|
|
||||||
echo "==============================================================================="
|
|
||||||
echo
|
|
||||||
yellow "In order to run ghc and cabal, you need to adjust your PATH variable."
|
|
||||||
yellow "You may want to source '$GHCUP_DIR/env' in your shell"
|
|
||||||
yellow "configuration to do so (e.g. ~/.bashrc)."
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
_done
|
_done
|
||||||
|
|
||||||
|
|||||||
@@ -2155,14 +2155,13 @@ ghcupDownloads:
|
|||||||
unknown_versioning: *stack-251-64
|
unknown_versioning: *stack-251-64
|
||||||
2.7.1:
|
2.7.1:
|
||||||
viTags:
|
viTags:
|
||||||
- Recommended
|
- old
|
||||||
- Latest
|
|
||||||
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v271
|
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v271
|
||||||
viPostInstall: *stack-post
|
viPostInstall: *stack-post
|
||||||
viArch:
|
viArch:
|
||||||
A_64:
|
A_64:
|
||||||
Linux_UnknownLinux:
|
Linux_UnknownLinux:
|
||||||
unknown_versioning: &stack-64
|
unknown_versioning: &stack-271-64
|
||||||
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.7.1/stack-2.7.1-linux-x86_64.tar.gz
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.7.1/stack-2.7.1-linux-x86_64.tar.gz
|
||||||
dlHash: 2bc47749ee4be5eccb52a2d4a6a00b0f3b28b92517742b40c675836d7db2777d
|
dlHash: 2bc47749ee4be5eccb52a2d4a6a00b0f3b28b92517742b40c675836d7db2777d
|
||||||
dlSubdir:
|
dlSubdir:
|
||||||
@@ -2180,5 +2179,33 @@ ghcupDownloads:
|
|||||||
dlSubdir:
|
dlSubdir:
|
||||||
RegexDir: "stack-.*"
|
RegexDir: "stack-.*"
|
||||||
Linux_Alpine:
|
Linux_Alpine:
|
||||||
unknown_versioning: *stack-64
|
unknown_versioning: *stack-271-64
|
||||||
|
2.7.3:
|
||||||
|
viTags:
|
||||||
|
- Latest
|
||||||
|
- Recommended
|
||||||
|
viChangeLog: https://github.com/commercialhaskell/stack/blob/master/ChangeLog.md#v273
|
||||||
|
viPostInstall: *stack-post
|
||||||
|
viArch:
|
||||||
|
A_64:
|
||||||
|
Linux_UnknownLinux:
|
||||||
|
unknown_versioning: &stack-273-64
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.7.3/stack-2.7.3-linux-x86_64.tar.gz
|
||||||
|
dlHash: a6c090555fa1c64aa61c29aa4449765a51d79e870cf759cde192937cd614e72b
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Darwin:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.7.3/stack-2.7.3-osx-x86_64.tar.gz
|
||||||
|
dlHash: 42e5000a00af44a7b26852421ac63ce75f510ad1a97742cb131107088ee9fe30
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Windows:
|
||||||
|
unknown_versioning:
|
||||||
|
dlUri: https://github.com/commercialhaskell/stack/releases/download/v2.7.3/stack-2.7.3-windows-x86_64.tar.gz
|
||||||
|
dlHash: e6ba12e0ecabf0df2567d88a0d247da238bc114bcccfca4195f5e86472c9330c
|
||||||
|
dlSubdir:
|
||||||
|
RegexDir: "stack-.*"
|
||||||
|
Linux_Alpine:
|
||||||
|
unknown_versioning: *stack-273-64
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user