Skip to content

Commit

Permalink
Update supported platforms and download links
Browse files Browse the repository at this point in the history
  • Loading branch information
borsboom committed Apr 18, 2018
1 parent 8c16f42 commit 9a23b91
Show file tree
Hide file tree
Showing 12 changed files with 80 additions and 38 deletions.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Question related to stack project templates? Please report it at the [stack-temp

If you're reporting a bug please follow the steps below:

Make sure that you are using the latest release (currently stack-1.6.5).
Make sure that you are using the latest release (currently stack-1.7.1).
See the [upgrade instructions](http://docs.haskellstack.org/en/stable/install_and_upgrade/#upgrade) to upgrade.

Please use the following schema for your bug report:
Expand Down
4 changes: 2 additions & 2 deletions .travis-setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,11 +8,11 @@ travis_retry() {
}

fetch_stack_osx() {
curl -skL https://www.stackage.org/stack/osx-x86_64 | tar xz --strip-components=1 --include '*/stack' -C ~/.local/bin;
curl -skL https://get.haskellstack.org/stable/osx-x86_64.tar.gz | tar xz --strip-components=1 --include '*/stack' -C ~/.local/bin;
}

fetch_stack_linux() {
curl -sL https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack';
curl -sL https://get.haskellstack.org/stable/linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack';
}

# We need stack to generate cabal files with precise bounds, even for cabal
Expand Down
8 changes: 7 additions & 1 deletion ChangeLog.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,12 @@ Bug fixes:

## v1.7.0.1 (release candidate)

Release notes:

* aarch64 (64-bit ARM) bindists are now available for the first time.
* Statically linked Linux bindists are no longer available, since there is no working GHC 8.2.2 on Alpine Linux.
* 32-bit Linux GMP4 bindists for CentOS 6 are no longer available, since GHC 8.2.2 is no longer being built for that platform.

Major changes:

* Upgrade from Cabal 2.0 to Cabal 2.2
Expand Down Expand Up @@ -796,7 +802,7 @@ Release notes:
version 1.1.2 for now on those architectures. This will be rectified soon!

* We are now releasing a
[statically linked Stack binary for 64-bit Linux](https://www.stackage.org/stack/linux-x86_64-static).
[statically linked Stack binary for 64-bit Linux](https://get.haskellstack.org/stable/linux-x86_64-static.tar.gz).
Please try it and let us know if you run into any trouble on your platform.

* We are planning some changes to our Linux releases, including dropping our
Expand Down
2 changes: 1 addition & 1 deletion appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ before_test:
# http://help.appveyor.com/discussions/problems/6312-curl-command-not-found
- set PATH=C:\Program Files\Git\mingw64\bin;%PATH%

- curl -sS -ostack.zip -L --insecure http://www.stackage.org/stack/windows-i386
- curl -sS -ostack.zip -L --insecure https://get.haskellstack.org/stable/windows-i386.zip
- 7z x stack.zip stack.exe

clone_folder: "c:\\stack"
Expand Down
2 changes: 1 addition & 1 deletion doc/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ or:
wget -qO- https://get.haskellstack.org/ | sh

On Windows, you can download and install the
[Windows 64-bit Installer](https://www.stackage.org/stack/windows-x86_64-installer).
[Windows 64-bit Installer](https://get.haskellstack.org/stable/windows-x86_64-installer.exe).

For detailed instructions and downloads, including many additional
operating systems, check out the
Expand Down
2 changes: 1 addition & 1 deletion doc/appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ before_test:
# http://help.appveyor.com/discussions/problems/6312-curl-command-not-found
- set PATH=C:\Program Files\Git\mingw64\bin;%PATH%

- curl -sS -ostack.zip -L --insecure http://www.stackage.org/stack/windows-x86_64
- curl -sS -ostack.zip -L --insecure https://get.haskellstack.org/stable/windows-x86_64.zip
- 7z x stack.zip stack.exe

clone_folder: "c:\\stack"
Expand Down
33 changes: 20 additions & 13 deletions doc/install_and_upgrade.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,16 +21,15 @@ future, we are open to supporting more OSes (to request one, please
Binary packages are signed with this [signing key](SIGNING_KEY.md).

If you are writing a script that needs to download the latest binary, you can
find links that always point to the latest bindists
[here](https://www.stackage.org/stack).
use URLs like `https://get.haskellstack.org/stable/<PLATFORM>.<EXTENSION>` (e.g. //get.haskellstack.org/stable/linux-x86_64.tar.gz) that always point to the latest stable release.

## Windows

We recommend installing to the default location with these installers, as that
will make `stack install` and `stack upgrade` work correctly out of the box.

* [Windows 64-bit Installer](https://www.stackage.org/stack/windows-x86_64-installer)
* [Windows 32-bit Installer](https://www.stackage.org/stack/windows-i386-installer)
* [Windows 64-bit Installer](https://get.haskellstack.org/stable/windows-x86_64-installer.exe)
* [Windows 32-bit Installer](https://get.haskellstack.org/stable/windows-i386-installer.exe)

If in doubt: you should prefer the 64-bit installer.

Expand All @@ -42,8 +41,8 @@ starting" warning when you try to run the installer. If so, click on

* Download the latest release:

* [Windows 64-bit](https://www.stackage.org/stack/windows-x86_64)
* [Windows 32-bit](https://www.stackage.org/stack/windows-i386)
* [Windows 64-bit](https://get.haskellstack.org/stable/windows-x86_64.zip)
* [Windows 32-bit](https://get.haskellstack.org/stable/windows-i386.zip)

* Unpack the archive and place `stack.exe` somewhere on your `%PATH%` (see
[Path section below](#path)) and you can then run `stack` on the command line.
Expand All @@ -65,7 +64,7 @@ Run:
### Manual download

* Download the latest release:
* [macOS 64-bit](https://www.stackage.org/stack/osx-x86_64)
* [macOS 64-bit](https://get.haskellstack.org/stable/osx-x86_64.tar.gz)
* Extract the archive and place `stack` somewhere on your `$PATH` (see
[Path section below](#path))
* Now you can run `stack` from the terminal.
Expand Down Expand Up @@ -106,7 +105,7 @@ There is also a [Ubuntu
package](http://packages.ubuntu.com/search?keywords=haskell-stack&searchon=names&suite=all&section=all)
for Ubuntu 16.10 and up, but the distribution's Stack version lags behind, so we
recommend running `stack upgrade --binary` after installing it. For older stack
versions which do not support `--binary`, just `stack upgrade` is fine too. The
versions which do not support `--binary`, just `stack upgrade` may work too. The
version in Ubuntu 16.04 is too old to upgrade successfully, and so in that case
stack should be installed from a [release
tarball](https://github.com/commercialhaskell/stack/releases).
Expand All @@ -119,7 +118,7 @@ There is also a [Debian
package](https://packages.debian.org/search?keywords=haskell-stack&searchon=names&suite=all&section=all)
for Stretch and up, but the distribution's Stack version lags behind, so running
`stack upgrade --binary` is recommended after installing it. For older stack
versions which do not support `--binary`, just `stack upgrade` is fine too.
versions which do not support `--binary`, just `stack upgrade` may work too.

## <a name="centos"></a>CentOS / Red Hat / Amazon Linux

Expand Down Expand Up @@ -233,14 +232,22 @@ or:

* Download the latest release:

* [Linux 64-bit, static](https://www.stackage.org/stack/linux-x86_64-static)
* [Linux 64-bit, standard](https://get.haskellstack.org/stable/linux-x86_64.tar.gz)

* [Linux 32-bit, standard](https://www.stackage.org/stack/linux-i386)
* [Linux 64-bit, libgmp4](https://get.haskellstack.org/stable/linux-x86_64-gmp4.tar.gz)
(if you are on an older 64-bit distribution that only includes libgmp4
(libgmp.so.3), such as CentOS/RHEL/Amazon Linux 6.)

* [Linux 32-bit, standard](https://get.haskellstack.org/stable/linux-i386.tar.gz)

* [Linux 32-bit, libgmp4](https://www.stackage.org/stack/linux-i386-gmp4)
* [Linux 32-bit, libgmp4](https://get.haskellstack.org/stable/linux-i386-gmp4.tar.gz)
(if you are on an older 32-bit distribution that only includes libgmp4
(libgmp.so.3), such as CentOS/RHEL/Amazon Linux 6.)

* [Linux ARMv7](https://get.haskellstack.org/stable/linux-arm.tar.gz)

* [Linux AArch64](https://get.haskellstack.org/stable/linux-aarch64.tar.gz)

* Extract the archive and place `stack` somewhere on your `$PATH` (see [Path section below](#path))

* Ensure you have required system dependencies installed. These include GCC, GNU make, xz, perl, libgmp, libffi, and zlib. We also recommend Git and GPG. To install these using your package manager:
Expand Down Expand Up @@ -279,7 +286,7 @@ Run:

* Download the latest release:

* [FreeBSD 64-bit](https://www.stackage.org/stack/freebsd-x86_64)
* [FreeBSD 64-bit](https://get.haskellstack.org/stable/freebsd-x86_64.tar.gz)

* Extract the archive and place `stack` somewhere on your `$PATH` (see [Path section below](#path))

Expand Down
4 changes: 2 additions & 2 deletions doc/travis-complex.yml
Original file line number Diff line number Diff line change
Expand Up @@ -157,9 +157,9 @@ before_install:
- |
if [ `uname` = "Darwin" ]
then
travis_retry curl --insecure -L https://www.stackage.org/stack/osx-x86_64 | tar xz --strip-components=1 --include '*/stack' -C ~/.local/bin
travis_retry curl --insecure -L https://get.haskellstack.org/stable/osx-x86_64.tar.gz | tar xz --strip-components=1 --include '*/stack' -C ~/.local/bin
else
travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
travis_retry curl -L https://get.haskellstack.org/stable/linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
fi
# Use the more reliable S3 mirror of Hackage
Expand Down
2 changes: 1 addition & 1 deletion doc/travis-simple.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ before_install:
# Download and unpack the stack executable
- mkdir -p ~/.local/bin
- export PATH=$HOME/.local/bin:$PATH
- travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
- travis_retry curl -L https://get.haskellstack.org/stable/linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'

install:
# Build dependencies
Expand Down
2 changes: 1 addition & 1 deletion doc/travis_ci.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@ before_install:
# Download and unpack the stack executable
- mkdir -p ~/.local/bin
- export PATH=$HOME/.local/bin:$PATH
- travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
- travis_retry curl -L https://get.haskellstack.org/stable/linux-x86_64.tar.gz | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'
```

## Installing GHC
Expand Down
55 changes: 42 additions & 13 deletions etc/scripts/get-stack.sh
Original file line number Diff line number Diff line change
Expand Up @@ -63,8 +63,10 @@ post_install_separator() {

# determines the the CPU's instruction set
get_isa() {
if arch | grep -q arm ; then
if arch | grep -q armv7 ; then
echo arm
elif arch | grep -q aarch64 ; then
echo aarch64
else
echo x86
fi
Expand All @@ -75,6 +77,11 @@ is_arm() {
test "$(get_isa)" = arm
}

# exits with code 0 if aarch64 ISA is detected as described above
is_aarch64() {
test "$(get_isa)" = aarch64
}


# determines 64- or 32-bit architecture
# if getconf is available, it will return the arch of the OS, as desired
Expand Down Expand Up @@ -145,10 +152,14 @@ do_ubuntu_install() {
install_dependencies
print_bindist_notice
install_arm_binary
elif is_aarch64 ; then
install_dependencies
print_bindist_notice
install_aarch64_binary
elif is_64_bit ; then
install_dependencies
print_bindist_notice
install_64bit_static_binary
install_64bit_standard_binary
else
install_dependencies
print_bindist_notice
Expand All @@ -171,10 +182,14 @@ do_debian_install() {
install_dependencies
print_bindist_notice
install_arm_binary
elif is_aarch64 ; then
install_dependencies
print_bindist_notice
install_aarch64_binary
elif is_64_bit ; then
install_dependencies
print_bindist_notice
install_64bit_static_binary
install_64bit_standard_binary
else
install_dependencies
print_bindist_notice
Expand All @@ -194,7 +209,7 @@ do_fedora_install() {
if is_64_bit ; then
install_dependencies "$1"
print_bindist_notice
install_64bit_static_binary
install_64bit_standard_binary
else
install_dependencies "$1"
print_bindist_notice
Expand All @@ -213,8 +228,16 @@ do_centos_install() {

if is_64_bit ; then
install_dependencies
print_bindist_notice
install_64bit_static_binary
case "$1" in
"6")
print_bindist_notice "libgmp4"
install_64bit_gmp4_linked_binary
;;
*)
print_bindist_notice
install_64bit_standard_binary
;;
esac
else
install_dependencies
case "$1" in
Expand Down Expand Up @@ -263,7 +286,7 @@ do_alpine_install() {
}
install_dependencies
if is_64_bit ; then
install_64bit_static_binary
die "Sorry, there is currently no 64-bit Alpine Linux binary available."
else
die "Sorry, there is currently no 32-bit Alpine Linux binary available."
fi
Expand All @@ -277,11 +300,13 @@ do_sloppy_install() {
info ""

if is_arm ; then
install_arm_binary
install_arm_binary
elif is_aarch64 ; then
install_aarch64_binary
elif is_64_bit ; then
install_64bit_static_binary
install_64bit_standard_binary
else
install_32bit_standard_binary
install_32bit_standard_binary
fi
info "Since this installer doesn't support your Linux distribution,"
info "there is no guarantee that 'stack' will work at all! You may"
Expand Down Expand Up @@ -454,7 +479,7 @@ check_dl_tools() {

# Download a Stack bindst and install it in /usr/local/bin/stack.
install_from_bindist() {
IFB_URL="https://www.stackage.org/stack/$1"
IFB_URL="https://get.haskellstack.org/stable/$1.tar.gz"
check_dl_tools
make_temp_dir

Expand Down Expand Up @@ -498,14 +523,18 @@ install_32bit_standard_binary() {
install_from_bindist "linux-i386"
}

install_64bit_static_binary() {
install_from_bindist "linux-x86_64-static"
install_aarch64_binary() {
install_from_bindist "linux-aarch64"
}

install_32bit_gmp4_linked_binary() {
install_from_bindist "linux-i386-gmp4"
}

install_64bit_gmp4_linked_binary() {
install_from_bindist "linux-x86_64-gmp4"
}

install_64bit_osx_binary() {
install_from_bindist "osx-x86_64"
}
Expand Down
2 changes: 1 addition & 1 deletion package.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ custom-setup:
- Cabal
- filepath
extra-source-files:
# note: leaving out 'package.yaml' because it causes confusion with hackage metadata revisions
- CONTRIBUTING.md
- ChangeLog.md
- README.md
- doc/*.md
- package.yaml
- src/setup-shim/StackSetupShim.hs
- stack.yaml
- test/package-dump/ghc-7.10.txt
Expand Down

0 comments on commit 9a23b91

Please sign in to comment.