Skip to content

GHCup Setup

Actions
Download a pre-built version of GHCup and add it to the PATH
v1.2.1
Latest
Star (6)

GHCup action

A simple github action to install ghcup binary on any system and add it to PATH.

Usage

See action.yml

Minimal

on: [push]
name: build
jobs:
  runhaskell:
    name: Hello World
    runs-on: ubuntu-latest # or macOS-latest, or windows-latest
    steps:
      - uses: actions/checkout@v4
      - uses: haskell/ghcup-setup@v1
      - run: |
          ghcup install ghc --set latest
          runhaskell Hello.hs

Matrix testing with prereleases

on: [push]
name: build
jobs:
  build:
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        ghc: ['8.6.5', '8.8.4', 'latest-prerelease']
        cabal: ['2.4.1.0', '3.0.0.0']
        os: [ubuntu-latest, macOS-latest, windows-latest]
        exclude:
          - ghc: 8.8.4
            cabal: 2.4.1.0
    name: Haskell GHC ${{ matrix.ghc }} sample
    steps:
      - uses: actions/checkout@v4
      - uses: haskell/ghcup-setup@v1
        with:
          ghc: ${{ matrix.ghc }}
          cabal: ${{ matrix.cabal }}
          config: |
            # see https://github.com/haskell/ghcup-hs/blob/master/data/config.yaml
            # for full documentation
            url-source:
              - GHCupURL
              - prereleases
      - run: |
          runhaskell Hello.hs

Inputs

Name Description Type Default
version GHCup version to install string latest
ghc GHC version to install string undefined
cabal cabal-install version to install string undefined
stack Stack version to install string undefined
hls HLS version to install string undefined
config Set ghcup config string[] []
stack-hook Install the GHCup stack hook (GHCs are installed through ghcup) boolean false

Outputs

Name Description Type
path Path to the installed GHCup string
version Version of the installed GHCup string
basedir Base directory of GHCup string
bindir Binary directory of GHCup string
cachedir Cache directory of GHCup string
logsdir Log directory of GHCup string
confdir Config directory of GHCup string

GHCup Setup is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.

About

Download a pre-built version of GHCup and add it to the PATH
v1.2.1
Latest

GHCup Setup is not certified by GitHub. It is provided by a third-party and is governed by separate terms of service, privacy policy, and support documentation.