Compare commits
4 Commits
fix-list-t
...
travis
| Author | SHA1 | Date | |
|---|---|---|---|
|
11c1b2cc6c
|
|||
|
45db3bd913
|
|||
|
6d76561340
|
|||
|
00caeba067
|
25
.travis.yml
Normal file
25
.travis.yml
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
jobs:
|
||||||
|
include:
|
||||||
|
- os: osx
|
||||||
|
osx_image: xcode10.1
|
||||||
|
language: generic
|
||||||
|
env: ARTIFACT=x86_64-apple-darwin-10.13-ghcup
|
||||||
|
|
||||||
|
- os: osx
|
||||||
|
osx_image: xcode11.3
|
||||||
|
language: generic
|
||||||
|
env: ARTIFACT=x86_64-apple-darwin-10.14-ghcup
|
||||||
|
|
||||||
|
|
||||||
|
script: ".travis/build.sh"
|
||||||
|
|
||||||
|
deploy:
|
||||||
|
provider: releases
|
||||||
|
api_key:
|
||||||
|
secure: "hT2od8Iy04tdFVuonPSWv0NX5hZDmv4al8Q0GbIWmviUetROuM7c6/MCHUcgyiw6H2L3pmH4F24GBYWpKBT3ZMbxrKXhZOZ3KPLXzlnuRlm1qymKqqwsJs3466bMftaiBr16rx1VpAuditN4A32oSmTFcQAJc84Bxn2WZ4t8hk9muS8YPyLhqg3/NxT6ob8dzNp9eS2cA0WODMb/fMzaMruRtepSK8JvuXb/SnTvaDcl9plmPzEa+eW54jwVsDps8ZpQMQlTtGIjYHIwTQ36/iLH4LoAvD7OEnB7qf753LOzmI/bvlB75xYGsLxe1qgpzPMjuG3AK0jb2KGSZCzyAyrbBFSQMIyC1gNKMtab3CohnA9WdQqAT1xrzPzA9zNw516G5Fn/z+t9Ek1f6L2OYO2hJfweNhWh+ChAIsOags2QBpqc0qjkwUS4wqxCWBdyVfgPTUoGelvjCfjQgypgIyLEHFvXt9rlj+kd97FY7nG3vxZrsvWTKKKT551OqUYX5zWTyvGR71jKyNst/p93Pg3DkRy31gHrGnG9zfNgN5tWxJqDd/suR/BAFTp0VtkFb8fR3ct7WMVeJXtE2+bKqxO5Fnocs1VjEm8pKPk7glnp0muu08kaO0h54wiSOCbk1RvO1KZtHue4wKWrHcI18dwW2WtzoBQ4P1lOSkS81UY="
|
||||||
|
file: $ARTIFACT
|
||||||
|
on:
|
||||||
|
repo: hasufell/ghcup-hs
|
||||||
|
tags: true
|
||||||
|
skip_cleanup: true
|
||||||
|
draft: true
|
||||||
28
.travis/build.sh
Executable file
28
.travis/build.sh
Executable file
@@ -0,0 +1,28 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
mkdir -p ~/.ghcup/bin
|
||||||
|
curl -sSfL https://downloads.haskell.org/~ghcup/x86_64-apple-darwin-ghcup > ~/.ghcup/bin/ghcup
|
||||||
|
chmod +x ~/.ghcup/bin/ghcup
|
||||||
|
|
||||||
|
export PATH="$HOME/.ghcup/bin:$PATH"
|
||||||
|
|
||||||
|
ghcup install 8.10.4
|
||||||
|
ghcup install-cabal 3.4.0.0
|
||||||
|
ghcup set 8.10.4
|
||||||
|
|
||||||
|
|
||||||
|
## install ghcup
|
||||||
|
|
||||||
|
cabal update
|
||||||
|
|
||||||
|
(
|
||||||
|
cd /tmp
|
||||||
|
cabal install --installdir="$HOME"/.ghcup/bin hspec-discover
|
||||||
|
)
|
||||||
|
|
||||||
|
cabal build --constraint="zlib +static" --constraint="lzma +static" -ftui
|
||||||
|
cp "$(cabal new-exec --verbose=0 --offline sh -- -c 'command -v ghcup')" .
|
||||||
|
strip ./ghcup
|
||||||
|
cp ghcup "./${ARTIFACT}"
|
||||||
17
CHANGELOG.md
17
CHANGELOG.md
@@ -1,8 +1,23 @@
|
|||||||
# Revision history for ghcup
|
# Revision history for ghcup
|
||||||
|
|
||||||
## 0.1.16 -- ????-??-??
|
## 0.1.16 -- 2021-07-28
|
||||||
|
|
||||||
* Add 'nuke' subcommand wrt [#135](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/135), implemented by Arjun Kathuria
|
* Add 'nuke' subcommand wrt [#135](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/135), implemented by Arjun Kathuria
|
||||||
|
* Add uninstallation powershell script on windows wrt [#150](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/150)
|
||||||
|
* Improve logging
|
||||||
|
* Fix building GHC cross compiler wrt [#180](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/180)
|
||||||
|
* Allow to use hadrian as build system (for git based versions only) wrt [#35](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/35)
|
||||||
|
* Allow passing `--flavor` to `ghcup compile ghc`
|
||||||
|
* Support new GHC `bin/` directory format wrt [ghc/ghc#20074](https://gitlab.haskell.org/ghc/ghc/-/issues/20074#note_363720)
|
||||||
|
* Implement `whereis` subcommand wrt [#173](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/173)
|
||||||
|
* Add `--offline` switch and `prefetch` subcommand wrt [#186](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/186)
|
||||||
|
* Implement ETAGs hashing for metadata downloads to speed up `ghcup list` wrt [#193](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/193)
|
||||||
|
* Avoid unnecessary fetching of ghcup metadata in some commands
|
||||||
|
* Avoid unnecessary update checks for some commands
|
||||||
|
* Preserve mtimes on unpacked GHC tarballs on windows wrt [#187](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/187), fixing issues with `ghc-pkg`
|
||||||
|
* Fix lesser bug in `ghcup list` for stray stack versions wrt [#183](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/183)
|
||||||
|
* Major redo on how file removal on windows works, avoiding partial removals etc, wrt [#165](https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/165)
|
||||||
|
* Improve ghcup tui for screen readers wrt [github/#4](https://github.com/haskell/ghcup-hs/pull/4), thanks to Mario Lang
|
||||||
|
|
||||||
## 0.1.15.2 -- 2021-06-13
|
## 0.1.15.2 -- 2021-06-13
|
||||||
|
|
||||||
|
|||||||
31
README.md
31
README.md
@@ -230,6 +230,29 @@ to figure out whether you have the correct toolchain and
|
|||||||
the correct dependencies. Refer to [the official docs](https://ghc.haskell.org/trac/ghc/wiki/Building/Preparation/Linux)
|
the correct dependencies. Refer to [the official docs](https://ghc.haskell.org/trac/ghc/wiki/Building/Preparation/Linux)
|
||||||
on how to prepare your environment for building GHC.
|
on how to prepare your environment for building GHC.
|
||||||
|
|
||||||
|
### Stack support
|
||||||
|
|
||||||
|
There may be a number of bugs when trying to make ghcup installed GHC versions work with stack,
|
||||||
|
such as:
|
||||||
|
|
||||||
|
- https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/188
|
||||||
|
|
||||||
|
Further, stack's upgrade procedure may break/confuse ghcup. There are a number of integration
|
||||||
|
issues discussed here:
|
||||||
|
|
||||||
|
- https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/153
|
||||||
|
|
||||||
|
### Windows support
|
||||||
|
|
||||||
|
Windows support is in early stages. Since windows doesn't support symbolic links properly,
|
||||||
|
ghcup uses a [shimgen wrapper](https://github.com/71/scoop-better-shimexe). It seems to work
|
||||||
|
well, but there may be unknown issues with that approach.
|
||||||
|
|
||||||
|
Windows 7 and Powershell 2.0 aren't well supported at the moment, also see:
|
||||||
|
|
||||||
|
- https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/140
|
||||||
|
- https://gitlab.haskell.org/haskell/ghcup-hs/-/issues/197
|
||||||
|
|
||||||
## FAQ
|
## FAQ
|
||||||
|
|
||||||
1. Why reimplement stack?
|
1. Why reimplement stack?
|
||||||
@@ -242,4 +265,10 @@ We do.
|
|||||||
|
|
||||||
3. Why the haskell reimplementation?
|
3. Why the haskell reimplementation?
|
||||||
|
|
||||||
:-)
|
ghcup started as a portable posix shell script of maybe 50 LOC. GHC installation itself can be carried out in
|
||||||
|
about ~3 lines of shell code (download, unpack , configure+make install). However, much convenient functionality
|
||||||
|
has been added since, as well as ensuring that all operations are safe and correct. The shell script ended up with
|
||||||
|
over 2k LOC, which was very hard to maintain.
|
||||||
|
The main concern when switching from a portable shell script to haskell was platform/architecture support.
|
||||||
|
However, ghcup now re-uses GHCs CI infrastructure and as such is perfectly in sync with all platforms that
|
||||||
|
GHC supports.
|
||||||
|
|||||||
Reference in New Issue
Block a user