Skip to content

Commit 4a69b61

Browse files
committed
doc/install_and_upgrade: remove APT/YUM repos
This removes references to the FP Complete Ubuntu, Debian, Fedora, and CentOS repositories and generally recommends the installer script or manual install instead. It also provides more pointers to official and third-party package repositories.
1 parent 36d23fc commit 4a69b61

File tree

1 file changed

+70
-108
lines changed

1 file changed

+70
-108
lines changed

doc/install_and_upgrade.md

Lines changed: 70 additions & 108 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Install/upgrade
22

3-
For many Un*x operating systems, all you need to do is run:
3+
For common Un*x operating systems (including macOS), all you need to do is run:
44

55
curl -sSL https://get.haskellstack.org/ | sh
66

@@ -9,8 +9,8 @@ or:
99
wget -qO- https://get.haskellstack.org/ | sh
1010

1111
Distribution packages are available for [Ubuntu](#ubuntu), [Debian](#debian),
12-
[CentOS / Red Hat / Amazon Linux](#centos), [Fedora](#fedora),
13-
[Arch Linux](#arch-linux) and unofficially [FreeBSD](#freebsd).
12+
[Fedora](#fedora),
13+
[Arch Linux](#arch-linux) and [FreeBSD](#freebsd).
1414
Binaries for other operating systems are listed below, and available on
1515
[the Github releases page](https://github.com/fpco/stack/releases). For the
1616
future, we are open to supporting more OSes (to request one, please
@@ -72,6 +72,12 @@ dependencies. See
7272
[#2577](https://github.com/commercialhaskell/stack/issues/2577) for more
7373
information.
7474

75+
### Installer script
76+
77+
Run:
78+
79+
curl -sSL https://get.haskellstack.org/ | sh
80+
7581
### Manual download
7682

7783
* Download the latest release:
@@ -83,7 +89,7 @@ information.
8389
### Using Homebrew
8490

8591
**macOS Sierra warning**: Homebrew's haskell-stack formula may not currently
86-
work on Sierra, so we suggest using the manual above for now.
92+
work on Sierra, so we suggest using the manual method above for now.
8793

8894
If you have a popular [brew](http://brew.sh/) tool installed, you can just do:
8995

@@ -110,112 +116,46 @@ problems, see the linked FAQ entries:
110116

111117
## Ubuntu
112118

113-
*note*: for 32-bit, use the [generic Linux option](#linux)
114-
115-
1. Get the FP Complete key:
116-
117-
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 575159689BEFB442
118-
119-
2. Add the appropriate source repository (if not sure, run ``lsb_release -a`` to find out your Ubuntu version):
120-
121-
* Ubuntu 16.10 (amd64):
122-
123-
echo 'deb http://download.fpcomplete.com/ubuntu yakkety main'|sudo tee /etc/apt/sources.list.d/fpco.list
124-
125-
* Ubuntu 16.04 (amd64):
126-
127-
echo 'deb http://download.fpcomplete.com/ubuntu xenial main'|sudo tee /etc/apt/sources.list.d/fpco.list
128-
129-
* Ubuntu 15.10 (amd64):
130-
131-
echo 'deb http://download.fpcomplete.com/ubuntu wily main'|sudo tee /etc/apt/sources.list.d/fpco.list
132-
133-
* Ubuntu 14.04 (amd64)
134-
135-
echo 'deb http://download.fpcomplete.com/ubuntu trusty main'|sudo tee /etc/apt/sources.list.d/fpco.list
136-
137-
* Ubuntu 12.04 (amd64)
138-
139-
echo 'deb http://download.fpcomplete.com/ubuntu precise main'|sudo tee /etc/apt/sources.list.d/fpco.list
140-
141-
3. Update apt and install
119+
Use the [generic Linux option](#linux).
142120

143-
sudo apt-get update && sudo apt-get install stack -y
121+
There is also
122+
a
123+
[Ubuntu package](http://packages.ubuntu.com/search?keywords=haskell-stack&searchon=names&suite=all&section=all) for
124+
Ubuntu 16.04 and up. Note that the distribution's Stack version lags behind, so
125+
we recommend running `stack upgrade` after installing it.
144126

145127
## Debian
146128

147-
*note*: for 32-bit, use the [generic Linux option](#linux)
129+
Use the [generic Linux option](#linux).
148130

149-
1. Get the FP Complete key:
150-
151-
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 575159689BEFB442
152-
153-
2. Add the appropriate source repository:
154-
155-
* Debian 8 (amd64):
156-
157-
echo 'deb http://download.fpcomplete.com/debian jessie main'|sudo tee /etc/apt/sources.list.d/fpco.list
158-
159-
* Debian 7 (amd64)
160-
161-
echo 'deb http://download.fpcomplete.com/debian wheezy main'|sudo tee /etc/apt/sources.list.d/fpco.list
162-
163-
For unstable Debian distributions, the package from the most recent stable
164-
release will usually work. If it doesn't, please
165-
[report it](https://github.com/commercialhaskell/stack/issues/new).
166-
167-
3. Update apt and install
168-
169-
sudo apt-get update && sudo apt-get install stack -y
131+
There is also
132+
a
133+
[Debian package](https://packages.debian.org/search?keywords=haskell-stack&searchon=names&suite=all&section=all) for
134+
Stretch and up. Note that the distribution's Stack version lags behind, so
135+
we recommend running `stack upgrade` after installing it.
170136

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

173-
*note*: for 32-bit, use the [generic Linux option](#linux)
174-
175-
1. Add the appropriate source repository:
176-
177-
* CentOS 7 / RHEL 7 (x86_64)
178-
179-
curl -sSL https://download.fpcomplete.com/centos/7/fpco.repo | sudo tee /etc/yum.repos.d/fpco.repo
180-
181-
* CentOS 6 / RHEL 6 (x86_64)
182-
183-
curl -sSL https://download.fpcomplete.com/centos/6/fpco.repo | sudo tee /etc/yum.repos.d/fpco.repo
184-
185-
2. Install:
186-
187-
sudo yum -y install stack
139+
Use the [generic Linux option](#linux).
188140

189141
## Fedora
190142

191-
*Note*: for 32-bit, you can use this
192-
[Fedora Copr repo](https://copr.fedoraproject.org/coprs/petersen/stack/) (not
193-
managed by the Stack release team, so not guaranteed to have the very latest
194-
version) which can be enabled with: `sudo dnf copr enable petersen/stack`
195-
196-
1. Add the appropriate source repository:
143+
Use the [generic Linux option](#linux).
197144

198-
* Fedora 24 (x86_64)
199-
200-
curl -sSL https://download.fpcomplete.com/fedora/24/fpco.repo | sudo tee /etc/yum.repos.d/fpco.repo
201-
202-
* Fedora 23 (x86_64)
203-
204-
curl -sSL https://download.fpcomplete.com/fedora/23/fpco.repo | sudo tee /etc/yum.repos.d/fpco.repo
205-
206-
* Fedora 22 (x86_64)
207-
208-
curl -sSL https://download.fpcomplete.com/fedora/22/fpco.repo | sudo tee /etc/yum.repos.d/fpco.repo
209-
210-
2. Install:
211-
212-
sudo dnf -y install stack
145+
There is also an
146+
unofficial
147+
[Fedora Copr repo](https://copr.fedoraproject.org/coprs/petersen/stack/) which
148+
can be enabled with: `sudo dnf copr enable petersen/stack`. Note that this Stack
149+
version may lag behind, so we recommend running `stack upgrade` after installing
150+
it.
213151

214152
## <a name="suse"></a>openSUSE / SUSE Linux Enterprise
215153

216-
*Note:* openSUSE's and SLE's `stack` package isn't managed by the Stack release
217-
team, and since it is based on the version in Stackage LTS, and may lag new
218-
releases by ten days or more.
154+
Use the [generic Linux option](#linux).
155+
156+
There is also an unofficial SUSE package. Note that this Stack
157+
version may lag behind, so we recommend running `stack upgrade` after installing
158+
it. To install it:
219159

220160
1. Add the appropriate OBS repository:
221161

@@ -237,12 +177,7 @@ releases by ten days or more.
237177

238178
## Arch Linux
239179

240-
*Note:* `stack` package in the [community] repository isn't managed by the
241-
Stack release team. Depending on the maintainer's availability, it can lag
242-
new releases by some days.
243-
244-
- [stack](https://www.archlinux.org/packages/community/x86_64/stack/) _latest stable version_
245-
- [haskell-stack-git](https://aur.archlinux.org/packages/haskell-stack-git/) _git version_
180+
Use the [generic Linux option](#linux).
246181

247182
In order to use `stack setup` with older versions of GHC or on a 32-bit system,
248183
you may need the
@@ -254,6 +189,13 @@ If you use the
254189
[ArchHaskell repository](https://wiki.archlinux.org/index.php/ArchHaskell), you
255190
can also get the `haskell-stack-tool` package from there.
256191

192+
There is also an unofficial package in the Arch community repository. Note that this Stack
193+
version may lag behind, so we recommend running `stack upgrade` after installing
194+
it.
195+
196+
- [stack](https://www.archlinux.org/packages/community/x86_64/stack/) _latest stable version_
197+
- [haskell-stack-git](https://aur.archlinux.org/packages/haskell-stack-git/) _git version_
198+
257199
## NixOS
258200

259201
Users who follow the `nixos-unstable` channel or the Nixpkgs `master` branch can install the latest `stack` release into their profile by running:
@@ -280,19 +222,29 @@ For more information on using Stack together with Nix, please see [the NixOS
280222
manual section on
281223
Stack](http://nixos.org/nixpkgs/manual/#how-to-build-a-haskell-project-using-stack).
282224

283-
## Linux
225+
## <a name="linux"></a>Linux (generic)
226+
227+
### Installer script
228+
229+
Run:
230+
231+
curl -sSL https://get.haskellstack.org/ | sh
284232

285-
(64-bit and 32-bit options available)
233+
or:
234+
235+
wget -qO- https://get.haskellstack.org/ | sh
236+
237+
### Manual download
286238

287239
* Download the latest release:
288240

289-
* [Linux 64-bit, standard](https://www.stackage.org/stack/linux-x86_64)
290-
* [Linux 32-bit, standard](https://www.stackage.org/stack/linux-i386)
241+
* [Linux 64-bit, static](https://www.stackage.org/stack/linux-x86_64-static)
291242

292-
If you are on an older distribution that only includes libgmp4 (libgmp.so.3), such as CentOS/RHEL/Amazon Linux 6.x, use one of these instead:
243+
* [Linux 32-bit, standard](https://www.stackage.org/stack/linux-i386)
293244

294-
* [Linux 64-bit, libgmp4](https://www.stackage.org/stack/linux-x86_64-gmp4)
295245
* [Linux 32-bit, libgmp4](https://www.stackage.org/stack/linux-i386-gmp4)
246+
(if you are on an older 32-bit distribution that only includes libgmp4
247+
(libgmp.so.3), such as CentOS/RHEL/Amazon Linux 6.)
296248

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

@@ -318,6 +270,14 @@ Stack](http://nixos.org/nixpkgs/manual/#how-to-build-a-haskell-project-using-sta
318270

319271
(only 64-bit currently available, tested on FreeBSD 10.3-RELEASE)
320272

273+
### Installer script
274+
275+
Run:
276+
277+
curl -sSL https://get.haskellstack.org/ | sh
278+
279+
### Manual download
280+
321281
* Install required dependencies:
322282

323283
pkg install devel/gmake perl5 lang/gcc misc/compat8x misc/compat9x converters/libiconv ca_root_nss
@@ -355,6 +315,8 @@ For more information and other shells, see [the shell auto-completion page](shel
355315

356316
There are essentially three different approaches to upgrade:
357317

318+
* The `stack` tool itself ships with an `upgrade` command, which will build `stack` from source and install it to the default install path (see the previous section). You can use `stack upgrade` to get the latest official release, and `stack upgrade --git` to install from Git and live on the bleeding edge. If you follow this, make sure that this directory is on your `PATH` and takes precedence over the system installed `stack`. For more information, see [this discussion](https://github.com/commercialhaskell/stack/issues/237#issuecomment-126793301).
319+
358320
* If you're using a package manager (e.g., the Ubuntu debs listed above) and are happy with sticking with the officially released binaries, simply follow your normal package manager strategies for upgrading (e.g. `apt-get update && apt-get upgrade`).
321+
359322
* If you're not using a package manager but want to stick with the official binaries (such as on Windows or Mac), you'll need to manually follow the steps above to download the newest binaries from the release page and replace the old binary.
360-
* The `stack` tool itself ships with an `upgrade` command, which will build `stack` from source and install it to the default install path (see the previous section). You can use `stack upgrade` to get the latest official release, and `stack upgrade --git` to install from Git and live on the bleeding edge. If you follow this, make sure that this directory is on your `PATH` and takes precedence over the system installed `stack`. For more information, see [this discussion](https://github.com/commercialhaskell/stack/issues/237#issuecomment-126793301).

0 commit comments

Comments
 (0)