Files
xtool-mirror/Dockerfile
2024-11-17 03:47:16 -05:00

92 lines
2.3 KiB
Docker

# Note: We use 20.04 since AppImage recommends building on the
# oldest configuration that you support
FROM ubuntu:focal AS limd-build
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
ca-certificates \
build-essential \
checkinstall \
git \
autoconf \
automake \
libtool-bin \
libssl-dev \
pkg-config \
libcurl4-openssl-dev \
&& rm -rf /var/lib/apt/lists/*
RUN mkdir /prefix
RUN git clone https://github.com/libimobiledevice/libplist.git \
&& cd libplist \
&& ./autogen.sh --prefix /usr --without-cython \
&& make \
&& make install \
&& make install DESTDIR=/prefix \
&& cd .. \
&& rm -rf libplist
RUN git clone https://github.com/libimobiledevice/libimobiledevice-glue.git \
&& cd libimobiledevice-glue \
&& ./autogen.sh --prefix /usr \
&& make \
&& make install \
&& make install DESTDIR=/prefix \
&& cd .. \
&& rm -rf libimobiledevice-glue
RUN git clone https://github.com/libimobiledevice/libusbmuxd.git \
&& cd libusbmuxd \
&& ./autogen.sh --prefix /usr \
&& make \
&& make install \
&& make install DESTDIR=/prefix \
&& cd .. \
&& rm -rf libusbmuxd
RUN git clone https://github.com/libimobiledevice/libtatsu.git \
&& cd libtatsu \
&& ./autogen.sh --prefix /usr \
&& make \
&& make install \
&& make install DESTDIR=/prefix \
&& cd .. \
&& rm -rf libtatsu
RUN git clone https://github.com/libimobiledevice/libimobiledevice.git \
&& cd libimobiledevice \
&& ./autogen.sh --prefix /usr --without-cython --enable-debug \
&& make \
&& make install \
&& make install DESTDIR=/prefix \
&& cd .. \
&& rm -rf libimobiledevice
FROM swift:6.0-focal
RUN apt-get update \
&& apt-get install -y --no-install-recommends \
curl \
libssl-dev \
ca-certificates \
zip unzip \
&& rm -rf /var/lib/apt/lists/*
COPY --from=limd-build /prefix/usr /usr
# Docker doesn't support FUSE
ENV APPIMAGE_EXTRACT_AND_RUN=1
# Use the host's usbmuxd.
# You probably want to use socat on the host to forward this port to /var/run/usbmuxd:
# socat -dd TCP-LISTEN:27015,range=127.0.0.1/32,reuseaddr,fork UNIX-CLIENT:/var/run/usbmuxd
ENV USBMUXD_SOCKET_ADDRESS=host.docker.internal:27015
WORKDIR /Supersign
ENTRYPOINT [ "/bin/bash" ]