Add a second builder stage for 32 bit wine

This commit is contained in:
zontreck 2024-09-04 11:58:53 -07:00
parent 6d26bdb5fd
commit 07e7c32800

View file

@ -1,4 +1,4 @@
FROM debian:latest AS BUILDER FROM debian:latest AS BUILDER64
RUN dpkg --add-architecture i386 RUN dpkg --add-architecture i386
RUN apt-get update RUN apt-get update
@ -6,23 +6,31 @@ RUN apt-get upgrade -y
RUN apt-get install -y git build-essential gcc-multilib gcc-mingw-w64 libasound2-dev libpulse-dev libdbus-1-dev libfontconfig-dev libfreetype-dev libgnutls28-dev libgl-dev libunwind-dev libx11-dev libxcomposite-dev libxcursor-dev libxfixes-dev libxi-dev libxrandr-dev libxrender-dev libxext-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libosmesa6-dev libsdl2-dev libudev-dev libvulkan-dev libcapi20-dev libcups2-dev libgphoto2-dev libsane-dev libkrb5-dev samba-dev ocl-icd-opencl-dev libpcap-dev libusb-1.0-0-dev libv4l-dev libxxf86vm-dev libxinerama-dev pkg-config flex bison RUN apt-get install -y git build-essential gcc-multilib gcc-mingw-w64 libasound2-dev libpulse-dev libdbus-1-dev libfontconfig-dev libfreetype-dev libgnutls28-dev libgl-dev libunwind-dev libx11-dev libxcomposite-dev libxcursor-dev libxfixes-dev libxi-dev libxrandr-dev libxrender-dev libxext-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libosmesa6-dev libsdl2-dev libudev-dev libvulkan-dev libcapi20-dev libcups2-dev libgphoto2-dev libsane-dev libkrb5-dev samba-dev ocl-icd-opencl-dev libpcap-dev libusb-1.0-0-dev libv4l-dev libxxf86vm-dev libxinerama-dev pkg-config flex bison
RUN apt-get install -y build-essential:i386 libx11-dev:i386 libgl-dev:i386 libfreetype-dev:i386
WORKDIR /tmp WORKDIR /tmp
RUN git clone https://git.zontreck.com/zontreck/wine RUN git clone https://git.zontreck.com/zontreck/wine
RUN cd wine && git checkout wine-8.0 && cd .. RUN cd wine && git checkout wine-8.0 && cd ..
RUN cp -rv wine wine32
WORKDIR /tmp/wine WORKDIR /tmp/wine
RUN ./configure --enable-win64 --prefix=/var/lib/wine RUN ./configure --enable-win64 --prefix=/var/lib/wine
RUN make RUN make
WORKDIR /tmp/wine32
RUN PKG_CONFIG_PATH=$(which pkgconfig) ./configure --with-wine64=/tmp/wine --prefix=/var/lib/wine FROM --platform=i386 debian:latest AS BUILDER32
COPY --from=BUILDER64 /tmp/wine /tmp/wine64
RUN apt-get update
RUN apt-get upgrade -y
RUN apt-get install -y git build-essential gcc-multilib gcc-mingw-w64 libasound2-dev libpulse-dev libdbus-1-dev libfontconfig-dev libfreetype-dev libgnutls28-dev libgl-dev libunwind-dev libx11-dev libxcomposite-dev libxcursor-dev libxfixes-dev libxi-dev libxrandr-dev libxrender-dev libxext-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libosmesa6-dev libsdl2-dev libudev-dev libvulkan-dev libcapi20-dev libcups2-dev libgphoto2-dev libsane-dev libkrb5-dev samba-dev ocl-icd-opencl-dev libpcap-dev libusb-1.0-0-dev libv4l-dev libxxf86vm-dev libxinerama-dev pkg-config flex bison
WORKDIR /tmp
RUN git clone https://git.zontreck.com/zontreck/wine
RUN cd wine && git checkout wine-8.0 && cd ..
WORKDIR /tmp/wine
RUN PKG_CONFIG_PATH=$(which pkgconfig) ./configure --with-wine64=/tmp/wine64 --prefix=/var/lib/wine
RUN make RUN make
RUN make install RUN make install
@ -36,7 +44,7 @@ RUN dpkg --add-architecture i386
RUN apt-get update RUN apt-get update
RUN apt-get install -y gnupg2 numactl tzdata software-properties-common libntlm0 winbind xvfb xauth python3 libncurses5:i386 libncurses6:i386 libsdl2-2.0-0 libsdl2-2.0-0:i386 RUN apt-get install -y gnupg2 numactl tzdata software-properties-common libntlm0 winbind xvfb xauth python3 libncurses5:i386 libncurses6:i386 libsdl2-2.0-0 libsdl2-2.0-0:i386
COPY --from=BUILDER /var/lib/wine /var/lib/wine COPY --from=BUILDER32 /var/lib/wine /var/lib/wine
RUN export PATH=$PATH:/var/lib/wine/bin:/var/lib/wine/sbin RUN export PATH=$PATH:/var/lib/wine/bin:/var/lib/wine/sbin
RUN wget -q -O /usr/sbin/winetricks https://raw.githubusercontent.com/winetricks/winetricks/master/src/winetricks RUN wget -q -O /usr/sbin/winetricks https://raw.githubusercontent.com/winetricks/winetricks/master/src/winetricks