diff --git a/Dockerfile b/Dockerfile index 873623cb..08c51e73 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM fpco/pid1:22.04 +FROM ubuntu:24.04 ENV HOME /home/stackage ENV LANG en_US.UTF-8 diff --git a/docker/02-apt-get-install.sh b/docker/02-apt-get-install.sh index df622b8f..acbad190 100755 --- a/docker/02-apt-get-install.sh +++ b/docker/02-apt-get-install.sh @@ -134,9 +134,9 @@ apt-get install -y \ libzip-dev \ libzmq3-dev \ libzstd-dev \ - llvm-11 \ llvm-12 \ - llvm-13 \ + llvm-14 \ + llvm-15 \ locales \ m4 \ minisat \ diff --git a/docker/03-custom-install.sh b/docker/03-custom-install.sh index 34ec1c06..8332180b 100755 --- a/docker/03-custom-install.sh +++ b/docker/03-custom-install.sh @@ -10,38 +10,13 @@ export DEBIAN_FRONTEND=noninteractive locale-gen en_US.UTF-8 -# Buggy versions of ld.bfd fail to link some Haskell packages: -# https://sourceware.org/bugzilla/show_bug.cgi?id=17689. Gold is -# faster anyways and uses less RAM. +# upstream ghc still defaults to ld.gold (though we should really switch to ld.bfd) update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.gold" 20 update-alternatives --install "/usr/bin/ld" "ld" "/usr/bin/ld.bfd" 10 -# install ocilib dependencies then build and install ocilib -cd /tmp \ - && wget https://storage.googleapis.com/oracle.fpinsight.com/instantClient/oracle-instantclient12.1-basiclite_12.1.0.2.0-2_amd64.deb \ - && dpkg -i oracle-instantclient12.1-basiclite_12.1.0.2.0-2_amd64.deb \ - && rm -f oracle-instantclient12.1-basiclite_12.1.0.2.0-2_amd64.deb \ - && wget https://storage.googleapis.com/oracle.fpinsight.com/instantClient/oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \ - && dpkg -i oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \ - && rm -f oracle-instantclient12.1-devel_12.1.0.2.0-2_amd64.deb \ - && wget https://github.com/vrogier/ocilib/archive/v4.3.2.tar.gz \ - && tar xvf v4.3.2.tar.gz \ - && cd /tmp/ocilib-4.3.2 \ - && ./configure --with-oracle-import=linkage \ - --with-oracle-charset=ansi \ - --with-oracle-headers-path=/usr/include/oracle/12.1/client64 \ - --with-oracle-lib-path=/usr/lib/oracle/12.1/client64/lib \ - && make \ - && make install \ - && cd \ - && rm -rf /tmp/ocilib-4.3.2 \ - && echo "/usr/local/lib" > /etc/ld.so.conf.d/usr-local.conf \ - && echo "/usr/lib/oracle/12.1/client64/lib" > /etc/ld.so.conf.d/oracle-client.conf \ - && ldconfig - -# Add JDK to system paths. -echo "/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server/" > /etc/ld.so.conf.d/openjdk.conf \ - && ldconfig +# # Add JDK to system paths. +# echo "/usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server" > /etc/ld.so.conf.d/openjdk.conf \ +# && ldconfig # Install erlang/otp platform and its dependencies ERLANG_DEB_FILE="esl-erlang_21.1-1~ubuntu~bionic_amd64.deb" @@ -51,15 +26,6 @@ pushd /tmp \ && rm ${ERLANG_DEB_FILE} \ && popd -# Install the TensorFlow C API. -curl https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow-cpu-linux-x86_64-1.1.0.tar.gz > libtensorflow.tar.gz \ - && sudo tar zxf libtensorflow.tar.gz -C /usr \ - && rm libtensorflow.tar.gz \ - && ldconfig - -export CLANG_PURE_LLVM_LIB_DIR=/usr/lib/llvm-9/lib; -export CLANG_PURE_LLVM_INCLUDE_DIR=/usr/lib/llvm-9/include; - # protoc, for proto-lens-combinators test suite # Instructions from: https://google.github.io/proto-lens/installing-protoc.html PROTOC_ZIP=protoc-3.3.0-linux-x86_64.zip @@ -67,9 +33,6 @@ curl -OL https://github.com/google/protobuf/releases/download/v3.3.0/$PROTOC_ZIP sudo unzip -o $PROTOC_ZIP -d /usr bin/protoc rm -f $PROTOC_ZIP - -echo /usr/lib/jvm/java-8-openjdk-amd64/jre/lib/amd64/server > /etc/ld.so.conf.d/java.conf - # Install librdkafka (Apache Kafka C/C++ library) wget -qO - https://packages.confluent.io/deb/5.2/archive.key | apt-key add - add-apt-repository "deb https://packages.confluent.io/deb/5.2 stable main" @@ -84,17 +47,3 @@ Z3_VER=4.13.4 && rm z3-${Z3_VER}-x64-glibc-2.35.zip \ && ln -s /usr/local/z3-${Z3_VER}-x64-glibc-2.35/bin/z3 /usr/bin/z3 ) - -LIBJWT_VER=1.12.1 -( -pushd /tmp \ - && wget https://github.com/benmcollins/libjwt/archive/v${LIBJWT_VER}.zip \ - && unzip v${LIBJWT_VER}.zip \ - && pushd libjwt-${LIBJWT_VER} \ - && autoreconf -fiv \ - && ./configure --disable-valgrind --disable-doxygen-doc --prefix /usr \ - && make \ - && sudo make install \ - && popd \ - && popd -)