1
1
# Base-image
2
2
FROM opensuse/tumbleweed:latest AS base
3
3
4
- ARG DOTNET_SDK_VERSION=9.0.100
4
+ ARG DOTNET_SDK_VERSION=9.0.305
5
5
ARG DOTNETCLI_URL=https://dotnetcli.azureedge.net
6
6
ARG GITHUB_URL=https://github.com
7
- ARG GRADLE_VERSION=8.14.3
8
- ARG MAVEN_VERSION=4.0.0-rc-3
7
+ ARG GRADLE_VERSION=9.0.0
8
+ ARG MAVEN_VERSION=4.0.0-rc-4
9
+ # renovate: datasource=docker depName=node
10
+ ARG NODE_VERSION=24.7.0
9
11
ARG NODEJS_DIST_URL
10
12
ARG NPM_REPO
11
13
ARG OPENSUSE_CODECS_REPO
12
14
ARG OPENSUSE_REPO
13
15
ARG PIP_CONFIG
14
- ARG SBT_VERSION=1.11.5
15
- ARG SCALA_VERSION=3.7.2
16
+ ARG SBT_VERSION=1.11.6
17
+ ARG SCALA_VERSION=3.7.3
16
18
ARG SDKMAN_URL=https://api.sdkman.io/2
17
19
18
20
ENV CC=gcc \
@@ -31,12 +33,13 @@ ENV CC=gcc \
31
33
MAVEN_HOME="/opt/maven/${MAVEN_VERSION}" \
32
34
MAVEN_VERSION=$MAVEN_VERSION \
33
35
NUGET_XMLDOC_MODE=skip \
36
+ NVM_DIR="/root/.nvm" \
34
37
PYTHONPATH=/opt/pypi \
35
38
SBT_HOME="/opt/sbt/${SBT_VERSION}" \
36
39
SBT_VERSION=$SBT_VERSION \
37
40
SCALA_HOME="/opt/scala/${SCALA_VERSION}" \
38
41
SCALA_VERSION=$SCALA_VERSION
39
- ENV PATH=${PATH}:/usr/local/bin:${MAVEN_HOME}/bin:${GRADLE_HOME}/bin:${SCALA_HOME}/bin:${SBT_HOME}/bin:${PYTHONPATH}/bin:/usr/share/dotnet
42
+ ENV PATH=${PATH}:/usr/local/bin:${NVM_DIR}/versions/node/v${NODE_VERSION}/bin:${ MAVEN_HOME}/bin:${GRADLE_HOME}/bin:${SCALA_HOME}/bin:${SBT_HOME}/bin:${PYTHONPATH}/bin:/usr/share/dotnet
40
43
41
44
RUN set -e; \
42
45
if [ -n "$NODEJS_DIST_URL" ]; then \
@@ -81,30 +84,28 @@ RUN set -e; \
81
84
-l \
82
85
--no-recommends \
83
86
bzip2 \
84
- cargo1.86 \
87
+ cargo1.88 \
85
88
findutils \
86
89
gawk \
87
- gcc14 \
88
- gcc14 -c++ \
89
- gcc14 -fortran \
90
+ gcc15 \
91
+ gcc15 -c++ \
92
+ gcc15 -fortran \
90
93
git-core \
91
94
java-24-openjdk-devel \
92
95
libicu-devel \
93
96
make \
94
- nodejs22 \
95
- npm22 \
96
- python312 \
97
- python312-devel \
98
- python312-pip \
99
- rust1.86 \
97
+ python313 \
98
+ python313-devel \
99
+ python313-pip \
100
+ rust1.88 \
100
101
unzip \
101
102
wget \
102
103
zip \
103
- && update-alternatives --install /usr/bin/cc cc /usr/bin/gcc-14 10 \
104
- && update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-14 10 \
105
- && update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-14 10 \
106
- && update-alternatives --install /usr/bin/gfortran gfortran /usr/bin/gfortran-14 10 \
107
- && update-alternatives --install /usr/bin/python python /usr/bin/python3.12 10 \
104
+ && update-alternatives --install /usr/bin/cc cc /usr/bin/gcc-15 10 \
105
+ && update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-15 10 \
106
+ && update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-15 10 \
107
+ && update-alternatives --install /usr/bin/gfortran gfortran /usr/bin/gfortran-15 10 \
108
+ && update-alternatives --install /usr/bin/python python /usr/bin/python3.13 10 \
108
109
&& curl -L "https://get.sdkman.io" | bash \
109
110
&& SDKMAN_BROKER_API="$SDKMAN_URL/broker" \
110
111
&& SDKMAN_CANDIDATES_API="$SDKMAN_URL" \
@@ -135,6 +136,13 @@ RUN set -e; \
135
136
pipenv \
136
137
poetry \
137
138
uv \
139
+ && curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash \
140
+ && source ${NVM_DIR}/nvm.sh \
141
+ && nvm install ${NODE_VERSION} \
142
+ && npm install -g \
143
+ corepack \
144
+ node-gyp \
145
+ && npx node-gyp install \
138
146
&& node -v \
139
147
&& npm -v \
140
148
&& npm install -g corepack \
@@ -196,7 +204,7 @@ RUN set -e; \
196
204
&& corepack pnpm cache delete \
197
205
&& mkdir -p ${NODE_COMPILE_CACHE} \
198
206
&& node /opt/cdxgen/bin/cdxgen.js --help \
199
- && rm -rf $HOME/.npmrc $HOME/.pip $HOME/.pip /root/.cache/node \
207
+ && rm -rf $HOME/.npmrc $HOME/.pip /root/.cache/node \
200
208
&& zypper clean -a \
201
209
&& chmod a-w -R /opt \
202
210
&& if [ -n "$OPENSUSE_REPO" ]; then \
0 commit comments