@@ -300,19 +300,6 @@ jobs:
300300 allow-failure: false
301301 fail-fast: false
302302 steps:
303- - name: Set GHCJS environment variables
304- run: |
305- if [ $HCKIND = ghcjs ]; then
306- echo "GHCJS=true" >> "$GITHUB_ENV"
307- echo "GHCJSARITH=1" >> "$GITHUB_ENV"
308- else
309- echo "GHCJS=false" >> "$GITHUB_ENV"
310- echo "GHCJSARITH=0" >> "$GITHUB_ENV"
311- fi
312- env:
313- HCKIND: ${{ matrix.compilerKind }}
314- HCNAME: ${{ matrix.compiler }}
315- HCVER: ${{ matrix.compilerVersion }}
316303 - name: apt-get install
317304 run: |
318305 apt-get update
@@ -329,7 +316,13 @@ jobs:
329316 - name: Install GHC (hvr-ppa)
330317 if: matrix.setup-method == 'hvr-ppa'
331318 run: |
332- echo true
319+ apt-add-repository -y 'ppa:hvr/ghc'
320+ apt-get update
321+ apt-get install -y "$HCNAME"
322+ HC=$HCDIR/bin/$HCKIND
323+ echo "HC=$HC" >> "$GITHUB_ENV"
324+ echo "HCPKG=$HCDIR/bin/$HCKIND-pkg" >> "$GITHUB_ENV"
325+ echo "HADDOCK=$HCDIR/bin/haddock" >> "$GITHUB_ENV"
333326 env:
334327 HCKIND: ${{ matrix.compilerKind }}
335328 HCNAME: ${{ matrix.compiler }}
@@ -348,14 +341,41 @@ jobs:
348341 HCKIND: ${{ matrix.compilerKind }}
349342 HCNAME: ${{ matrix.compiler }}
350343 HCVER: ${{ matrix.compilerVersion }}
344+ - name: Install GHC (GHCup vanilla)
345+ if: matrix.setup-method == 'ghcup-vanilla'
346+ run: |
347+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
348+ HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
349+ HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
350+ HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
351+ echo "HC=$HC" >> "$GITHUB_ENV"
352+ echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
353+ echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
354+ env:
355+ HCKIND: ${{ matrix.compilerKind }}
356+ HCNAME: ${{ matrix.compiler }}
357+ HCVER: ${{ matrix.compilerVersion }}
358+ - name: Install GHC (GHCup prerelease)
359+ if: matrix.setup-method == 'ghcup-prerelease'
360+ run: |
361+ "$HOME/.ghcup/bin/ghcup" config add-release-channel https://raw.githubusercontent.com/haskell/ghcup-metadata/master/ghcup-prereleases-0.0.8.yaml;
362+ "$HOME/.ghcup/bin/ghcup" install ghc "$HCVER" || (cat "$HOME"/.ghcup/logs/*.* && false)
363+ HC=$("$HOME/.ghcup/bin/ghcup" whereis ghc "$HCVER")
364+ HCPKG=$(echo "$HC" | sed 's#ghc$#ghc-pkg#')
365+ HADDOCK=$(echo "$HC" | sed 's#ghc$#haddock#')
366+ echo "HC=$HC" >> "$GITHUB_ENV"
367+ echo "HCPKG=$HCPKG" >> "$GITHUB_ENV"
368+ echo "HADDOCK=$HADDOCK" >> "$GITHUB_ENV"
369+ env:
370+ HCKIND: ${{ matrix.compilerKind }}
371+ HCNAME: ${{ matrix.compiler }}
372+ HCVER: ${{ matrix.compilerVersion }}
351373 - name: Set PATH and environment variables
352374 run: |
353375 echo "$HOME/.cabal/bin" >> $GITHUB_PATH
354- if [ $((GHCJSARITH)) -ne 0 ] ; then echo "/opt/ghc/8.4.4/bin" >> $GITHUB_PATH ; fi
355376 echo "LANG=C.UTF-8" >> "$GITHUB_ENV"
356377 echo "CABAL_DIR=$HOME/.cabal" >> "$GITHUB_ENV"
357378 echo "CABAL_CONFIG=$HOME/.cabal/config" >> "$GITHUB_ENV"
358- HCDIR=/opt/$HCKIND/$HCVER
359379 HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
360380 echo "HCNUMVER=$HCNUMVER" >> "$GITHUB_ENV"
361381 echo "ARG_TESTS=--enable-tests" >> "$GITHUB_ENV"
@@ -410,8 +430,6 @@ jobs:
410430 $HC --version || true
411431 $HC --print-project-git-commit-id || true
412432 $CABAL --version || true
413- if [ $((GHCJSARITH)) -ne 0 ] ; then node --version ; fi
414- if [ $((GHCJSARITH)) -ne 0 ] ; then echo $GHCJS ; fi
415433 - name: update cabal index
416434 run: |
417435 $CABAL v2-update -v
0 commit comments