2025-11-17 03:14:15 UTC
679 MB
noninteractive
DISPLAY:99.0
NEKO_PLUGINS_DIR/etc/neko/plugins/
NEKO_PLUGINS_ENABLEDtrue
NEKO_SERVER_BIND:8080
PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PULSE_SERVERunix:/tmp/pulseaudio.socket
USERneko
XDG_RUNTIME_DIR/tmp/runtime-neko
[#000] sha256:cf5f39ef3fca9730ed04aee5f10040ea152a9793dec0d626f4205eeac5ec3fc0 - 4.25% (28.9 MB)
[#001] sha256:e8673970cb3eadbeea276b8b4ae27156ea00c043a067de2b1944af5d2e1c9467 - 46.98% (319 MB)
[#002] sha256:aa0fb254c0ae9ae524c2096e51e1abb85f21980ba0aa13d0651e3b017d3a360f - 0.0% (182 Bytes)
[#003] sha256:e5c7cf81afea356dca4d925ccd108740f0def22d907ac5597bfefe0b35bd525d - 0.0% (271 Bytes)
[#004] sha256:6bfa178b69f9558595bb24c7aa5665ba327077691ad7a65b1256c3b66e774b6c - 0.0% (512 Bytes)
[#005] sha256:739496b6486260e4d2923d9621a73012bb5819faffbf352457fa9e6ab47da0ef - 0.0% (673 Bytes)
[#006] sha256:c7d17e4606334a0d487b3b39cc7f762dfc78d42461be4fba9507b18e73571c8a - 0.0% (321 Bytes)
[#007] sha256:cc8c3234d3b41b007ec0e3adc34fee1507f1588f515ab5f53746c701520b94e6 - 0.0% (1.76 KB)
[#008] sha256:9b17a22637b610948372cbeec993306e8507b444073c8d372e0400b76aba2d43 - 0.0% (191 Bytes)
[#009] sha256:22411b094d4fa4a1ba75ef84b14adcc2d1e22efe46d454ca9a28003aec1c634d - 0.0% (692 Bytes)
[#010] sha256:170a415f0066366949a28d23cec38799eaa1b0af97086844cbfbc9ddde9bade0 - 0.0% (195 Bytes)
[#011] sha256:d9cf9acb56c865f54194acb3b38aea1cbcffd887640b1e60e520055a649790db - 0.0% (138 Bytes)
[#012] sha256:600ab83e2ed45007ea90ce188237a5511fe920b5b7840b4423a62876d49fc6bf - 1.43% (9.7 MB)
[#013] sha256:1d6bbdf7fca5e00c2869af94b2df006b67926eb5f0b7837fce6b34088cfd1b3d - 0.79% (5.33 MB)
[#014] sha256:c006ac41cea556395cf1260068993094da0965b6ace1fc2b2702f4c16b8f688c - 0.01% (65.4 KB)
[#015] sha256:4e4c116974b5afb40853fbed29967f921967e0b1b615cb891d3cefb22077b064 - 0.0% (25.1 KB)
[#016] sha256:c190bab289931e0496095f4e3248fa77583ad5e4f7a2db7435b0da112cd6015a - 0.0% (361 Bytes)
[#017] sha256:9af4937b9a69613db88190b314a7d66b5bdb8417bcaedd752bf88767db492000 - 46.54% (316 MB)
[#018] sha256:c06c17331b73828516ba0b1334f7b5b7b6c9ec53222b5c0b364ed3dcda175b77 - 0.0% (472 Bytes)
[#019] sha256:1d94bcf36143811d73bff7b7da582e640fc60529988be1c4fbec38b6c4a64a51 - 0.0% (5.49 KB)
# debian.sh --arch 'amd64' out/ 'bullseye' '@1762202650'
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ARG USERNAME=neko
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ARG USER_UID=1000
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ARG USER_GID=1000
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ENV DEBIAN_FRONTEND=noninteractive
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)RUN |3 USERNAME=neko USER_UID=1000 USER_GID=1000 /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends wget ca-certificates python2 supervisor pulseaudio dbus-x11 xserver-xorg-video-dummy libcairo2 libxcb1 libxrandr2 libxv1 libopus0 libvpx6 zip curl xdotool xclip libgtk-3-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-pulseaudio gstreamer1.0-omx; ARCH=$(dpkg --print-architecture); wget http://ftp.de.debian.org/debian/pool/main/libx/libxcvt/libxcvt0_0.1.2-1_${ARCH}.deb; apt-get install --no-install-recommends ./libxcvt0_0.1.2-1_${ARCH}.deb; rm ./libxcvt0_0.1.2-1_${ARCH}.deb; groupadd --gid $USER_GID $USERNAME; useradd --uid $USER_UID --gid $USERNAME --shell /bin/bash --create-home $USERNAME; adduser $USERNAME audio; adduser $USERNAME video; adduser $USERNAME pulse; mkdir /tmp/.X11-unix; chmod 1777 /tmp/.X11-unix; chown $USERNAME /tmp/.X11-unix/; mkdir -p /etc/neko /var/www /var/log/neko /tmp/runtime-$USERNAME /home/$USERNAME/.config/pulse /home/$USERNAME/.local/share/xorg; chmod 1777 /var/log/neko; chown $USERNAME /var/log/neko/ /tmp/runtime-$USERNAME; chown -R $USERNAME:$USERNAME /home/$USERNAME; apt-get install -y --no-install-recommends fonts-noto-color-emoji fonts-arphic-ukai fonts-arphic-uming fonts-wqy-zenhei xfonts-intl-chinese xfonts-wqy fonts-ipafont-mincho fonts-ipafont-gothic fonts-takao-mincho fonts-unfonts-core fonts-wqy-microhei fonts-indic; apt-get clean -y; rm -rf /var/lib/apt/lists/* /var/cache/apt/* # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY --chown=neko:neko runtime/.Xresources /home/neko/.Xresources # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY runtime/dbus /usr/bin/dbus # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY runtime/default.pa /etc/pulse/default.pa # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY runtime/supervisord.conf /etc/neko/supervisord.conf # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY runtime/supervisord.dbus.conf /etc/neko/supervisord.dbus.conf # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY runtime/xorg.conf /etc/neko/xorg.conf # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY --chown=neko:neko runtime/icon-theme /home/neko/.icons/default # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY runtime/fontconfig/* /etc/fonts/conf.d/ # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)COPY runtime/fonts /usr/local/share/fonts # buildkit
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ENV USER=neko
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ENV DISPLAY=:99.0
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ENV PULSE_SERVER=unix:/tmp/pulseaudio.socket
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ENV XDG_RUNTIME_DIR=/tmp/runtime-neko
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ENV NEKO_SERVER_BIND=:8080
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ENV NEKO_PLUGINS_ENABLED=true
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)ENV NEKO_PLUGINS_DIR=/etc/neko/plugins/
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)HEALTHCHECK &{["CMD-SHELL" "wget -O - http://localhost:${NEKO_SERVER_BIND#*:}/health || wget --no-check-certificate -O - https://localhost:${NEKO_SERVER_BIND#*:}/health || exit 1"] "10s" "5s" "0s" "0s" '\b'}
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)CMD ["/usr/bin/supervisord" "-c" "/etc/neko/supervisord.conf"]
2025-11-17 03:09:31 UTC (buildkit.dockerfile.v0)LABEL net.m1k1o.neko.api-version=3
2025-11-17 03:10:03 UTC (buildkit.dockerfile.v0)COPY /src/bin/plugins/ /etc/neko/plugins/ # buildkit
2025-11-17 03:10:03 UTC (buildkit.dockerfile.v0)COPY /src/bin/neko /usr/bin/neko # buildkit
2025-11-17 03:10:06 UTC (buildkit.dockerfile.v0)COPY /src/dist/ /var/www # buildkit
2025-11-17 03:10:06 UTC (buildkit.dockerfile.v0)COPY /usr/local/lib/xorg/modules/drivers/dummy_drv.so /usr/lib/xorg/modules/drivers/dummy_drv.so # buildkit
2025-11-17 03:10:06 UTC (buildkit.dockerfile.v0)COPY /usr/local/lib/xorg/modules/input/neko_drv.so /usr/lib/xorg/modules/input/neko_drv.so # buildkit
2025-11-17 03:10:06 UTC (buildkit.dockerfile.v0)COPY config.yml /etc/neko/neko.yaml # buildkit
2025-11-17 03:14:15 UTC (buildkit.dockerfile.v0)ARG API_URL=https://download5.operacdn.com/pub/opera/desktop/
2025-11-17 03:14:15 UTC (buildkit.dockerfile.v0)ARG LIBFFMPEG_API_URL=https://api.github.com/repos/nwjs-ffmpeg-prebuilt/nwjs-ffmpeg-prebuilt/releases/latest
2025-11-17 03:14:15 UTC (buildkit.dockerfile.v0)RUN |2 API_URL=https://download5.operacdn.com/pub/opera/desktop/ LIBFFMPEG_API_URL=https://api.github.com/repos/nwjs-ffmpeg-prebuilt/nwjs-ffmpeg-prebuilt/releases/latest /bin/sh -c set -eux; apt-get update; VERSIONS="$(wget -O - "${API_URL}" 2>/dev/null | sed -n 's/.*href="\([^"/]*\).*/\1/p' | sort --version-sort -r | head -n 10)"; VERSION=""; for v in $VERSIONS; do if wget --spider "${API_URL}${v}/linux/opera-stable_${v}_amd64.deb" 2>/dev/null; then VERSION="$v"; break; fi; done; if [ -z "$VERSION" ]; then echo "No Opera version with Linux package found"; exit 1; fi; echo "Using Opera version: $VERSION"; wget -O /tmp/opera.deb "${API_URL}${VERSION}/linux/opera-stable_${VERSION}_amd64.deb"; apt-get install -y --no-install-recommends openbox jq unzip /tmp/opera.deb; LIBFFMPEG_URL="$(wget -O - "${LIBFFMPEG_API_URL}" 2>/dev/null | jq -r "[.assets[] | select(.browser_download_url | contains(\"linux-x64.zip\"))][-1] | .browser_download_url")"; wget -O /tmp/libffmpeg.zip $LIBFFMPEG_URL; unzip -o /tmp/libffmpeg.zip libffmpeg.so -d /usr/lib/x86_64-linux-gnu/opera/lib_extra; echo '[]' > /usr/lib/x86_64-linux-gnu/opera/resources/ffmpeg_preload_config.json; apt-get --purge autoremove -y unzip jq; apt-get clean -y; rm -rf /var/lib/apt/lists/* /var/cache/apt/* # buildkit
2025-11-17 03:14:15 UTC (buildkit.dockerfile.v0)COPY supervisord.conf /etc/neko/supervisord/opera.conf # buildkit
2025-11-17 03:14:15 UTC (buildkit.dockerfile.v0)COPY openbox.xml /etc/neko/openbox.xml # buildkit
Please be careful as this will not just delete the reference but also the actual content!
For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.