From 16bfe482177c8d8b38369fca4a39284326cc36c3 Mon Sep 17 00:00:00 2001 From: Walter Oggioni Date: Wed, 24 Dec 2025 03:22:40 +0800 Subject: [PATCH] updated sage build --- .gitea/workflows/build-jupyter-sage.yaml | 20 ++++++----------- jupyter-sage/Dockerfile | 28 ++++++++++++------------ 2 files changed, 21 insertions(+), 27 deletions(-) diff --git a/.gitea/workflows/build-jupyter-sage.yaml b/.gitea/workflows/build-jupyter-sage.yaml index 991fa32..0a89afd 100644 --- a/.gitea/workflows/build-jupyter-sage.yaml +++ b/.gitea/workflows/build-jupyter-sage.yaml @@ -9,14 +9,6 @@ jobs: "Build Jupyter Sage docker images": runs-on: woryzen steps: - - - name: Set up QEMU - uses: docker/setup-qemu-action@v3 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - with: - driver: docker-container - name: Login to Gitea container registry uses: docker/login-action@v3 @@ -28,10 +20,12 @@ jobs: name: Build and push jupyter-sage image uses: docker/build-push-action@v5.3.0 with: + builder: multiplatform-builder context: "{{defaultContext}}:jupyter-sage" - platforms: linux/amd64,linux/arm64 + platforms: linux/amd64 push: true - pull: true - tags: gitea.woggioni.net/woggioni/jupyter-sage:latest - cache-from: type=registry,ref=gitea.woggioni.net/woggioni/jupyter-sage:buildx - cache-to: type=registry,mode=max,compression=zstd,image-manifest=true,oci-mediatypes=true,ref=gitea.woggioni.net/woggioni/jupyter-sage:buildx + build-args: "VERSION=10.8" + ssh: default=/home/luser/.ssh/id_ed25519 + tags: | + gitea.woggioni.net/woggioni/jupyter-sage:latest + gitea.woggioni.net/woggioni/jupyter-sage:10.8 diff --git a/jupyter-sage/Dockerfile b/jupyter-sage/Dockerfile index 1c38776..5bf7dc5 100644 --- a/jupyter-sage/Dockerfile +++ b/jupyter-sage/Dockerfile @@ -1,24 +1,25 @@ -FROM debian:latest +FROM debian:stable +ARG VERSION RUN apt-get update && apt-get upgrade RUN apt-get install -y bc binutils bzip2 ca-certificates cliquer cmake curl \ - ecl eclib-tools fflas-ffpack g++ gap gcc gengetopt gfan gfortran \ + ecl eclib-tools fflas-ffpack flex g++ gap gcc gengetopt gfan gfortran \ glpk-utils gmp-ecm lcalc libatomic-ops-dev libboost-dev \ libbraiding-dev libbrial-dev libbrial-groebner-dev libbz2-dev \ libcdd-dev libcdd-tools libcliquer-dev libcurl4-openssl-dev libec-dev \ libecm-dev libffi-dev libflint-dev libfplll-dev libfreetype-dev \ - libgap-dev libgc-dev libgd-dev libgf2x-dev libgiac-dev libgivaro-dev \ - libglpk-dev libgmp-dev libgsl-dev libhomfly-dev libiml-dev \ - liblfunction-dev liblinbox-dev liblrcalc-dev liblzma-dev libm4ri-dev \ - libm4rie-dev libmpc-dev libmpfi-dev libmpfr-dev libncurses5-dev \ - libntl-dev libopenblas-dev libpari-dev libplanarity-dev libppl-dev \ - libprimesieve-dev libpython3-dev libqhull-dev libreadline-dev \ - librw-dev libsingular4-dev libsqlite3-dev libssl-dev \ + libgap-dev libgc-dev libgd-dev libgf2x-dev libgivaro-dev libglpk-dev \ + libgmp-dev libgsl-dev libhomfly-dev libiml-dev liblfunction-dev \ + liblinbox-dev liblrcalc-dev liblzma-dev libm4ri-dev libm4rie-dev \ + libmpc-dev libmpfi-dev libmpfr-dev libncurses5-dev libntl-dev \ + libopenblas-dev libpari-dev libplanarity-dev libppl-dev \ + libprimecount-dev libprimesieve-dev libpython3-dev libqhull-dev \ + libreadline-dev librw-dev libsingular4-dev libsqlite3-dev libssl-dev \ libsuitesparse-dev libsymmetrica2-dev libz-dev libzmq3-dev m4 make \ maxima maxima-sage meson nauty ninja-build openssl palp pari-doc \ pari-elldata pari-galdata pari-galpol pari-gp2c pari-seadata patch \ patchelf perl pkg-config planarity ppl-dev python3 python3-setuptools \ - python3-venv singular singular-doc sqlite3 sympow tachyon tar texinfo \ - tox xcas xz-utils git + python3-venv qhull-bin singular singular-doc sqlite3 sympow tachyon \ + tar texinfo tox xz-utils RUN apt-get install -y default-jdk dvipng ffmpeg fonts-freefont-otf \ imagemagick latexmk libavdevice-dev libjpeg-dev pandoc tex-gyre \ texlive-fonts-recommended texlive-lang-cyrillic texlive-lang-english \ @@ -30,7 +31,6 @@ RUN useradd jovyan -u 1000 -s /bin/bash -m -h /home/jovyan USER jovyan WORKDIR /home/jovyan COPY build.sh build.sh -RUN git clone -c core.symlinks=true --filter blob:none \ - --origin upstream --branch master --tags \ - https://github.com/sagemath/sage.git +ADD --chown=luser:luser git@github.com:sagemath/sage.git#${VERSION} sage +WORKDIR /home/jovyan/sage RUN export srcdir=/home/jovyan/sage source build.sh && prepare && build