mirror of
https://github.com/xtool-org/xtool.git
synced 2026-02-04 11:53:30 +01:00
103 lines
2.8 KiB
Docker
103 lines
2.8 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 \
|
|
&& DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
|
ca-certificates \
|
|
build-essential \
|
|
checkinstall \
|
|
git \
|
|
autoconf \
|
|
automake \
|
|
libtool-bin \
|
|
libssl-dev \
|
|
pkg-config \
|
|
libxml2 \
|
|
curl libcurl4-openssl-dev \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
RUN mkdir /prefix
|
|
|
|
RUN curl -fsS https://dlang.org/install.sh | bash -s ldc
|
|
|
|
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
|
|
|
|
ADD https://api.github.com/repos/SuperchargeApp/SupersetteD/git/refs/heads/main Supersette-version.json
|
|
|
|
RUN git clone https://github.com/SuperchargeApp/SupersetteD.git \
|
|
&& cd SupersetteD \
|
|
&& /bin/bash -c 'source $(/root/dlang/install.sh ldc -a) && dub build --build=release' \
|
|
&& cp -r bin/libsupersette.so /prefix/usr/lib/libsupersette.so \
|
|
&& cd .. \
|
|
&& rm -rf SupersetteD
|
|
|
|
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" ]
|