Skip to content
Open
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
53 changes: 38 additions & 15 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,15 +1,38 @@
FROM centos:7

RUN sed -i \
-e 's/^mirrorlist/#mirrorlist/' \
-e 's/^#baseurl/baseurl/' \
-e 's/mirror\.centos\.org/vault.centos.org/' \
/etc/yum.repos.d/*.repo && \
yum -y -q install \
libXpm net-tools bzip2 wget vim gcc gcc-c++ samba dos2unix glibc-devel glibc.i686 glibc-devel.i686 \
mpfr.i686 mpfr-devel.i686 rsync autogen autoconf automake libtool gettext* bison binutils \
flex device-mapper-devel SDL libpciaccess libusb freetype freetype-devel gnu-free-* qemu-* virt-* \
libvirt* vte* NetworkManager-bluetooth brlapi fuse-devel dejavu* gnu-efi* pesign shim \
iscsi-initiator-utils grub2-tools zip nasm acpica-tools glibc-static zlib-static xorriso lz4 squashfs-tools

CMD cd /ventoy/INSTALL && ls -la && sh docker_ci_build.sh
# Modern Ventoy builder - AlmaLinux 9 (replaces dead CentOS 7)
FROM almalinux:9 AS builder

RUN dnf update -y && \
dnf install -y epel-release && \
dnf install -y \
gcc gcc-c++ make git tar bzip2 patch perl findutils \
glibc-devel glibc-devel.i686 \
gcc-aarch64-linux-gnu binutils-aarch64-linux-gnu \
gcc-riscv64-linux-gnu binutils-riscv64-linux-gnu \
clang lld llvm llvm-devel llvm-static \
mingw64-gcc mingw64-binutils mingw64-cpp \
mingw64-llvm mingw64-llvm-static mingw64-llvm-tools \ # <-- This is what you wanted
python3 python3-pip python3-devel \
qemu virt-* libvirt* fuse-devel dejavu-sans-fonts \
gnu-efi nasm acpica-tools xz bzip2-devel \
&& dnf clean all

# cmake-converter (for any old VS project conversions)
# cross compilation via cmake n clang
RUN pip3 install cmake-converter

# Full llvm-mingw (pure Clang-based MinGW cross, including static libs)
# Latest as of early April 2026 — update the version when a newer release drops
ARG LLVM_MINGW_VERSION=20250401
RUN curl -L -o /tmp/llvm-mingw.tar.xz \
https://github.com/mstorsjo/llvm-mingw/releases/download/\( {LLVM_MINGW_VERSION}/llvm-mingw- \){LLVM_MINGW_VERSION}-ucrt-ubuntu-20.04-x86_64.tar.xz && \
mkdir -p /opt/llvm-mingw && \
tar -xf /tmp/llvm-mingw.tar.xz -C /opt/llvm-mingw --strip-components=1 && \
rm -f /tmp/llvm-mingw.tar.xz

ENV PATH="/opt/llvm-mingw/bin:${PATH}"

WORKDIR /ventoy
COPY . /ventoy

# Default: run iPXE build (override with docker compose or docker run)
CMD ["bash", "-c", "cd IPXE && ./buildipxe.sh"]