Skip to content

Commit

Permalink
haskell: update ghc to 9.2.2 and add pandoc
Browse files Browse the repository at this point in the history
Christmas is there. Pandoc is now in the haskell pkg. Also
some useful libraries are added.

There is already a version 9.2.3 of the ghc but that is not
compatible with the hls. Therefore I decided to take 9.2.2.
  • Loading branch information
niclas committed Jul 22, 2022
1 parent 4bbb6ba commit 6081c26
Showing 1 changed file with 58 additions and 0 deletions.
58 changes: 58 additions & 0 deletions haskell-9.2.2-0.build.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
#! /bin/bash

PKG=haskell
VERSION=9.2.2
BUILD=0

GHCUP_VERSION=0.1.17.8
CABAL_VERSION=3.6.2.0
HLS_VERSION=1.7.0.0

PREFIX=/pkg/$PKG-$VERSION-$BUILD
if [ -n "$TESTING" ]; then PREFIX=/dev/shm/$PKG-$VERSION-$BUILD ; fi

set -xe
umask 022

BUILD_TMPDIR=/dev/shm/$PKG-$VERSION-$BUILD.build.tmp
test -d $BUILD_TMPDIR && ( chmod -R u+rwx $BUILD_TMPDIR || true ; rm -rf $BUILD_TMPDIR )
mkdir -p $BUILD_TMPDIR/home
export TMPDIR=$BUILD_TMPDIR
export HOME=$BUILD_TMPDIR/home

exec </dev/null

mkdir -p $PREFIX
cat >$PREFIX/profile <<-EOF
PATH=$PREFIX/bin:\$PATH
export LD_LIBRARY_PATH=$PREFIX/lib\${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH}
if [ -d $PREFIX/.compatlibs ]; then export LD_LIBRARY_PATH=$PREFIX/.compatlibs\${LD_LIBRARY_PATH:+:\$LD_LIBRARY_PATH} ; fi
EOF
. $PREFIX/profile

export MAKEFLAGS="-j $(nproc)"

cd $PREFIX

# https://www.haskell.org/platform/linux.html#linux-generic:
# The recommended way to install the components of the generic platform is using ghcup to install ghc and cabal-install
# and following the instructions at haskellstack.org to install stack

# https://www.haskell.org/ghcup/:
# if you don't like curl | sh, see other installation method
# ---> https://gitlab.haskell.org/haskell/ghcup-hs#manual-install

mkdir -p $PREFIX/bin
test -e $PREFIX/bin/ghcup || wget -O $PREFIX/bin/ghcup https://downloads.haskell.org/~ghcup/$GHCUP_VERSION/x86_64-linux-ghcup-$GHCUP_VERSION
chmod +x $PREFIX/bin/ghcup

# ghcup list shows available and recomended versions

ghcup install ghc $VERSION -i $PREFIX --force
ghcup install cabal $CABAL_VERSION -i $PREFIX/bin --force
ghcup install hls $HLS_VERSION -i $PREFIX --force

cabal update
cabal install pandoc primes rio --prefix=$PREFIX --installdir=$PREFIX/bin --install-method=copy

exit

0 comments on commit 6081c26

Please sign in to comment.