What's Changed
- fix: preserve environment variables during configuration reload in internal reboots (05fda94)
- fix: Prevent memory leak of unknown config lines during container shutdown (e46bca7)
- fix: Resolve compiler warnings in hardened builds (e92bad3)
- feat: Implement log file rotation and rate-limit DNS proxy upstream timeout warnings. (1406dbb)
- droidspaces: bump v5.7.0 (aff3766)
- feat: Adjust
/tmpmounting condition to include Android devices without Termux-X11. (7224a1a) - fix: Stop DNS proxy before container reboot and add NLM_F_EXCL flag to RTM_NEWRULE for idempotent rule creation. (47b033e)
- feat: Reuse existing DNS proxy for new containers and defer DHCP/DNS service shutdown until the last container exits. (345cabc)
- fix: Prevent cgroup EBUSY errors by moving the monitor process to the root cgroup, sanitize container names for log directory paths. (1632ca8)
- fix: clean up cgroup subtrees on container stop and enter/run exit (2394ffc)
- feat: Default container user to 'root' and prioritize
su -lfor shell and command execution to ensure proper login context. (0982cb6) - feat: Add new
/procand/sys/vmmasks to prevent Android GPU/display and Vulkan corruption. (505a631) - post-extract-fixes: disable systemd-resolved DNS stub listener and remove explicit DNS server entries. (2ddd19e)
- feat: Implement a transparent DNS proxy for NAT containers (43d478a)
- fix: Apply
vold_data_fileSELinux context to the sparse image before mounting in the migration process. (2fcff70) - app: added a help card for new users in the Home screen (0955cb8)
- app: Implement sparse image management for containers, enabling rootfs migration and image resizing. (c2c5bc9)
- app: Add support for configuring and managing static NAT IP addresses for containers. (4f5f7ac)
- feat: Implement static NAT IP assignment for containers with validation, collision detection, and deterministic auto-assignment. (2537e2e)
- Merge branch 'terminal' (726c762)
- droidspaces: bump v5.6.1 (b104916)
- refactor: adjust IPv6 configuration logic to be network mode dependent and display the general networking mode in container information. (6b07eea)
- refactor: Invert IPv6 configuration from an 'enable' to a 'disable' option, including forced disabling for NAT/NONE network modes and updated UI strings. (32921e2)
- net: renamed the --enable-ipv6 toggle to --disable-ipv6 (b26f3f9)
- feat: Add software keyboard control and refine window inset padding for the terminal screen. (6546c49)
- Refactor
TerminalSessionServiceto delegate session termination and add UI synchronization inContainerTerminalScreenfor externally terminated sessions. (ac7fe8d) - fix: Send Ctrl+D to terminal sessions before termination to ensure clean shell exits and prevent zombie processes. (df68700)
- feat: Insert new terminal tabs adjacent to the active one, enable tab row scrolling, and ensure terminal text size updates on visibility. (5cb0d05)
- app: added support for built-in terminal emulator support (48582f8)
- docs: add acknowledgment for nspawn.sh to README.md (e762b12)
- docs: add acknowledgment for nspawn.sh to README.md (0b1590f)
- docs: removed tested platforms section from the quick navigation as we removed it from the previous changes in the documentation (e5f5e3a)
- feat: add troubleshooting guide for Wi-Fi power save issues on Android and fix a typo in the installation guide. (d49b257)
- docs: update installation, kernel configuration, and app usage documentation with expanded details, new tips, and clarifications. (86af31d)
- docs: cleanup dead/useless info (e29d92e)
Note
To fix DNS-related issues in existing systemd-based containers (containers already installed using the Droidspaces app), please run this command as root inside the container's shell:
cat > "/etc/systemd/resolved.conf.d/dns.conf" << 'EOF'
[Resolve]
DNSStubListener=no
EOF