FROM rust:1.81
# Install necessary tools and dependencies
RUN apt-get update && apt-get install -y --no-install-recommends \
build-essential \
clang \
cmake \
curl \
file \
git \
libssl-dev \
pkg-config \
python3 \
qemu-user-static \
wget \
xz-utils \
zlib1g-dev \
&& apt-get clean && rm -rf /var/lib/apt/lists/*
# Install Docker (for cross)
RUN curl -fsSL https://get.docker.com | sh
# Install Cross
RUN cargo install cross --git https://github.com/cross-rs/cross
# Add macOS cross-compilation toolchain using osxcross
# RUN git clone https://github.com/tpoechtrager/osxcross.git /osxcross \
# && cd ../osxcross \
# && wget -q https://github.com/tpoechtrager/osxcross/releases/download/v1.1/MacOSX10.11.sdk.tar.xz -O tarballs/MacOSX10.11.sdk.tar.xz \
# && UNATTENDED=1 ./build.sh
# ENV PATH="/osxcross/target/bin:$PATH"
# ENV CROSS_CONTAINER_IN_CONTAINER=true
# ENV MACOSX_DEPLOYMENT_TARGET=11.0
# # Add Windows cross-compilation toolchain
# RUN rustup target add x86_64-pc-windows-gnu aarch64-pc-windows-gnu
# # Add Linux cross-compilation toolchains
# RUN rustup target add x86_64-unknown-linux-gnu aarch64-unknown-linux-gnu
# Set up entrypoint for container
WORKDIR /project
ENTRYPOINT ["/bin/bash"]