Files
linuxkit/pkg/firmware/Dockerfile
Avi Deitcher 506d11f06d bump alpine; add erofs-utils package (#4161)
* bump alpine to 3.22; include erofs-utils

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* tools/alpine: Update to latest

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* tools: Update to the latest linuxkit/alpine

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* Update use of tools to latest

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* Update use of test packages to latest

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* pkgs: Update packages to the latest linuxkit/alpine

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* Update package tags

Signed-off-by: Avi Deitcher <avi@deitcher.net>

* fix scaleway error

Signed-off-by: Avi Deitcher <avi@deitcher.net>

---------

Signed-off-by: Avi Deitcher <avi@deitcher.net>
2025-08-27 19:07:26 +03:00

49 lines
1.5 KiB
Docker

# Make modules from a recentish kernel available
FROM linuxkit/kernel:6.6.71 AS kernel
FROM linuxkit/alpine:6090baae063eb5023c9601966e88df831f789a70 AS build
RUN apk add --no-cache git kmod
# Clone the firmware repository
# Make sure you also update the FW_COMMIT in ../firmware-all/Dockerfile
ENV FW_URL=git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
ENV FW_COMMIT=edf390c23a4e185ff36daded36575f669f5059f7
WORKDIR /
RUN git clone ${FW_URL} && \
cd /linux-firmware && \
git checkout ${FW_COMMIT}
# Copy files we always need/want: Licenses, docs and AMD CPU microcode
WORKDIR /linux-firmware
RUN set -e && \
mkdir -p /out/lib/firmware && \
cp README WHENCE /out/lib/firmware && \
cp GPL-? LICENSE.* LICENCE.* /out/lib/firmware && \
case $(uname -m) in \
x86_64) \
cp -r amd-ucode /out/lib/firmware; \
;; \
esac
# Create copy of files with symlinks based on WHENCE
RUN cd /linux-firmware && \
./copy-firmware.sh /linux-firmware-whence
# Extract kernel modules for
WORKDIR /
COPY --from=kernel /kernel.tar /kernel.tar
RUN tar xf /kernel.tar
# Copy files required by the modules
RUN set -e && \
for fw in $(find /lib/modules -name \*.ko -exec modinfo --field=firmware {} \;); do \
mkdir -p "/out/lib/firmware/$(dirname $fw)" && \
[ -e "/linux-firmware-whence/$fw" ] && cp "/linux-firmware-whence/$fw" "/out/lib/firmware/$fw"; \
done
FROM scratch
WORKDIR /
ENTRYPOINT []
COPY --from=build /out/lib/ /lib/