diff --git a/Dockerfile b/Dockerfile index 2cff4d7..ccb09dc 100644 --- a/Dockerfile +++ b/Dockerfile @@ -2,14 +2,15 @@ FROM debian:bookworm-slim ARG ANDROID_PATCH BUILD_ENV=local MIRROR_URL=http://mirrors.aliyun.com/debian/ -COPY ["./build-scripts/pre_build.sh", "./build-scripts/set-mirror.sh", "/tmp/build-scripts/"] +COPY ["./build-scripts/config-apt.sh", "./build-scripts/add-qemu.sh", "/tmp/build-scripts/"] -RUN extra_pkg_cross="libxss1 libgconf-2-4" . /tmp/build-scripts/pre_build.sh && \ +RUN . /tmp/build-scripts/config-apt.sh && \ + . /tmp/build-scripts/add-qemu.sh && \ apt-get update && \ apt-get install -y --no-install-recommends --no-install-suggests \ libgtk2.0-0 libx11-xcb1 libxtst6 libnss3 libasound2 libdbus-glib-1-2 iptables xclip\ dante-server tigervnc-standalone-server tigervnc-tools psmisc flwm x11-utils\ - busybox libssl-dev iproute2 tinyproxy-bin $extra_pkg && \ + busybox libssl-dev iproute2 tinyproxy-bin libxss1 libgconf-2-4 $extra_pkg && \ rm -rf /var/lib/apt/lists/* RUN groupadd -r socks && useradd -r -g socks socks diff --git a/Dockerfile.build b/Dockerfile.build index f94a232..f36e2b3 100644 --- a/Dockerfile.build +++ b/Dockerfile.build @@ -1,20 +1,19 @@ FROM debian:bookworm-slim AS build -ARG ANDROID_PATCH BUILD_ENV=local +ARG ANDROID_PATCH BUILD_ENV=local MIRROR_URL=http://mirrors.aliyun.com/debian/ -RUN mkdir results && cd results && mkdir fake-hwaddr +COPY ["./build-scripts/config-apt.sh", "./build-scripts/add-qemu.sh", "/tmp/build-scripts/"] -RUN if [ -n "${ANDROID_PATCH}" ]; then \ - groupadd -g 3003 inet && usermod -a -G inet root && usermod -g inet -ou 0 daemon && usermod -g inet -ou 0 _apt; \ - fi - -RUN if [ "${BUILD_ENV}" = "local" ]; then sed -i s/deb.debian.org/mirrors.aliyun.com/ /etc/apt/sources.list; fi &&\ +RUN . /tmp/build-scripts/config-apt.sh && \ + . /tmp/build-scripts/add-qemu.sh && \ gcc=gcc && if [ "$(dpkg --print-architecture)" != "amd64" ]; then \ dpkg --add-architecture amd64 && gcc=gcc-x86-64-linux-gnu ; \ fi &&\ apt-get update && \ apt-get install -y --no-install-recommends --no-install-suggests $gcc libc6-dev:amd64 make +RUN mkdir results && cd results && mkdir fake-hwaddr + COPY fake-hwaddr /src/fake-hwaddr/ RUN cd /src/fake-hwaddr && make && install -D fake-hwaddr.so /results/fake-hwaddr/usr/local/lib/fake-hwaddr.so diff --git a/Dockerfile.cli b/Dockerfile.cli index 0545a6b..f441f88 100644 --- a/Dockerfile.cli +++ b/Dockerfile.cli @@ -2,9 +2,10 @@ FROM debian:bookworm-slim ARG ANDROID_PATCH BUILD_ENV=local MIRROR_URL=http://mirrors.aliyun.com/debian/ -COPY ["./build-scripts/pre_build.sh", "./build-scripts/set-mirror.sh", "/tmp/build-scripts/"] +COPY ["./build-scripts/config-apt.sh", "./build-scripts/add-qemu.sh", "/tmp/build-scripts/"] -RUN . /tmp/build-scripts/pre_build.sh && \ +RUN . /tmp/build-scripts/config-apt.sh && \ + . /tmp/build-scripts/add-qemu.sh && \ apt-get update && \ apt-get install -y --no-install-recommends --no-install-suggests iptables \ libstdc++6:amd64 dante-server busybox iproute2 tinyproxy-bin ${extra_pkg} && \ diff --git a/Dockerfile.vncless b/Dockerfile.vncless index a05e007..bbf749a 100644 --- a/Dockerfile.vncless +++ b/Dockerfile.vncless @@ -2,13 +2,14 @@ FROM debian:bookworm-slim ARG ANDROID_PATCH BUILD_ENV=local MIRROR_URL=http://mirrors.aliyun.com/debian/ -COPY ["./build-scripts/pre_build.sh", "./build-scripts/set-mirror.sh", "/tmp/build-scripts/"] +COPY ["./build-scripts/config-apt.sh", "./build-scripts/add-qemu.sh", "/tmp/build-scripts/"] -RUN extra_pkg_cross="libxss1 libgconf-2-4" . /tmp/build-scripts/pre_build.sh && \ +RUN . /tmp/build-scripts/config-apt.sh && \ + . /tmp/build-scripts/add-qemu.sh && \ apt-get update && \ apt-get install -y --no-install-recommends --no-install-suggests $extra_pkg \ libgtk2.0-0 libx11-xcb1 libxtst6 libnss3 libasound2 libdbus-glib-1-2 iptables \ - dante-server psmisc libxaw7 xclip busybox libssl-dev iproute2 tinyproxy-bin && \ + dante-server psmisc libxaw7 xclip busybox libssl-dev iproute2 tinyproxy-bin libxss1 libgconf-2-4 && \ cd /tmp && apt download x11-utils && dpkg -x x11-utils_*.deb x11-utils && \ mkdir -p /usr/local/bin && cp x11-utils/usr/bin/xmessage /usr/local/bin && rm -r x11-utils* && \ rm -rf /var/lib/apt/lists/* diff --git a/build-scripts/add-qemu.sh b/build-scripts/add-qemu.sh new file mode 100755 index 0000000..a6d33bd --- /dev/null +++ b/build-scripts/add-qemu.sh @@ -0,0 +1,4 @@ +#!/bin/sh +if [ "$(dpkg --print-architecture)" != "amd64" ]; then + dpkg --add-architecture amd64 && extra_pkg="qemu-user libc6:amd64 libstdc++6:amd64" +fi diff --git a/build-scripts/set-mirror.sh b/build-scripts/config-apt.sh similarity index 52% rename from build-scripts/set-mirror.sh rename to build-scripts/config-apt.sh index 1e18c87..b7f35f1 100755 --- a/build-scripts/set-mirror.sh +++ b/build-scripts/config-apt.sh @@ -1,11 +1,15 @@ -#!/bin/bash +#!/bin/sh +if [ -n "${ANDROID_PATCH}" ]; then + groupadd -g 3003 inet && usermod -a -G inet root && usermod -g inet -ou 0 daemon && usermod -g inet -ou 0 _apt +fi && if [ "${BUILD_ENV}" = "local" ]; then if [ -n "$MIRROR_URL" ]; then origin="$(cat /etc/apt/sources.list)" default_mirror=http://deb.debian.org/debian - replaced="${origin//$default_mirror/$MIRROR_URL}" + replaced="$(origin=$origin default_mirror=$default_mirror bash -c 'echo "${origin//$default_mirror/$MIRROR_URL}"')" printf %s "$replaced" > /etc/apt/sources.list fi else echo "Warning: The BUILD_ENV build argument has been deprecated and will be removed. Please use MIRROR_URL instead." >&2 -fi +fi && +extra_apk="" diff --git a/build-scripts/pre_build.sh b/build-scripts/pre_build.sh deleted file mode 100755 index 4175d92..0000000 --- a/build-scripts/pre_build.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/sh -if [ -n "${ANDROID_PATCH}" ]; then - groupadd -g 3003 inet && usermod -a -G inet root && usermod -g inet -ou 0 daemon && usermod -g inet -ou 0 _apt -fi && -/tmp/build-scripts/set-mirror.sh && -extra_pkg='' && -if [ "$(dpkg --print-architecture)" != "amd64" ]; then - dpkg --add-architecture amd64 && extra_pkg="$extra_pkg_cross qemu-user libc6:amd64 libstdc++6:amd64" -fi