Skip to content

haskell: update ghc to 9.2.2 and add pandoc #199

Merged
merged 1 commit into from
Aug 27, 2022
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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 --libdir=$PREFIX/lib --flags=embed_data_files

exit