Compare commits
159 Commits
issue-135
...
HLS-2.7.0.
| Author | SHA1 | Date | |
|---|---|---|---|
| 970c2bf6fa | |||
| eb4a09e61c | |||
| 900bd360fe | |||
| f2f8784adf | |||
| d55e426431 | |||
| 487d818c4b | |||
| bef4f9cdeb | |||
| cac4281b4e | |||
| 195a8db791 | |||
|
|
ceddc91bbb | ||
|
|
e2510ee0a5 | ||
|
|
0b9211ee4a | ||
|
|
54b32c287a | ||
|
|
a4f1e138df | ||
| d345ae6edd | |||
| 3679dde28e | |||
| de91dadf5f | |||
| fb1102a779 | |||
| 7bb3e8dab8 | |||
| ba379f1545 | |||
| 80e1d2443f | |||
|
|
a994cb2632 | ||
|
|
7c4d1fbec7 | ||
|
|
dfdf0d8de5 | ||
|
|
e065282f9c | ||
| 13878c1718 | |||
| df03513b8f | |||
| 805da33550 | |||
|
|
2bc225772c | ||
| d7770f9e23 | |||
| f8e0ec9b12 | |||
| 6c6e2241bb | |||
| f6ef3672ba | |||
| cf678f25a0 | |||
| 8d715cf0a5 | |||
|
|
0404f1bee5 | ||
| 441cf7328f | |||
| 5d2a8921b1 | |||
| 66c91f75b1 | |||
|
|
a6c8849dcb | ||
|
|
3c173efdc4 | ||
| 487b049ae1 | |||
| 75abeb4731 | |||
| ff8aa8a0dd | |||
|
|
2bfdba63c9 | ||
|
|
3ecc0fb399 | ||
|
|
147e54ae6c | ||
| ec519eb080 | |||
| 4f3a14ed90 | |||
| 703e930808 | |||
| 41fe6ba6f0 | |||
| 8ac41d2124 | |||
| dd975d630a | |||
| 582ffbc09f | |||
| 0471ccf394 | |||
| fbc0843e53 | |||
| cfa97b75bf | |||
| 0c2846b037 | |||
| 015db18a25 | |||
| 9ebb937b37 | |||
| 25f6f8cfad | |||
| 14d47470ca | |||
| 0bc52f0cf3 | |||
| 2b84274a65 | |||
| c63fd65f90 | |||
| a4fbe645e3 | |||
| 7e1a50cfff | |||
| cb7d0c2f75 | |||
| e54435c057 | |||
| 95c57ba3e4 | |||
| f2c6c71cf0 | |||
| 2f761fc6fd | |||
| a4bc77356f | |||
|
|
f3264e2554 | ||
|
|
54bd184feb | ||
|
|
f413a1847b | ||
| 9a02e03efa | |||
| aec5468b14 | |||
| 69cec748d2 | |||
| 7f8a37de45 | |||
| 779120126e | |||
| af900f6ff0 | |||
| 1fc03b2c69 | |||
| dea08aac35 | |||
| 80b933b01b | |||
| 82d1fda68b | |||
| 96bf980545 | |||
| b20ad626e5 | |||
| cb3428749a | |||
| 178aaaaa23 | |||
| c489e5198e | |||
| 1936f88d5f | |||
| 578dc5e6d2 | |||
| 286d447f3d | |||
| 68b424fff3 | |||
| dc6d43ddba | |||
| 174ff702a5 | |||
| 6e3fef8e15 | |||
| fae0dc57ee | |||
| befd7b563e | |||
| 15dec1bfe8 | |||
| bbd150a777 | |||
| 567fdeba31 | |||
| 44c4df7024 | |||
| f755827e5e | |||
| a5bc56c914 | |||
| 601b3e8d33 | |||
| eb717c5a12 | |||
| 48e58345b0 | |||
| 407cc0fafe | |||
| 6b3f8f0732 | |||
| f6de249dc1 | |||
| b928b5e0dd | |||
| 999be172de | |||
| 67885734c9 | |||
| 988dcdac63 | |||
| 0f13265d12 | |||
|
|
967d4a81ab | ||
| b81e05d21e | |||
| a586bd5dba | |||
| a1a80e41c9 | |||
| e9cc5626cb | |||
| cb09653a1b | |||
| 7bf64b363e | |||
| f1f8eb8d7c | |||
| 772e54b936 | |||
| 10ae84aa7b | |||
| 0ae75a25ef | |||
| 16fb138bbe | |||
|
|
6786ac32c0 | ||
|
|
9d6836aa76 | ||
| 0239166c31 | |||
| 025f276131 | |||
| cae42448a0 | |||
| 56d759176e | |||
| df143e226f | |||
| e914259ed7 | |||
|
|
48cae51c31 | ||
| 173d03ef56 | |||
| c806339f69 | |||
| 68633d49a5 | |||
| 7625d4bf83 | |||
| 2efadd4588 | |||
| 4917c671bf | |||
|
|
dd4f6ff001 | ||
|
|
70eccfe8d6 | ||
|
|
0fde7e8686 | ||
|
|
c1764cadab | ||
|
|
1a5a7f3db4 | ||
|
|
43f4782658 | ||
| 374a68e074 | |||
| 493c2c81f4 | |||
| 041f8b1421 | |||
| b62f7ffa3b | |||
| 6ee7342fe3 | |||
| 1d43217082 | |||
| 4ffadfdda4 | |||
| 3e2ab12988 | |||
|
|
cca4a2386d |
28
.github/scripts/brew.sh
vendored
Normal file
28
.github/scripts/brew.sh
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -eux
|
||||
|
||||
# shellcheck disable=SC1091
|
||||
. .github/scripts/env.sh
|
||||
|
||||
if [ -e "$HOME/.brew" ] ; then
|
||||
(
|
||||
cd "$HOME/.brew"
|
||||
git fetch --depth 1
|
||||
git reset --hard origin/master
|
||||
)
|
||||
else
|
||||
git clone --depth=1 https://github.com/Homebrew/brew "$HOME/.brew"
|
||||
fi
|
||||
export PATH="$HOME/.brew/bin:$HOME/.brew/sbin:$PATH"
|
||||
|
||||
mkdir -p "$CI_PROJECT_DIR/.brew_cache"
|
||||
export HOMEBREW_CACHE="$CI_PROJECT_DIR/.brew_cache"
|
||||
mkdir -p "$CI_PROJECT_DIR/.brew_logs"
|
||||
export HOMEBREW_LOGS="$CI_PROJECT_DIR/.brew_logs"
|
||||
mkdir -p /private/tmp/.brew_tmp
|
||||
export HOMEBREW_TEMP=/private/tmp/.brew_tmp
|
||||
|
||||
#brew update
|
||||
brew install ${1+"$@"}
|
||||
|
||||
66
.github/scripts/build.sh
vendored
Normal file
66
.github/scripts/build.sh
vendored
Normal file
@@ -0,0 +1,66 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -eux
|
||||
|
||||
# shellcheck disable=SC1091
|
||||
. .github/scripts/env.sh
|
||||
# shellcheck disable=SC1091
|
||||
. .github/scripts/common.sh
|
||||
|
||||
uname -a
|
||||
uname -p
|
||||
uname
|
||||
pwd
|
||||
env
|
||||
|
||||
# ensure ghcup
|
||||
install_ghcup
|
||||
|
||||
# build
|
||||
ghcup install ghc "${GHC_VERSION}"
|
||||
ghcup set ghc "${GHC_VERSION}"
|
||||
sed -i.bak -e '/DELETE MARKER FOR CI/,/END DELETE/d' cabal.project # see comment in cabal.project
|
||||
ecabal update
|
||||
ecabal user-config diff
|
||||
ecabal user-config init -f
|
||||
"ghc-${GHC_VERSION}" --info
|
||||
"ghc" --info
|
||||
|
||||
# https://github.com/haskell/cabal/issues/7313#issuecomment-811851884
|
||||
if [ "$(getconf LONG_BIT)" == "32" ] || [ "${DISTRO}" == "CentOS" ] ; then
|
||||
echo 'constraints: lukko -ofd-locking' >> cabal.project.release.local
|
||||
fi
|
||||
|
||||
# shellcheck disable=SC2206
|
||||
args=(
|
||||
-w "ghc-$GHC_VERSION"
|
||||
--disable-profiling
|
||||
--enable-executable-stripping
|
||||
--project-file=cabal.project.release
|
||||
${ADD_CABAL_ARGS}
|
||||
)
|
||||
|
||||
run cabal v2-build "${args[@]}" cabal-install
|
||||
|
||||
mkdir -p "$CI_PROJECT_DIR/out"
|
||||
# shellcheck disable=SC2154
|
||||
cp "$(cabal list-bin "${args[@]}" cabal-install:exe:cabal)" "$CI_PROJECT_DIR/out/cabal$ext"
|
||||
cp dist-newstyle/cache/plan.json "$CI_PROJECT_DIR/out/plan.json"
|
||||
cd "$CI_PROJECT_DIR/out/"
|
||||
|
||||
# create tarball/zip
|
||||
TARBALL_PREFIX="cabal-install-$("$CI_PROJECT_DIR/out/cabal" --numeric-version)"
|
||||
case "${TARBALL_EXT}" in
|
||||
zip)
|
||||
zip "${TARBALL_PREFIX}-${ARTIFACT}.${TARBALL_EXT}" "cabal${ext}" plan.json
|
||||
;;
|
||||
tar.xz)
|
||||
tar caf "${TARBALL_PREFIX}-${ARTIFACT}.${TARBALL_EXT}" "cabal${ext}" plan.json
|
||||
;;
|
||||
*)
|
||||
fail "Unknown TARBALL_EXT: ${TARBALL_EXT}"
|
||||
;;
|
||||
esac
|
||||
|
||||
rm cabal plan.json
|
||||
|
||||
110
.github/scripts/common.sh
vendored
Normal file
110
.github/scripts/common.sh
vendored
Normal file
@@ -0,0 +1,110 @@
|
||||
#!/bin/bash
|
||||
|
||||
# shellcheck disable=SC1091
|
||||
. .github/scripts/env.sh
|
||||
|
||||
# Colors
|
||||
RED="0;31"
|
||||
LT_BROWN="1;33"
|
||||
LT_BLUE="1;34"
|
||||
|
||||
ecabal() {
|
||||
cabal "$@"
|
||||
}
|
||||
|
||||
nonfatal() {
|
||||
"$@" || "$* failed"
|
||||
}
|
||||
|
||||
sha_sum() {
|
||||
if [ "${RUNNER_OS}" = "FreeBSD" ] ; then
|
||||
sha256 "$@"
|
||||
else
|
||||
sha256sum "$@"
|
||||
fi
|
||||
}
|
||||
|
||||
git_describe() {
|
||||
git config --global --get-all safe.directory | grep '^\*$' || git config --global --add safe.directory "*"
|
||||
git describe --always
|
||||
}
|
||||
|
||||
install_ghcup() {
|
||||
# find "$GHCUP_INSTALL_BASE_PREFIX"
|
||||
mkdir -p "$GHCUP_BIN"
|
||||
mkdir -p "$GHCUP_BIN"/../cache
|
||||
|
||||
if [ "${RUNNER_OS}" = "FreeBSD" ] ; then
|
||||
curl -o ghcup https://downloads.haskell.org/ghcup/tmp/x86_64-portbld-freebsd-ghcup-0.1.18.1
|
||||
chmod +x ghcup
|
||||
mv ghcup "$HOME/.local/bin/ghcup"
|
||||
else
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | BOOTSTRAP_HASKELL_MINIMAL=1 sh
|
||||
source "$(dirname "${GHCUP_BIN}")/env"
|
||||
ghcup install cabal --set "${BOOTSTRAP_HASKELL_CABAL_VERSION}"
|
||||
fi
|
||||
}
|
||||
|
||||
strip_binary() {
|
||||
(
|
||||
set -e
|
||||
local binary=$1
|
||||
case "$(uname -s)" in
|
||||
"Darwin"|"darwin")
|
||||
;;
|
||||
MSYS_*|MINGW*)
|
||||
;;
|
||||
*)
|
||||
strip -s "${binary}"
|
||||
;;
|
||||
esac
|
||||
)
|
||||
}
|
||||
|
||||
# GitLab Pipelines log section delimiters
|
||||
# https://gitlab.com/gitlab-org/gitlab-foss/issues/14664
|
||||
start_section() {
|
||||
name="$1"
|
||||
echo -e "section_start:$(date +%s):$name\015\033[0K"
|
||||
}
|
||||
|
||||
end_section() {
|
||||
name="$1"
|
||||
echo -e "section_end:$(date +%s):$name\015\033[0K"
|
||||
}
|
||||
|
||||
echo_color() {
|
||||
local color="$1"
|
||||
local msg="$2"
|
||||
echo -e "\033[${color}m${msg}\033[0m"
|
||||
}
|
||||
|
||||
error() { echo_color "${RED}" "$1"; }
|
||||
warn() { echo_color "${LT_BROWN}" "$1"; }
|
||||
info() { echo_color "${LT_BLUE}" "$1"; }
|
||||
|
||||
fail() { error "error: $1"; exit 1; }
|
||||
|
||||
run() {
|
||||
info "Running $*..."
|
||||
"$@" || ( error "$* failed"; return 1; )
|
||||
}
|
||||
|
||||
emake() {
|
||||
if command -v gmake >/dev/null 2>&1 ; then
|
||||
gmake "$@"
|
||||
else
|
||||
make "$@"
|
||||
fi
|
||||
}
|
||||
|
||||
mktempdir() {
|
||||
case "$(uname -s)" in
|
||||
"Darwin"|"darwin")
|
||||
mktemp -d -t cabal_ci.XXXXXXX
|
||||
;;
|
||||
*)
|
||||
mktemp -d
|
||||
;;
|
||||
esac
|
||||
}
|
||||
38
.github/scripts/env.sh
vendored
Normal file
38
.github/scripts/env.sh
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
#!/bin/bash
|
||||
|
||||
mkdir -p "$HOME"/.local/bin
|
||||
|
||||
if [ "${RUNNER_OS}" = "Windows" ] ; then
|
||||
ext=".exe"
|
||||
else
|
||||
# shellcheck disable=SC2034
|
||||
ext=''
|
||||
fi
|
||||
|
||||
export PATH="$HOME/.local/bin:$PATH"
|
||||
|
||||
export BOOTSTRAP_HASKELL_NONINTERACTIVE=1
|
||||
export BOOTSTRAP_HASKELL_CABAL_VERSION="${CABAL_VER:-3.6.2.0-p2}"
|
||||
export BOOTSTRAP_HASKELL_ADJUST_CABAL_CONFIG=no
|
||||
export BOOTSTRAP_HASKELL_INSTALL_NO_STACK=yes
|
||||
export BOOTSTRAP_HASKELL_ADJUST_BASHRC=1
|
||||
|
||||
if [ "${RUNNER_OS}" = "Windows" ] ; then
|
||||
# on windows use pwd to get unix style path
|
||||
CI_PROJECT_DIR="$(pwd)"
|
||||
export CI_PROJECT_DIR
|
||||
export GHCUP_INSTALL_BASE_PREFIX="/c"
|
||||
export GHCUP_BIN="$GHCUP_INSTALL_BASE_PREFIX/ghcup/bin"
|
||||
export PATH="$GHCUP_BIN:$PATH"
|
||||
export CABAL_DIR="C:\\Users\\runneradmin\\AppData\\Roaming\\cabal"
|
||||
else
|
||||
export CI_PROJECT_DIR="${GITHUB_WORKSPACE}"
|
||||
export GHCUP_INSTALL_BASE_PREFIX="$CI_PROJECT_DIR"
|
||||
export GHCUP_BIN="$GHCUP_INSTALL_BASE_PREFIX/.ghcup/bin"
|
||||
export PATH="$GHCUP_BIN:$PATH"
|
||||
export CABAL_DIR="$CI_PROJECT_DIR/cabal"
|
||||
export CABAL_CACHE="$CI_PROJECT_DIR/cabal-cache"
|
||||
fi
|
||||
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
export TZ=Asia/Singapore
|
||||
23
.github/workflows/bindists.yaml
vendored
23
.github/workflows/bindists.yaml
vendored
@@ -16,7 +16,7 @@ on:
|
||||
metadataFile:
|
||||
description: Metadata file
|
||||
required: true
|
||||
default: ghcup-0.0.7.yaml
|
||||
default: ghcup-0.0.8.yaml
|
||||
type: string
|
||||
channel:
|
||||
description: Distribution channel (main|prerelease|nightly)
|
||||
@@ -48,6 +48,12 @@ jobs:
|
||||
- image: debian:11
|
||||
installCmd: apt-get update && apt-get install -y
|
||||
toolRequirements: build-essential curl libffi-dev libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5 libnuma-dev
|
||||
- image: debian:12
|
||||
installCmd: apt-get update && apt-get install -y
|
||||
toolRequirements: build-essential curl libffi-dev libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5 libnuma-dev
|
||||
- image: debian:unstable
|
||||
installCmd: apt-get update && apt-get install -y
|
||||
toolRequirements: build-essential curl libffi-dev libgmp-dev libgmp10 libncurses-dev libncurses6 libtinfo6 libnuma-dev
|
||||
- image: ubuntu:18.04
|
||||
installCmd: apt-get update && apt-get install -y
|
||||
toolRequirements: build-essential curl libffi-dev libffi6 libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5
|
||||
@@ -63,7 +69,7 @@ jobs:
|
||||
- image: fedora:27
|
||||
installCmd: dnf install -y
|
||||
toolRequirements: which findutils gcc gcc-c++ gmp gmp-devel make ncurses ncurses-compat-libs xz perl
|
||||
- image: fedora:36
|
||||
- image: fedora:37
|
||||
installCmd: dnf install -y
|
||||
toolRequirements: which gcc g++ gmp gmp-devel make ncurses ncurses-compat-libs xz perl
|
||||
- image: rockylinux:8
|
||||
@@ -75,10 +81,10 @@ jobs:
|
||||
- image: linuxmintd/mint19.3-amd64
|
||||
installCmd: apt-get update && apt-get install -y
|
||||
toolRequirements: build-essential curl libffi-dev libffi6 libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5
|
||||
- image: linuxmintd/mint20.2-amd64
|
||||
- image: linuxmintd/mint20.3-amd64
|
||||
installCmd: apt-get update && apt-get install -y
|
||||
toolRequirements: build-essential curl libffi-dev libffi7 libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5
|
||||
- image: linuxmintd/mint21.1-amd64
|
||||
- image: linuxmintd/mint21.3-amd64
|
||||
installCmd: apt-get update && apt-get install -y
|
||||
toolRequirements: build-essential curl libffi-dev libffi7 libgmp-dev libgmp10 libncurses-dev libncurses5 libtinfo5
|
||||
container:
|
||||
@@ -149,6 +155,15 @@ jobs:
|
||||
with:
|
||||
args: sh -c '.github/workflows/install-bindist.sh'
|
||||
|
||||
bindist-install-freebsd:
|
||||
name: Install FreeBSD binary
|
||||
runs-on: [self-hosted, FreeBSD, X64]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: Run build
|
||||
run: .github/workflows/install-bindist.sh
|
||||
|
||||
validate:
|
||||
name: ghcup-gen check
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
16
.github/workflows/install-bindist.sh
vendored
16
.github/workflows/install-bindist.sh
vendored
@@ -29,6 +29,8 @@ mkdir -p /tmp/install-bindist-ci
|
||||
cp "$METADATA_FILE" /tmp/install-bindist-ci/
|
||||
cd /tmp/install-bindist-ci
|
||||
|
||||
trap 'rm -rf -- /tmp/install-bindist-ci' EXIT
|
||||
|
||||
cat <<EOF > main.hs
|
||||
{- cabal:
|
||||
build-depends: base
|
||||
@@ -84,6 +86,7 @@ case $TOOL in
|
||||
ghcup_fun rm ghc "${bin_noexe/haskell-language-server-/}"
|
||||
fi
|
||||
done
|
||||
ghcup_fun install ghc --set recommended
|
||||
"$bindir/haskell-language-server-wrapper${ext}" typecheck "${test_module}" || fail "failed to typecheck with HLS wrapper"
|
||||
}
|
||||
|
||||
@@ -103,6 +106,19 @@ case $TOOL in
|
||||
ghc --info
|
||||
ghc -prof main.hs
|
||||
[[ $(./main +RTS -s) -eq 2 ]]
|
||||
ghcup_fun install cabal recommended
|
||||
cabal --version
|
||||
cabal update
|
||||
cabal install --lib --package-env=. clock
|
||||
# https://github.com/haskell/ghcup-hs/issues/966
|
||||
cabal install --lib --package-env=. hashable
|
||||
case "$(uname -s)" in
|
||||
MSYS_*|MINGW*)
|
||||
;;
|
||||
*)
|
||||
[[ -e "$(ghcup whereis --directory ghc "$VERSION")/../share/man/man1/ghc.1" ]]
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
cabal)
|
||||
ghcup_fun install ghc --set "$(ghcup_fun list -t ghc -r -c available | tail -1 | awk '{ print $2 }')"
|
||||
|
||||
4
.github/workflows/test-sigs.sh
vendored
4
.github/workflows/test-sigs.sh
vendored
@@ -21,3 +21,7 @@ done
|
||||
unset key
|
||||
gpg --verify "${METADATA_FILE}.sig"
|
||||
|
||||
for f in ghcup-*.json ghcup-*.yaml hls-metadata-*.json ; do
|
||||
gpg --verify "${f}.sig"
|
||||
done
|
||||
|
||||
|
||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -12,6 +12,6 @@ tags
|
||||
TAGS
|
||||
/tmp/
|
||||
.entangled
|
||||
release/
|
||||
releases/
|
||||
/release/
|
||||
/releases/
|
||||
site/
|
||||
|
||||
10
README.md
10
README.md
@@ -7,7 +7,7 @@
|
||||
* `ghcup-A.B.C.yaml`: this is the main metadata and what ghcup uses by default
|
||||
* `ghcup-vanilla-A.B.C.yaml`: this is similar to `ghcup-A.B.C.yaml`, but only uses upstream bindists (no patches/fixes are applied, no missing platforms added)
|
||||
* `ghcup-prereleases-A.B.C.yaml`: this contains pre-releases of all tools
|
||||
* `ghcup-cross-A.B.C.yaml`: this contains (usually experimental) cross compilers
|
||||
* `ghcup-cross-A.B.C.yaml`: this contains experimental cross compilers. See https://www.haskell.org/ghcup/guide/#cross-support for details.
|
||||
|
||||
### Using the metadata
|
||||
|
||||
@@ -18,6 +18,14 @@ ghcup config add-release-channel https://raw.githubusercontent.com/haskell/ghcup
|
||||
ghcup config add-release-channel https://raw.githubusercontent.com/haskell/ghcup-metadata/master/ghcup-cross-0.0.8.yaml
|
||||
```
|
||||
|
||||
If you want **only** vanilla upstream bindists and opt out of all unofficial stuff, you'd run:
|
||||
|
||||
```sh
|
||||
ghcup config set url-source https://raw.githubusercontent.com/haskell/ghcup-metadata/master/ghcup-vanilla-0.0.8.yaml
|
||||
```
|
||||
|
||||
Also check the [config.yaml documentation](https://github.com/haskell/ghcup-hs/blob/master/data/config.yaml).
|
||||
|
||||
## For contributors
|
||||
|
||||
### Adding a new GHC version
|
||||
|
||||
@@ -7,7 +7,7 @@ package ghcup
|
||||
source-repository-package
|
||||
type: git
|
||||
location: https://github.com/haskell/ghcup-hs.git
|
||||
tag: e27fed09f3eb4b0b72ce7825c65f16a4202a2399
|
||||
tag: b1106985ec1173a0122f2781719e9bb1a85de257
|
||||
|
||||
constraints: http-io-streams -brotli,
|
||||
any.aeson >= 2.0.1.0
|
||||
|
||||
1343
ghcup-0.0.7.yaml
1343
ghcup-0.0.7.yaml
File diff suppressed because it is too large
Load Diff
Binary file not shown.
7088
ghcup-0.0.8.yaml
Normal file
7088
ghcup-0.0.8.yaml
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ghcup-0.0.8.yaml.sig
Normal file
BIN
ghcup-0.0.8.yaml.sig
Normal file
Binary file not shown.
@@ -27,16 +27,30 @@ ghcupDownloads:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/ghc/javascript-unknown-ghcjs-9.6.2/ghc-javascript-unknown-ghcjs-9.6.2-aarch64-apple-darwin.tar.xz
|
||||
dlHash: 0d65bb3940a820d95b4b33ea0cd61bf39670d48c4d8f747153ded01a7ef34821
|
||||
dlSubdir: ghc-9.6.2-javascript-unknown-ghcjs
|
||||
wasm32-wasi-9.6.2.20230523:
|
||||
wasm32-wasi-9.6.3.20230927:
|
||||
viTags:
|
||||
- base-4.18.0.0
|
||||
- base-4.18.1.0
|
||||
viArch:
|
||||
A_64:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &ghc-wasm32-wasi-64-static
|
||||
dlHash: 85433ce296f2f95a5c60f78060cb4a3a8bf8b56bf83ddd75f1b23cb2e2378888
|
||||
dlSubdir: ghc-9.6.2.20230523-wasm32-wasi
|
||||
dlUri: https://gitlab.haskell.org/api/v4/projects/3223/jobs/1530829/artifacts/ghc-x86_64-linux-alpine3_12-cross_wasm32-wasi-release%2Bfully_static.tar.xz
|
||||
dlOutput: ghc-9.6.2.20230523-x86_64-linux-alpine3_12-cross_wasm32-wasi-release+fully_static.tar.xz
|
||||
unknown_versioning: &ghc-wasm32-wasi-963-64-static
|
||||
dlHash: 2e1d363320c03e35fd9048a252a0cfed8f7b87da76c063c7fc52122c390f42c3
|
||||
dlSubdir: ghc-9.6.3.20230927-wasm32-wasi
|
||||
dlUri: https://github.com/amesgen/ghc-wasm-bindists/releases/download/20231001T201511/wasm32-wasi-ghc-9.6.tar.xz
|
||||
dlOutput: ghc-9.6.3.20230927-x86_64-linux-alpine3_12-cross_wasm32-wasi-release+fully_static.tar.xz
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *ghc-wasm32-wasi-64-static
|
||||
unknown_versioning: *ghc-wasm32-wasi-963-64-static
|
||||
wasm32-wasi-9.8.0.20230927:
|
||||
viTags:
|
||||
- base-4.19.0.0
|
||||
viArch:
|
||||
A_64:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &ghc-wasm32-wasi-980-64-static
|
||||
dlHash: bad3393b6eba103230c62f050ffd9d458916c6238e5d5fa031d3eee5d995305a
|
||||
dlSubdir: ghc-9.8.0.20230927-wasm32-wasi
|
||||
dlUri: https://github.com/amesgen/ghc-wasm-bindists/releases/download/20231001T201511/wasm32-wasi-ghc-9.8.tar.xz
|
||||
dlOutput: ghc-9.8.0.20230927-x86_64-linux-alpine3_12-cross_wasm32-wasi-release+fully_static.tar.xz
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *ghc-wasm32-wasi-980-64-static
|
||||
|
||||
|
||||
Binary file not shown.
@@ -135,15 +135,13 @@ tarballFilterP = option readm $
|
||||
long "tarball-filter" <> short 'u' <> metavar "<tool>-<version>" <> value def
|
||||
<> help "Only check certain tarballs (format: <tool>-<version>)"
|
||||
where
|
||||
def = TarballFilter (Right Nothing) (makeRegex ("" :: String))
|
||||
def = TarballFilter Nothing (makeRegex ("" :: String))
|
||||
readm = do
|
||||
s <- str
|
||||
case span (/= '-') s of
|
||||
(_, []) -> fail "invalid format, missing '-' after the tool name"
|
||||
(t, v) | [tool] <- [ tool | tool <- [minBound..maxBound], low (show tool) == low t ] ->
|
||||
pure (TarballFilter $ Right $ Just tool) <*> makeRegexOptsM compIgnoreCase execBlank (drop 1 v)
|
||||
(t, v) | [tool] <- [ tool | tool <- [minBound..maxBound], low (show tool) == low t ] ->
|
||||
pure (TarballFilter $ Left tool) <*> makeRegexOptsM compIgnoreCase execBlank (drop 1 v)
|
||||
pure (TarballFilter $ Just tool) <*> makeRegexOptsM compIgnoreCase execBlank (drop 1 v)
|
||||
_ -> fail "invalid tool"
|
||||
low = fmap toLower
|
||||
|
||||
@@ -206,7 +204,7 @@ main = do
|
||||
flip runReaderT leanAppstate $ logError $ T.pack $ prettyShow e
|
||||
liftIO $ exitWith (ExitFailure 2)
|
||||
|
||||
let appstate = AppState (Settings True 0 Lax False Never Curl True GHCupURL False GPGNone True Nothing (DM mempty)) dirs defaultKeyBindings (GHCupInfo mempty mempty mempty) pfreq loggerConfig
|
||||
let appstate = AppState (Settings True 0 Lax False Never Curl True GHCupURL False GPGNone True Nothing (DM mempty)) dirs defaultKeyBindings (GHCupInfo mempty mempty Nothing) pfreq loggerConfig
|
||||
|
||||
let withValidateYamlOpts vopts f = case vopts of
|
||||
ValidateYAMLOpts { vInput = Nothing } ->
|
||||
|
||||
@@ -207,7 +207,7 @@ validate distroChannel = do
|
||||
isBase _ = False
|
||||
|
||||
data TarballFilter = TarballFilter
|
||||
{ tfTool :: Either GlobalTool (Maybe Tool)
|
||||
{ tfTool :: Maybe Tool
|
||||
, tfVersion :: Regex
|
||||
}
|
||||
|
||||
@@ -226,20 +226,16 @@ validateTarballs :: ( Monad m
|
||||
)
|
||||
=> TarballFilter
|
||||
-> m ExitCode
|
||||
validateTarballs (TarballFilter etool versionRegex) = do
|
||||
GHCupInfo { _ghcupDownloads = dls, _globalTools = gt } <- getGHCupInfo
|
||||
validateTarballs (TarballFilter mtool versionRegex) = do
|
||||
GHCupInfo { _ghcupDownloads = dls } <- getGHCupInfo
|
||||
ref <- liftIO $ newIORef 0
|
||||
|
||||
-- download/verify all tarballs
|
||||
let dlis = either (const []) (\tool -> nubOrd $ dls ^.. each %& indices (maybe (const True) (==) tool)
|
||||
%> each %& indices (matchTest versionRegex . T.unpack . prettyVer . _tvVersion)
|
||||
% (viTestDL % _Just `summing` viSourceDL % _Just `summing` viArch % each % each % each)
|
||||
)
|
||||
etool
|
||||
let gdlis = nubOrd $ gt ^.. each
|
||||
let allDls = either (const gdlis) (const dlis) etool
|
||||
when (null allDls) $ logError "no tarballs selected by filter" *> runReaderT addError ref
|
||||
forM_ allDls (downloadAll ref)
|
||||
let dlis = nubOrd $ dls ^.. each %& indices (maybe (const True) (==) mtool)
|
||||
%> each %& indices (matchTest versionRegex . T.unpack . prettyVer . _tvVersion)
|
||||
% (viTestDL % _Just `summing` viSourceDL % _Just `summing` viArch % each % each % each)
|
||||
when (null dlis) $ logError "no tarballs selected by filter" *> runReaderT addError ref
|
||||
forM_ dlis (downloadAll ref)
|
||||
|
||||
-- exit
|
||||
e <- liftIO $ readIORef ref
|
||||
@@ -273,20 +269,16 @@ validateTarballs (TarballFilter etool versionRegex) = do
|
||||
, ContentLengthError
|
||||
]
|
||||
$ do
|
||||
case etool of
|
||||
Right (Just GHCup) -> do
|
||||
case mtool of
|
||||
(Just GHCup) -> do
|
||||
tmpUnpack <- lift mkGhcupTmpDir
|
||||
_ <- liftE $ download (_dlUri dli) Nothing (Just (_dlHash dli)) Nothing (fromGHCupPath tmpUnpack) Nothing False
|
||||
pure Nothing
|
||||
Right _ -> do
|
||||
_ -> do
|
||||
p <- liftE $ downloadCached dli Nothing
|
||||
fmap Just $ liftE
|
||||
. getArchiveFiles
|
||||
$ p
|
||||
Left ShimGen -> do
|
||||
tmpUnpack <- lift mkGhcupTmpDir
|
||||
_ <- liftE $ download (_dlUri dli) Nothing (Just (_dlHash dli)) Nothing (fromGHCupPath tmpUnpack) Nothing False
|
||||
pure Nothing
|
||||
case r of
|
||||
VRight (Just entries) -> do
|
||||
case _dlSubdir dli of
|
||||
|
||||
@@ -65,5 +65,5 @@ executable ghcup-gen
|
||||
, safe-exceptions ^>=0.1
|
||||
, text ^>=2.0
|
||||
, transformers ^>=0.5
|
||||
, versions >=4.0.1 && <5.1
|
||||
, versions >=6.0.0
|
||||
, yaml-streamly ^>=0.12.0
|
||||
|
||||
@@ -13,11 +13,11 @@ ghcupDownloads:
|
||||
viArch:
|
||||
A_64:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &cabal-3720-32
|
||||
unknown_versioning: &cabal-3720-64
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/3.7.0.0-pre20220407/cabal-install-3.7-x86_64-linux-alpine.tar.xz
|
||||
dlHash: c9e28e1578dfb851918e523040cb0f913df747fe95e24d089bcf7cd821c21885
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *cabal-3720-32
|
||||
unknown_versioning: *cabal-3720-64
|
||||
Darwin:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/3.7.0.0-pre20220407/cabal-install-3.7-x86_64-darwin.tar.xz
|
||||
@@ -59,11 +59,11 @@ ghcupDownloads:
|
||||
viArch:
|
||||
A_64:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &cabal-3810-32
|
||||
unknown_versioning: &cabal-3810-64
|
||||
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.8.1.0-rc1/cabal-install-3.8.0.20220526-x86_64-linux-alpine.tar.xz
|
||||
dlHash: a4e6cb7990d7150c4e64cbd3ebd0a62fb6b00f96f0f9bc3fb751ff6d1f898fdb
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *cabal-3810-32
|
||||
unknown_versioning: *cabal-3810-64
|
||||
Darwin:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.8.1.0-rc1/cabal-install-3.8.0.20220526-x86_64-darwin.tar.xz
|
||||
@@ -100,11 +100,11 @@ ghcupDownloads:
|
||||
viArch:
|
||||
A_64:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &cabal-3900-32
|
||||
unknown_versioning: &cabal-3900-64
|
||||
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.9.0.0/cabal-install-3.9-x86_64-linux-alpine.tar.xz
|
||||
dlHash: 0374716dc33f255e1fb9ec38d83fdd3a3dc81ecf38af0a94b8ab0e1ba1a1ac1c
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *cabal-3900-32
|
||||
unknown_versioning: *cabal-3900-64
|
||||
Darwin:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~cabal/cabal-install-3.9.0.0/cabal-install-3.9-x86_64-darwin.tar.xz
|
||||
@@ -210,7 +210,7 @@ ghcupDownloads:
|
||||
dlUri: https://downloads.haskell.org/~ghc/9.4.1-alpha2/ghc-9.4.0.20220523-src.tar.xz
|
||||
dlSubdir: ghc-9.4.0.20220523
|
||||
dlHash: 3bcac9a2043bbc99cd8113547d92fdcad7d7bb4c286a9222ccbcbd4b4a26b635
|
||||
viPostRemove: &ghc-post-remove "After removing GHC you might also want to clean up your cabal store at: ~/.cabal/store/ghc-<ghcver>"
|
||||
viPostRemove: *ghc-post-remove
|
||||
viArch:
|
||||
A_64:
|
||||
Linux_Debian:
|
||||
@@ -549,11 +549,11 @@ ghcupDownloads:
|
||||
viArch:
|
||||
A_32:
|
||||
Linux_Debian:
|
||||
<10: &ghc-961alpha2-64-deb9
|
||||
<10: &ghc-961alpha2-32-deb9
|
||||
dlHash: e2f3e622f1aecfe0b6a305d0fb997e83453ecbc2949cb2b393549e35f2b062e1
|
||||
dlSubdir: ghc-9.6.0.20230128-i386-unknown-linux
|
||||
dlUri: https://downloads.haskell.org/~ghc/9.6.0.20230128/ghc-9.6.0.20230128-i386-deb9-linux.tar.xz
|
||||
unknown_versioning: *ghc-961alpha2-64-deb9
|
||||
unknown_versioning: *ghc-961alpha2-32-deb9
|
||||
A_64:
|
||||
Darwin:
|
||||
unknown_versioning:
|
||||
@@ -1490,7 +1490,8 @@ ghcupDownloads:
|
||||
RegexDir: "stack-.*"
|
||||
2.13.0.1:
|
||||
viTags:
|
||||
- LatestPrerelease
|
||||
- Prerelease
|
||||
- old
|
||||
viChangeLog: https://github.com/commercialhaskell/stack/blob/rc/v2.13/ChangeLog.md#v21301-release-candidate
|
||||
viArch:
|
||||
A_64:
|
||||
@@ -1527,55 +1528,42 @@ ghcupDownloads:
|
||||
dlHash: 9c3b957c7c8b1c5c09e0251907372563b48d5869c31e35be43916736f679535d
|
||||
dlSubdir:
|
||||
RegexDir: "stack-.*"
|
||||
|
||||
GHCup:
|
||||
0.1.19.5:
|
||||
2.15.0.1:
|
||||
viTags:
|
||||
- Latest
|
||||
- Recommended
|
||||
viChangeLog: https://github.com/haskell/ghcup-hs/blob/master/CHANGELOG.md
|
||||
viSourceDL:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/ghcup-0.1.19.5-src.tar.gz
|
||||
dlSubdir: ghcup-0.1.19.5
|
||||
dlHash: abfb1f18201c77bcebae6a0282844df2cc644427270a8df9af341901211f7b9c
|
||||
- LatestPrerelease
|
||||
viChangeLog: https://github.com/commercialhaskell/stack/blob/rc/v2.15/ChangeLog.md#v21501-release-candidate---2024-01-27
|
||||
viArch:
|
||||
A_64:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &ghcup-64
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/x86_64-linux-ghcup-0.1.19.5
|
||||
dlHash: 2d07c7c64d9eb472d85210c27c4489931804fd753a99724d1df740dbf1bfc5a5
|
||||
unknown_versioning: &stack-21501-64
|
||||
dlUri: https://github.com/commercialhaskell/stack/releases/download/rc/v2.15.0.1/stack-2.15.0.1-linux-x86_64.tar.gz
|
||||
dlHash: f59b41418b2c12f1ac643b1c8c8caa9e4936d2c5a35593e67d7243d97a1de948
|
||||
dlSubdir:
|
||||
RegexDir: "stack-.*"
|
||||
Darwin:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/x86_64-apple-darwin-ghcup-0.1.19.5
|
||||
dlHash: bde41f049e795e086c1ee27a4ae0629285c56bdf041f039e798f77481a133202
|
||||
FreeBSD:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/x86_64-portbld-freebsd-ghcup-0.1.19.5
|
||||
dlHash: 6b743f440f6bf9e4525acec2bd360d8a07af06925a74d0d960b9fe7c8c90b176
|
||||
dlUri: https://github.com/commercialhaskell/stack/releases/download/rc/v2.15.0.1/stack-2.15.0.1-osx-x86_64.tar.gz
|
||||
dlHash: 7cbdb14060f19eefeff56d7d4887db0a1c5ade6bcd1d05abff5e5d819e4945f0
|
||||
dlSubdir:
|
||||
RegexDir: "stack-.*"
|
||||
Windows:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/x86_64-mingw64-ghcup-0.1.19.5.exe
|
||||
dlHash: 085fc717bcea786034133c5028e5c3e5d46da341787bb267482996e97d076c88
|
||||
dlUri: https://github.com/commercialhaskell/stack/releases/download/rc/v2.15.0.1/stack-2.15.0.1-windows-x86_64.tar.gz
|
||||
dlHash: f23f45c47228f98df47da4613df87f2ee5b55edcf4e466a1d7b3aced2161a7d0
|
||||
dlSubdir:
|
||||
RegexDir: "stack-.*"
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *ghcup-64
|
||||
A_32:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &ghcup-32
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/i386-linux-ghcup-0.1.19.5
|
||||
dlHash: 9bb0870ae4b4fd0d4d18982f4aa88749018aed81479e51070478f699ed9a85e0
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *ghcup-32
|
||||
unknown_versioning: *stack-21501-64
|
||||
A_ARM64:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/aarch64-linux-ghcup-0.1.19.5
|
||||
dlHash: cea78d9189be6fd62519c9d450654e7dd4e0923a7834c38b0539ba9264c6762e
|
||||
dlUri: https://github.com/commercialhaskell/stack/releases/download/rc/v2.15.0.1/stack-2.15.0.1-linux-aarch64.tar.gz
|
||||
dlHash: 087b9b02e318ba28cbbd13b512da0758e2522016e260e2b2a3d076148225972e
|
||||
dlSubdir:
|
||||
RegexDir: "stack-.*"
|
||||
Darwin:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/aarch64-apple-darwin-ghcup-0.1.19.5
|
||||
dlHash: 4dafad0be3314372e2d312ee4ff3999060826ed1b53678dc2fb8715ee4bb4c53
|
||||
A_ARM:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/0.1.19.5/armv7-linux-ghcup-0.1.19.5
|
||||
dlHash: 46147824b921b61e3161e03c638a8ff684667ea1d877df0e06721c4b2149cd5f
|
||||
dlUri: https://github.com/commercialhaskell/stack/releases/download/rc/v2.15.0.1/stack-2.15.0.1-osx-aarch64.tar.gz
|
||||
dlHash: 2c5fb2efcf646287aa91d3a1d6f8d08129734bc3e0c50d6756aba81b9309d7c1
|
||||
dlSubdir:
|
||||
RegexDir: "stack-.*"
|
||||
|
||||
Binary file not shown.
1569
ghcup-prereleases-0.0.8.yaml
Normal file
1569
ghcup-prereleases-0.0.8.yaml
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ghcup-prereleases-0.0.8.yaml.sig
Normal file
BIN
ghcup-prereleases-0.0.8.yaml.sig
Normal file
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
6404
ghcup-vanilla-0.0.8.yaml
Normal file
6404
ghcup-vanilla-0.0.8.yaml
Normal file
File diff suppressed because it is too large
Load Diff
BIN
ghcup-vanilla-0.0.8.yaml.sig
Normal file
BIN
ghcup-vanilla-0.0.8.yaml.sig
Normal file
Binary file not shown.
@@ -1343,5 +1343,255 @@
|
||||
"9.6.3"
|
||||
]
|
||||
}
|
||||
},
|
||||
"2.4.0.0": {
|
||||
"A_64": {
|
||||
"Darwin": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"FreeBSD": [
|
||||
"8.10.7",
|
||||
"9.0.2",
|
||||
"9.2.5",
|
||||
"9.2.7"
|
||||
],
|
||||
"Linux_CentOS": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Debian": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Fedora": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Mint": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_RedHat": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Ubuntu": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_UnknownLinux": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Windows": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
]
|
||||
},
|
||||
"A_ARM64": {
|
||||
"Darwin": [
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_UnknownLinux": [
|
||||
"9.0.2",
|
||||
"9.2.8",
|
||||
"9.4.7",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
]
|
||||
}
|
||||
},
|
||||
"2.5.0.0": {
|
||||
"A_64": {
|
||||
"Darwin": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"FreeBSD": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_CentOS": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Debian": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Fedora": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Mint": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_RedHat": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Ubuntu": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_UnknownLinux": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Windows": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
]
|
||||
},
|
||||
"A_ARM64": {
|
||||
"Darwin": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_UnknownLinux": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.3",
|
||||
"9.8.1"
|
||||
]
|
||||
}
|
||||
},
|
||||
"2.6.0.0": {
|
||||
"A_64": {
|
||||
"Darwin": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"FreeBSD": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Alpine": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_CentOS": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Debian": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Fedora": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Mint": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_RedHat": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_Ubuntu": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_UnknownLinux": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Windows": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
]
|
||||
},
|
||||
"A_ARM64": {
|
||||
"Darwin": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
],
|
||||
"Linux_UnknownLinux": [
|
||||
"9.2.8",
|
||||
"9.4.8",
|
||||
"9.6.4",
|
||||
"9.8.1"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Binary file not shown.
105
scripts/release/cabal/create-yaml-snippet.sh
Executable file
105
scripts/release/cabal/create-yaml-snippet.sh
Executable file
@@ -0,0 +1,105 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -eu
|
||||
set -o pipefail
|
||||
|
||||
RELEASE=$1
|
||||
VERSION=${RELEASE#cabal-install-v}
|
||||
|
||||
cd "gh-release-artifacts/cabal-${VERSION}"
|
||||
|
||||
cat <<EOF > /dev/stdout
|
||||
$VERSION:
|
||||
viTags:
|
||||
- Latest
|
||||
viChangeLog: https://github.com/haskell/cabal/blob/master/release-notes/cabal-install-$VERSION.md
|
||||
viArch:
|
||||
A_64:
|
||||
Linux_Debian:
|
||||
'< 10': &cabal-${VERSION//./}-64-deb9
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-deb9.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-deb9.tar.xz" | awk '{ print $1 }')
|
||||
'(>= 10 && < 11)': &cabal-${VERSION//./}-64-deb10
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-deb10.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-deb10.tar.xz" | awk '{ print $1 }')
|
||||
unknown_versioning: &cabal-${VERSION//./}-64-deb11
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-deb11.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-deb11.tar.xz" | awk '{ print $1 }')
|
||||
Linux_Ubuntu:
|
||||
'( >= 16 && < 19 )': &cabal-${VERSION//./}-64-ubuntu18
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-ubuntu18.04.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-ubuntu18.04.tar.xz" | awk '{ print $1 }')
|
||||
'( >= 20 && < 22 )': &cabal-${VERSION//./}-64-ubuntu20
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-ubuntu20.04.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-ubuntu20.04.tar.xz" | awk '{ print $1 }')
|
||||
unknown_versioning: &cabal-${VERSION//./}-64-ubuntu22
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-ubuntu22.04.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-ubuntu22.04.tar.xz" | awk '{ print $1 }')
|
||||
Linux_Mint:
|
||||
'< 20':
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-mint19.3.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-mint19.3.tar.xz" | awk '{ print $1 }')
|
||||
'(>= 20 && < 21)':
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-mint20.2.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-mint20.2.tar.xz" | awk '{ print $1 }')
|
||||
'>= 21': *cabal-${VERSION//./}-64-ubuntu22
|
||||
Linux_Fedora:
|
||||
'< 33': &cabal-${VERSION//./}-64-fedora27
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-fedora27.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-fedora27.tar.xz" | awk '{ print $1 }')
|
||||
'>= 33': &cabal-${VERSION//./}-64-fedora33
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-fedora33.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-fedora33.tar.xz" | awk '{ print $1 }')
|
||||
unknown_versioning: *cabal-${VERSION//./}-64-fedora27
|
||||
Linux_CentOS:
|
||||
'( >= 7 && < 8 )': &cabal-${VERSION//./}-64-centos
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-centos7.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-centos7.tar.xz" | awk '{ print $1 }')
|
||||
unknown_versioning: *cabal-${VERSION//./}-64-centos
|
||||
Linux_RedHat:
|
||||
unknown_versioning: *cabal-${VERSION//./}-64-centos
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &cabal-${VERSION//./}-64-unknown
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-unknown.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-unknown.tar.xz" | awk '{ print $1 }')
|
||||
Linux_Rocky:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-linux-rocky8.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-linux-rocky8.tar.xz" | awk '{ print $1 }')
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *cabal-${VERSION//./}-64-unknown
|
||||
Darwin:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-apple-darwin.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-apple-darwin.tar.xz" | awk '{ print $1 }')
|
||||
Windows:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-mingw64.zip
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-mingw64.zip" | awk '{ print $1 }')
|
||||
FreeBSD:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-x86_64-portbld-freebsd.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-x86_64-portbld-freebsd.tar.xz" | awk '{ print $1 }')
|
||||
A_32:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning: &cabal-${VERSION//./}-32-unknown
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-i386-linux-unknown.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-i386-linux-unknown.tar.xz" | awk '{ print $1 }')
|
||||
Linux_Alpine:
|
||||
unknown_versioning: *cabal-${VERSION//./}-32-unknown
|
||||
A_ARM64:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-aarch64-linux-deb10.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-aarch64-linux-deb10.tar.xz" | awk '{ print $1 }')
|
||||
Darwin:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-aarch64-apple-darwin.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-aarch64-apple-darwin.tar.xz" | awk '{ print $1 }')
|
||||
A_ARM:
|
||||
Linux_UnknownLinux:
|
||||
unknown_versioning:
|
||||
dlUri: https://downloads.haskell.org/~ghcup/unofficial-bindists/cabal/$VERSION/cabal-install-$VERSION-armv7-linux-deb10.tar.xz
|
||||
dlHash: $(sha256sum "cabal-install-$VERSION-armv7-linux-deb10.tar.xz" | awk '{ print $1 }')
|
||||
EOF
|
||||
|
||||
35
scripts/release/cabal/download-gh-artifacts.sh
Executable file
35
scripts/release/cabal/download-gh-artifacts.sh
Executable file
@@ -0,0 +1,35 @@
|
||||
#!/bin/bash
|
||||
|
||||
set -eu
|
||||
set -o pipefail
|
||||
|
||||
RELEASE=$1
|
||||
VERSION=${RELEASE#cabal-install-v}
|
||||
SIGNER=$2
|
||||
|
||||
echo "RELEASE: $RELEASE"
|
||||
echo "SIGNER: $SIGNER"
|
||||
|
||||
for com in gh gpg curl sha256sum ; do
|
||||
command -V ${com} >/dev/null 2>&1
|
||||
done
|
||||
|
||||
[ ! -e "gh-release-artifacts/cabal-${VERSION}" ]
|
||||
|
||||
mkdir -p "gh-release-artifacts/cabal-${VERSION}"
|
||||
|
||||
cd "gh-release-artifacts/cabal-${VERSION}"
|
||||
|
||||
# github
|
||||
gh release download "$RELEASE"
|
||||
|
||||
# cirrus
|
||||
curl --fail -L -o "cabal-install-${VERSION}-x86_64-portbld-freebsd.tar.xz" \
|
||||
"https://api.cirrus-ci.com/v1/artifact/github/haskell/ghcup-metadata/build/binaries/out/cabal-install-${VERSION}-x86_64-portbld-freebsd.tar.xz?branch=develop"
|
||||
|
||||
|
||||
sha256sum ./* > SHA256SUMS
|
||||
gpg --detach-sign -u "${SIGNER}" SHA256SUMS
|
||||
|
||||
gh release upload "$RELEASE" "cabal-install-${VERSION}-x86_64-portbld-freebsd.tar.xz" SHA256SUMS SHA256SUMS.sig
|
||||
|
||||
Reference in New Issue
Block a user