diff --git a/Artix-Base-OpenRC.Dockerfile b/Artix-Base-OpenRC.Dockerfile new file mode 100644 index 0000000..e2871ee --- /dev/null +++ b/Artix-Base-OpenRC.Dockerfile @@ -0,0 +1,230 @@ +# syntax=docker/dockerfile:1.6 +# Dockerfile (Artix Linux Base, OpenRC) +# +# Uses Armtix (ARM64 Artix) rootfs tarball for Android device compatibility. +# eudev supplies udev, while Artix's *-openrc packages supply service scripts. + +# Download and prepare the Armtix rootfs +FROM alpine:latest AS bootstrap +RUN apk add --no-cache curl xz +WORKDIR /rootfs +RUN curl -fsSL https://armtixlinux.org/images/armtix-openrc-20260124.tar.xz | xz -d | tar x && \ + ln -sf usr/bin bin && \ + ln -sf usr/lib lib && \ + ln -sf usr/lib64 lib64 2>/dev/null || true && \ + ln -sf usr/sbin sbin + +FROM scratch AS base +COPY --from=bootstrap /rootfs / + +FROM base AS customizer + +# Initialize pacman keyring and install the full development rootfs. +# NetworkManager is enabled through a DroidSpaces wrapper below so it only runs +# for NAT/gateway containers and cannot disturb Android host networking. +RUN pacman-key --init && \ + pacman --disable-sandbox -Rdd --noconfirm linux-aarch64 linux-aarch64-lts linux-aarch64-headers linux-aarch64-lts-headers mkinitcpio mkinitcpio-busybox linux-firmware linux-firmware-whence linux-firmware-amdgpu linux-firmware-atheros linux-firmware-broadcom linux-firmware-cirrus linux-firmware-intel linux-firmware-mediatek linux-firmware-nvidia linux-firmware-other linux-firmware-radeon linux-firmware-realtek 2>/dev/null || true && \ + pacman-key --populate artix && \ + pacman --disable-sandbox -Syu --noconfirm --ignore linux-aarch64,linux-aarch64-lts,linux-aarch64-headers,linux-aarch64-lts-headers,linux-firmware,linux-firmware-whence,mkinitcpio && \ + pacman --disable-sandbox -S --needed --noconfirm \ + bash \ + dialog \ + coreutils \ + file \ + findutils \ + grep \ + sed \ + gawk \ + curl \ + wget \ + ca-certificates \ + bash-completion \ + openrc \ + dbus \ + dbus-openrc \ + htop \ + vim \ + nano \ + git \ + sudo \ + openssh \ + openssh-openrc \ + networkmanager \ + networkmanager-openrc \ + net-tools \ + iptables \ + iputils \ + iproute2 \ + bind \ + usbutils \ + pciutils \ + lsof \ + psmisc \ + procps-ng \ + fastfetch \ + kmod \ + logrotate \ + base-devel \ + cmake \ + clang \ + llvm \ + valgrind \ + strace \ + ltrace \ + python \ + python-pip \ + docker \ + docker-openrc \ + docker-compose && \ + pacman --disable-sandbox -Scc --noconfirm + +# Copy shell aliases into the rootfs. +COPY scripts/bashrc.sh /etc/profile.d/ds-aliases.sh +RUN chmod 0755 /etc/profile.d/ds-aliases.sh + +# Force the xtables legacy frontends required by Android networking. +RUN ln -sf /usr/bin/iptables-legacy /usr/bin/iptables && \ + ln -sf /usr/bin/ip6tables-legacy /usr/bin/ip6tables && \ + ln -sf /usr/bin/arptables-legacy /usr/bin/arptables && \ + ln -sf /usr/bin/ebtables-legacy /usr/bin/ebtables + +# Configure locale and SSH. OpenRC's sshd service creates/uses the runtime state +# when booted, but keep the directory for container runtimes that start it early. +RUN sed -i '/en_US.UTF-8/s/^#\s\?//' /etc/locale.gen && \ + locale-gen && \ + printf '%s\n' 'LANG=en_US.UTF-8' > /etc/locale.conf && \ + install -d -m 0755 /run/sshd && \ + sed -i 's/^#PermitRootLogin prohibit-password/PermitRootLogin no/' /etc/ssh/sshd_config && \ + sed -i 's/^#PasswordAuthentication yes/PasswordAuthentication yes/' /etc/ssh/sshd_config && \ + sed -i "/^\[options\]/a DisableSandbox" /etc/pacman.conf && \ + userdel -r armtix 2>/dev/null || true + +# NetworkManager DHCP profile for eth* interfaces used by DroidSpaces. +RUN install -d -m 0700 /etc/NetworkManager/system-connections && \ + cat > /etc/NetworkManager/system-connections/droidspaces-ethernet.nmconnection <<'EOF' +[connection] +id=droidspaces-ethernet +type=ethernet +autoconnect=true + +[match] +interface-name=eth* + +[ipv4] +method=auto +route-metric=100 + +[ipv6] +method=auto +addr-gen-mode=stable-privacy +EOF + +# Apply Android compatibility fixes and install OpenRC-native services. +RUN <<'EOF_RUN' +set -eu + +# Android network groups are required for socket access on Android kernels. +grep -q '^aid_inet:' /etc/group || echo 'aid_inet:x:3003:' >> /etc/group +grep -q '^aid_net_raw:' /etc/group || echo 'aid_net_raw:x:3004:' >> /etc/group +grep -q '^aid_net_admin:' /etc/group || echo 'aid_net_admin:x:3005:' >> /etc/group + +# Permit root to access Android networking and exposed hardware devices. +usermod -a -G aid_inet,aid_net_raw,input,video,tty root || true + +# Artix does not normally have _apt, but preserve compatibility if it is added. +if grep -q '^_apt:' /etc/passwd; then + usermod -g aid_inet _apt +fi + +# Restricted OpenRC coldplug service for container-safe udev triggers. +cat > /etc/init.d/droidspaces-udev-trigger <<'EOT' +#!/sbin/openrc-run + +description="Restricted eudev coldplug for DroidSpaces" + +depend() { + need udev + before localmount + keyword -lxc -vserver +} + +start() { + ebegin "Triggering container-safe eudev subsystems" + udevadm trigger --type=subsystems --action=add \ + --subsystem-match=usb \ + --subsystem-match=block \ + --subsystem-match=input \ + --subsystem-match=tty \ + --subsystem-match=net + udevadm trigger --type=devices --action=add \ + --subsystem-match=usb \ + --subsystem-match=block \ + --subsystem-match=input \ + --subsystem-match=tty \ + --subsystem-match=net + eend $? +} +EOT +chmod 0755 /etc/init.d/droidspaces-udev-trigger + +# Conditional NetworkManager startup for NAT/gateway mode only. +cat > /etc/init.d/droidspaces-network <<'EOT' +#!/sbin/openrc-run + +description="Conditional DroidSpaces NetworkManager startup" + +depend() { + need dbus + after udev droidspaces-udev-trigger +} + +is_managed_mode() { + grep -qsE '(^|[[:space:]])net_mode=(nat|gateway)($|[[:space:]])' \ + /run/droidspaces/container.config +} + +start() { + if ! is_managed_mode; then + einfo "Host networking detected; leaving Android networking untouched" + return 0 + fi + + ebegin "Starting NetworkManager for DroidSpaces NAT/gateway mode" + rc-service NetworkManager start + eend $? +} + +stop() { + if rc-service NetworkManager status >/dev/null 2>&1; then + ebegin "Stopping NetworkManager" + rc-service NetworkManager stop + eend $? + fi +} +EOT +chmod 0755 /etc/init.d/droidspaces-network + +# OpenRC service enablement. +rc-update add udev sysinit +rc-update del udev-trigger sysinit 2>/dev/null || true +rc-update add droidspaces-udev-trigger sysinit +rc-update add dbus default +rc-update add droidspaces-network default +rc-update add sshd default +rc-update add docker default + +# Keep logs bounded on storage-constrained Android devices. +if [ -f /etc/logrotate.conf ]; then + sed -i 's/^#maxsize.*/maxsize 50M/' /etc/logrotate.conf + grep -q '^maxsize 50M$' /etc/logrotate.conf || echo 'maxsize 50M' >> /etc/logrotate.conf +fi + +printf 'Post-extraction OpenRC fixes applied on %s\n' "$(date)" > /etc/droidspaces +EOF_RUN + +# Final package-cache cleanup. +RUN pacman --disable-sandbox -Scc --noconfirm && rm -rf /var/cache/pacman/pkg/* + +# Export a plain rootfs for DroidSpaces extraction. +FROM scratch AS export +COPY --from=customizer / / diff --git a/Artix-Minimal-OpenRC.Dockerfile b/Artix-Minimal-OpenRC.Dockerfile new file mode 100644 index 0000000..43a0996 --- /dev/null +++ b/Artix-Minimal-OpenRC.Dockerfile @@ -0,0 +1,209 @@ +# syntax=docker/dockerfile:1.6 +# Dockerfile (Artix Linux Minimal, OpenRC) +# +# Uses Armtix (ARM64 Artix) rootfs tarball for Android device compatibility. +# eudev supplies udev, while Artix's *-openrc packages supply service scripts. + +# Download and prepare the Armtix rootfs +FROM alpine:latest AS bootstrap +RUN apk add --no-cache curl xz +WORKDIR /rootfs +RUN curl -fsSL https://armtixlinux.org/images/armtix-openrc-20260124.tar.xz | xz -d | tar x && \ + ln -sf usr/bin bin && \ + ln -sf usr/lib lib && \ + ln -sf usr/lib64 lib64 2>/dev/null || true && \ + ln -sf usr/sbin sbin + +FROM scratch AS base +COPY --from=bootstrap /rootfs / + +FROM base AS customizer + +# Initialize pacman keyring and install the minimal rootfs packages. +# NetworkManager is enabled through a DroidSpaces wrapper below so it only runs +# for NAT/gateway containers and cannot disturb Android host networking. +RUN pacman-key --init && \ + pacman --disable-sandbox -Rdd --noconfirm linux-aarch64 linux-aarch64-lts linux-aarch64-headers linux-aarch64-lts-headers mkinitcpio mkinitcpio-busybox linux-firmware linux-firmware-whence linux-firmware-amdgpu linux-firmware-atheros linux-firmware-broadcom linux-firmware-cirrus linux-firmware-intel linux-firmware-mediatek linux-firmware-nvidia linux-firmware-other linux-firmware-radeon linux-firmware-realtek 2>/dev/null || true && \ + pacman-key --populate artix && \ + pacman --disable-sandbox -Syu --noconfirm --ignore linux-aarch64,linux-aarch64-lts,linux-aarch64-headers,linux-aarch64-lts-headers,linux-firmware,linux-firmware-whence,mkinitcpio && \ + pacman --disable-sandbox -S --needed --noconfirm \ + bash \ + dialog \ + coreutils \ + file \ + findutils \ + grep \ + sed \ + gawk \ + curl \ + wget \ + ca-certificates \ + bash-completion \ + openrc \ + dbus \ + dbus-openrc \ + git \ + nano \ + sudo \ + openssh \ + openssh-openrc \ + networkmanager \ + networkmanager-openrc \ + net-tools \ + iptables \ + iputils \ + iproute2 \ + bind \ + logrotate \ + procps-ng && \ + pacman --disable-sandbox -Scc --noconfirm + +# Copy shell aliases into the rootfs. +COPY scripts/bashrc.sh /etc/profile.d/ds-aliases.sh +RUN chmod 0755 /etc/profile.d/ds-aliases.sh + +# Force the xtables legacy frontends required by Android networking. +RUN ln -sf /usr/bin/iptables-legacy /usr/bin/iptables && \ + ln -sf /usr/bin/ip6tables-legacy /usr/bin/ip6tables && \ + ln -sf /usr/bin/arptables-legacy /usr/bin/arptables && \ + ln -sf /usr/bin/ebtables-legacy /usr/bin/ebtables + +# Configure locale and SSH. OpenRC's sshd service creates/uses the runtime state +# when booted, but keep the directory for container runtimes that start it early. +RUN sed -i '/en_US.UTF-8/s/^#\s\?//' /etc/locale.gen && \ + locale-gen && \ + printf '%s\n' 'LANG=en_US.UTF-8' > /etc/locale.conf && \ + install -d -m 0755 /run/sshd && \ + sed -i 's/^#PermitRootLogin prohibit-password/PermitRootLogin no/' /etc/ssh/sshd_config && \ + sed -i 's/^#PasswordAuthentication yes/PasswordAuthentication yes/' /etc/ssh/sshd_config && \ + sed -i "/^\[options\]/a DisableSandbox" /etc/pacman.conf && \ + userdel -r armtix 2>/dev/null || true + +# NetworkManager DHCP profile for eth* interfaces used by DroidSpaces. +RUN install -d -m 0700 /etc/NetworkManager/system-connections && \ + cat > /etc/NetworkManager/system-connections/droidspaces-ethernet.nmconnection <<'EOF' +[connection] +id=droidspaces-ethernet +type=ethernet +autoconnect=true + +[match] +interface-name=eth* + +[ipv4] +method=auto +route-metric=100 + +[ipv6] +method=auto +addr-gen-mode=stable-privacy +EOF + +# Apply Android compatibility fixes and install OpenRC-native services. +RUN <<'EOF_RUN' +set -eu + +# Android network groups are required for socket access on Android kernels. +grep -q '^aid_inet:' /etc/group || echo 'aid_inet:x:3003:' >> /etc/group +grep -q '^aid_net_raw:' /etc/group || echo 'aid_net_raw:x:3004:' >> /etc/group +grep -q '^aid_net_admin:' /etc/group || echo 'aid_net_admin:x:3005:' >> /etc/group + +# Permit root to access Android networking and exposed hardware devices. +usermod -a -G aid_inet,aid_net_raw,input,video,tty root || true + +# Artix does not normally have _apt, but preserve compatibility if it is added. +if grep -q '^_apt:' /etc/passwd; then + usermod -g aid_inet _apt +fi + +# Restricted OpenRC coldplug service for container-safe udev triggers. +cat > /etc/init.d/droidspaces-udev-trigger <<'EOT' +#!/sbin/openrc-run + +description="Restricted eudev coldplug for DroidSpaces" + +depend() { + need udev + before localmount + keyword -lxc -vserver +} + +start() { + ebegin "Triggering container-safe eudev subsystems" + udevadm trigger --type=subsystems --action=add \ + --subsystem-match=usb \ + --subsystem-match=block \ + --subsystem-match=input \ + --subsystem-match=tty \ + --subsystem-match=net + udevadm trigger --type=devices --action=add \ + --subsystem-match=usb \ + --subsystem-match=block \ + --subsystem-match=input \ + --subsystem-match=tty \ + --subsystem-match=net + eend $? +} +EOT +chmod 0755 /etc/init.d/droidspaces-udev-trigger + +# Conditional NetworkManager startup for NAT/gateway mode only. +cat > /etc/init.d/droidspaces-network <<'EOT' +#!/sbin/openrc-run + +description="Conditional DroidSpaces NetworkManager startup" + +depend() { + need dbus + after udev droidspaces-udev-trigger +} + +is_managed_mode() { + grep -qsE '(^|[[:space:]])net_mode=(nat|gateway)($|[[:space:]])' \ + /run/droidspaces/container.config +} + +start() { + if ! is_managed_mode; then + einfo "Host networking detected; leaving Android networking untouched" + return 0 + fi + + ebegin "Starting NetworkManager for DroidSpaces NAT/gateway mode" + rc-service NetworkManager start + eend $? +} + +stop() { + if rc-service NetworkManager status >/dev/null 2>&1; then + ebegin "Stopping NetworkManager" + rc-service NetworkManager stop + eend $? + fi +} +EOT +chmod 0755 /etc/init.d/droidspaces-network + +# OpenRC service enablement. +rc-update add udev sysinit +rc-update del udev-trigger sysinit 2>/dev/null || true +rc-update add droidspaces-udev-trigger sysinit +rc-update add dbus default +rc-update add droidspaces-network default +rc-update add sshd default + +# Keep logs bounded on storage-constrained Android devices. +if [ -f /etc/logrotate.conf ]; then + sed -i 's/^#maxsize.*/maxsize 50M/' /etc/logrotate.conf + grep -q '^maxsize 50M$' /etc/logrotate.conf || echo 'maxsize 50M' >> /etc/logrotate.conf +fi + +printf 'Post-extraction OpenRC fixes applied on %s\n' "$(date)" > /etc/droidspaces +EOF_RUN + +# Final package-cache cleanup. +RUN pacman --disable-sandbox -Scc --noconfirm && rm -rf /var/cache/pacman/pkg/* + +# Export a plain rootfs for DroidSpaces extraction. +FROM scratch AS export +COPY --from=customizer / / diff --git a/rootfs.json b/rootfs.json index 7fd1edd..517bf2e 100644 --- a/rootfs.json +++ b/rootfs.json @@ -5,11 +5,11 @@ "description": "Minimal Alpine Linux v3.23 rootfs with basic packages.", "architecture": "aarch64", "file": "Alpine-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Alpine-Minimal-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "d889e70e096f7f5f912810a8774b1bcf2fff7611847619cb37a49538aa035983", - "size_bytes": 10106496, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Alpine-Minimal-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "a825c1fea88d5a6cd0cab59aa0c69df106aa5a17b71406c767a0ef60e1207506", + "size_bytes": 10110020, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -18,11 +18,11 @@ "description": "Alpine Linux v3.23 rootfs with basic packages, development tools, Python, and Docker.", "architecture": "aarch64", "file": "Alpine-base", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Alpine-base-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "e1e662e2bd849db068162d36f793ebc11d398f50ae072089f1d4487ccd788ed4", - "size_bytes": 235026216, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Alpine-base-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "1a66e8b432484b14de0e86785bead7f47637b14480c6e56c3fd1f305523db69e", + "size_bytes": 235004928, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -31,11 +31,11 @@ "description": "Minimal Arch Linux rootfs with basic packages. (Runs on Kernel 5.10 and above only).", "architecture": "aarch64", "file": "Arch-Minimal-Kernel-5.10-and-up", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Arch-Minimal-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "ff1dfc060be36afd0dd82ff92052ecb38aece2a97d1b4798c1008996fe901588", - "size_bytes": 110764368, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Arch-Minimal-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "07b56636bad29a413dd3474f6b24d9bdb0e1c27b8b8439e6524e7153ce3e21c5", + "size_bytes": 110727428, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -44,11 +44,37 @@ "description": "Arch Linux rootfs with basic packages, development tools and Docker (Runs on Kernel 5.10 and above only).", "architecture": "aarch64", "file": "Arch-base-Kernel-5.10-and-up", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Arch-base-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "ebd074c6ccc0d4bef2c07202c2ca6531a2b8ac920c751665cc41aa66af90c0fb", - "size_bytes": 358180068, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Arch-base-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "d0475ea5c1512b6ca37cdebcd33c110d5c9e78083a7741e6063262f0085cd59e", + "size_bytes": 358362012, + "version": "v20260903-064222", + "build_date": "20260903", + "author": "Droidspaces developers" + }, + { + "name": "Artix Linux - Minimal", + "distro": "Artix", + "description": "Artix Linux rootfs with basic packages(Uses OpenRC).", + "architecture": "aarch64", + "file": "Artix-Minimal-OpenRC", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Artix-Minimal-OpenRC-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "dcdcb31bab459566cb36f047aa65539c7318133258d0317847ce52f95d7db543", + "size_bytes": 160995400, + "version": "v20260903-064222", + "build_date": "20260903", + "author": "Droidspaces developers" + }, + { + "name": "Artix Linux - Base", + "distro": "Artix", + "description": "Artix Linux rootfs with basic packages, development tools and Docker (Uses OpenRC).", + "architecture": "aarch64", + "file": "Artix-Base-OpenRC", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Artix-Base-OpenRC-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "13c0dc08be6e3a9f24d4f7d2bdcc9b6f67c30f833c56495a73a91661235de300", + "size_bytes": 440785844, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -57,11 +83,11 @@ "description": "Minimal Debian 13 rootfs with basic packages.", "architecture": "aarch64", "file": "Debian-13-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Debian-13-Minimal-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "25b17af8b12f28ee7ccc809874b4743efafbdb989efe6f0ebabfe920ffeacc3e", - "size_bytes": 101470432, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Debian-13-Minimal-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "08decb9c898e30624ff581919d9c9829aaca4b84ba030424563028a71787a885", + "size_bytes": 101488112, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -70,11 +96,11 @@ "description": "Debian 13 rootfs with basic packages, development tools, and Docker.", "architecture": "aarch64", "file": "Debian-13-base", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Debian-13-base-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "1a8ed65c2650e8041196e3f8356f15f990cc9f28203288943734fef448f10f40", - "size_bytes": 347259056, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Debian-13-base-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "90adb88ecd8c110e3b7fc2e6ff5da5dbc7a558e4fa56cb46be73a735f65ad3e5", + "size_bytes": 347222696, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -83,11 +109,11 @@ "description": "Debian 13 rootfs with basic packages, development tools, Docker, XFCE desktop environment.", "architecture": "aarch64", "file": "Debian-13-XFCE", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Debian-13-XFCE-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "23200260687c97887a9d243765ae98ca4b039cd7f8ae757796cd2ad819c94362", - "size_bytes": 632247472, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Debian-13-XFCE-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "e9c0c299dd9e6f482b9e440f9bacae1b3cc7487defa8e7327ce4c1206247027e", + "size_bytes": 632304940, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -96,11 +122,11 @@ "description": "Minimal Kali Linux rootfs with basic packages.", "architecture": "aarch64", "file": "Kali-Linux-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Kali-Linux-Minimal-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "7306b76e17e13508e493d7d560d2fe78e0b5af48cd54186aa7f636ed6e10b019", - "size_bytes": 118840220, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Kali-Linux-Minimal-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "b87d50f0cb6582d799e8489bec848de798bec6a9cfb2b16a6961bc8e3a5c6a53", + "size_bytes": 118840428, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -109,11 +135,11 @@ "description": "Kali Linux rootfs with basic packages, development tools, Docker, and XFCE desktop environment.", "architecture": "aarch64", "file": "Kali-Linux-XFCE", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Kali-Linux-XFCE-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "bbed2e3a3faa789be0db4ba6ea861a4029c0d20a677031899dd0f0a3217335dd", - "size_bytes": 814218356, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Kali-Linux-XFCE-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "38f3f999d78f2a743eddc535c1d895bc235de960a5cbb7c036751967674ddb43", + "size_bytes": 814263848, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -122,11 +148,11 @@ "description": "Minimal Ubuntu 22.04 rootfs with basic packages..", "architecture": "aarch64", "file": "Ubuntu-22.04-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Ubuntu-22.04-Minimal-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "cd14f19bd4e8d00147969f87a52465a70eae9d10fa72df5af4e6904fed83a3bf", - "size_bytes": 70685032, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Ubuntu-22.04-Minimal-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "ba21fd188d4acae302854e0480aa8f4e1ad207a5bada7d9f272cfb067709d2ec", + "size_bytes": 70693264, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -135,11 +161,11 @@ "description": "Ubuntu 22.04 rootfs with basic packages, development tools, and Docker.", "architecture": "aarch64", "file": "Ubuntu-22.04-base", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Ubuntu-22.04-base-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "57a188cb6a6b0dd65245b6b90c346b383d1edb4387e09197463ed70f15f74529", - "size_bytes": 279324740, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Ubuntu-22.04-base-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "dc1306ee0470c02fcb9656e28680823b4f01eba658a53a6e71656f11bb47e299", + "size_bytes": 279304308, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -148,11 +174,11 @@ "description": "Minimal Ubuntu 24.04 rootfs with basic packages.", "architecture": "aarch64", "file": "Ubuntu-24.04-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Ubuntu-24.04-Minimal-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "1c5220c96a5bc600d7bc87e859450673d00b9010f88ab2b80faebceea5fd2d46", - "size_bytes": 74037172, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Ubuntu-24.04-Minimal-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "c77708de2d7eb68d68216f195abc9b4d945b5cae1d36bc113cd23a802356b592", + "size_bytes": 74029548, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -161,11 +187,11 @@ "description": "Ubuntu 24.04 rootfs with basic packages, development tools, and Docker.", "architecture": "aarch64", "file": "Ubuntu-24.04-base", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Ubuntu-24.04-base-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "5b2e1ab009899dc8549cddc76053379e2c4b610494a5ba9b4db4c404279f1cda", - "size_bytes": 302949044, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Ubuntu-24.04-base-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "7e432d64b93bb477df269de28be3697608838b4b60348f11562ce043173cba65", + "size_bytes": 303079296, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -174,11 +200,11 @@ "description": "Ubuntu 24.04 rootfs with basic packages, development tools, Docker and XFCE desktop environment.", "architecture": "aarch64", "file": "Ubuntu-24.04-XFCE", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/Ubuntu-24.04-XFCE-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "b6ed0954be904b6759371b6b5657c3f1b36a8d6c6db6afdb8b5d94d6bf795ecd", - "size_bytes": 567247988, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/Ubuntu-24.04-XFCE-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "2e92ac1a09aef4257832e70847a1eb28eef9ab7751cb3124bd950885f5e7c014", + "size_bytes": 567240712, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -187,11 +213,11 @@ "description": "Minimal NixOS rootfs with basic packages with basic packages and latest Systemd. (Runs on Kernel 5.10 and above only)", "architecture": "aarch64", "file": "NixOS-Minimal-Systemd-latest-Kernel-5.10-and-up", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/NixOS-Minimal-Systemd-latest-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/NixOS-Minimal-Systemd-latest-Kernel-5.10-and-up-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", "sha256": "86ad472977de85f5ef1416c1627f7c59c01d72b9a0c68cd6da7d13ac2f238fec", "size_bytes": 204216116, - "version": "v20260830-043300", - "build_date": "20260830", + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -200,11 +226,11 @@ "description": "Minimal NixOS rootfs with basic packages with basic packages and Systemd v257.9.", "architecture": "aarch64", "file": "NixOS-Minimal-Systemd-v257.9", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/NixOS-Minimal-Systemd-v257.9-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/NixOS-Minimal-Systemd-v257.9-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", "sha256": "10e828cfb6bef064c19338cf1d45604a646d95a308d5df60d5d396e7f057b4ed", "size_bytes": 189369976, - "version": "v20260830-043300", - "build_date": "20260830", + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -213,11 +239,11 @@ "description": "Experimental Finix NixOS rootfs with basic packages.", "architecture": "aarch64", "file": "NixOS-Minimal-Finix-Experimental", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/NixOS-Minimal-Finix-Experimental-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/NixOS-Minimal-Finix-Experimental-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", "sha256": "0d0f41556630c96aa7d8006ec7ce0132c2867c27f11145e69ebbbf9f43b943db", "size_bytes": 285773576, - "version": "v20260830-043300", - "build_date": "20260830", + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -226,11 +252,11 @@ "description": "Azure Linux 3.0 rootfs with basic packages.", "architecture": "aarch64", "file": "AzureLinux-3.0-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/AzureLinux-3.0-Minimal-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "2808a55ae3cded3a5b1b776a22189d8ca8fcd35c07e0f9e6b37c5fdee5e7048a", - "size_bytes": 86644292, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/AzureLinux-3.0-Minimal-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "e8ae7ab3a0f692985774ca1ff4aa7c1798bf01cd6605a60325542b6d7d1b1b5b", + "size_bytes": 86676844, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" }, { @@ -239,11 +265,11 @@ "description": "Minimal OpenWrt 24.10 router rootfs built for Android kernels: nftables/fw4 stripped out in favor of iptables-legacy + fw3, with full firewall (NAT, zones, masquerade) working. Tuned for VirtualAP's managed-hotspot (container) mode.", "architecture": "aarch64", "file": "OpenWrt-24.10-Minimal", - "download_url": "https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/download/v20260830-043300/OpenWrt-24.10-Minimal-Droidspaces-rootfs-aarch64-20260830-v20260830-043300.tar.xz", - "sha256": "2bab87c4cf8d574fd2f276e3f3e2866806a875810fe7e78d319bb7f8cc8d35b0", - "size_bytes": 3001132, - "version": "v20260830-043300", - "build_date": "20260830", + "download_url": "https://github.com/diverselightchara/Droidspaces-rootfs-builder/releases/download/v20260903-064222/OpenWrt-24.10-Minimal-Droidspaces-rootfs-aarch64-20260903-v20260903-064222.tar.xz", + "sha256": "cfa032128c9e5963a2af25506d70fa19e02b4d76ae4780cac7af02a81bdf57fb", + "size_bytes": 3001092, + "version": "v20260903-064222", + "build_date": "20260903", "author": "Droidspaces developers" } ]