Droidspaces
1.21K subscribers
243 photos
26 videos
31 files
105 links
Download Telegram
Starting from v6.1.0, we stopped masking systemd-udevd and systemd-udev-trigger in post-extract-fixes.sh, and allowed udevd to access 5 subsystems.

( usb, block, input, tty, net )

this is the exact feature that finally allowed real hardware access.

before this, --hw-access was a placebo. your /dev/sd* block devices did not even exist, even in hw-access mode, and your container had broken hardware access support. hardware existed, but most of the container processes were not able to see it. That's why nothing bad was happened.

now, with the udev relaxation, your container acts like a real linux machine. it sees sdcards, usb drives, inputs, network hardware, and block devices properly in --hw-access mode.

here is the reality:

Droidspaces just fires up init and manages the environment. it does not do anything apart from that. when you use hw access, the container might own the hardware during boot.

If a droidspaces container takes control of the pogo pin keyboard,
android is left with nothing. so if your keyboard works perfectly inside the container but is "broken" in android, congratulations. That is not a bug. that is the container doing exactly what you told it to do.

Stop blaming droidspaces because you do not understand how linux works. If you enable hw access and things go sideways, you signed up for it. The documentation literally has a giant red caution bar warning you about bricking your device and wiping your entire partition table.

Your choices:

1. use gpu access only if you are not ready for this
2. go back to masking systemd-udevd and systemd-udev-trigger and enjoy "dumb hardware access"
3. use hw access only when necessary and accept that with great power comes the responsibility of not crying when your container steals your hardware from android

read the docs and understand how linux works. your choice.
πŸ—Ώ8❀2πŸ’©1
Droidspaces
Starting from v6.1.0, we stopped masking systemd-udevd and systemd-udev-trigger in post-extract-fixes.sh, and allowed udevd to access 5 subsystems. ( usb, block, input, tty, net ) this is the exact feature that finally allowed real hardware access. before…
This is it.

From now on, if someone says "Droidspaces broke my XYZ," "Droidspaces caused kernel panics when using HW access mode," or "I lost my job because of Droidspaces because the alarm app failed while using HW access," the issue will be instantly closed.

The container is yours. You control it, not me.

Edit:

Nuked the old release and re-released it under the same release tag with the HW access gate πŸ‘
😁14❀1πŸ’©1
πŸ”₯6❀1πŸ’©1
Implemented resource isolation and resource virtualization

After this change, you'll be able to limit how much RAM a container can allocate, how many CPU cores a container can have, and the process limit a container can reach.

That means a bad container can never kill the host! :)

Also, it spoofs CPU, RAM, Uptime, Load AVG, and other metrics to match our resource limitations.

Huge thanks to maazm7d for this patch!
πŸ‘4πŸ”₯4πŸ—Ώ3😱2πŸ’©1
Added the ability to boot a custom init binary or execute a script, just like Docker does.

This means you can choose /bin/bash as the init, start the container, and use it like an isolated pivot_root container without relying on systemd screaming about an old kernel version.

TLDR: A cool hack to sneak into the container without systemd, exactly how Docker works. You can even boot Arch Linux on a potato kernel.

Testing:

https://t.me/DroidspacesCI/337?single
πŸ”₯5❀1πŸ’©1πŸ—Ώ1
Droidspaces Official rootfs release πŸŽ‰

Supported distros:
β”œβ”€β”€ 01. Ubuntu 22.04
β”‚ β”œβ”€β”€ Minimal
β”‚ └── Base
β”œβ”€β”€ 02. Ubuntu 24.04
β”‚ β”œβ”€β”€ Minimal
β”‚ β”œβ”€β”€ Base
β”‚ └── XFCE
β”œβ”€β”€ 03. Debian 13
β”‚ β”œβ”€β”€ XFCE
β”‚ β”œβ”€β”€ Minimal
β”‚ └── Base
β”œβ”€β”€ 04. Arch Linux
β”‚ β”œβ”€β”€ Minimal
β”‚ └── Base
└── 05. Alpine Linux
β”œβ”€β”€ Minimal
└── Base


🟒 Downloads:

https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/latest

πŸ“ Notes:

XFCE releases do not have built-in Turnip support for compatibility with newer Adreno GPUs.

That means you have to manually install Mesa from https://github.com/lfdevs/mesa-for-android-container
❀8πŸ”₯3πŸ’©2
Reliability of Droidspaces containers..!

It's been 16 days since I touched my Galaxy S10.

I just set it up and forgot it. Using my setup every day, including Jellyfin and Gitea.

I think we did something extraordinary for the Linux on Android community..

Like, this is every Linux enthusiast's dream :)
πŸ”₯16❀5πŸ—Ώ3πŸ’©1
Do you guys love this match distro icons for installed containers option I just added?

Supports 22 distros including FreeBSD
❀16🀩5πŸ’©1
Added native binfmt_misc support to the official rootfs tarballs

That means, in our official Debian and Ubuntu rootfs tarballs, you can run any binary from foreign architectures like x86_64 natively using QEMU, just as you would run a native binary, even with full hw access !

Currently, this feature is only available in Debian and Ubuntu tarballs. We will expand support to Arch and Alpine in the future if possible.

Testing:

https://github.com/Droidspaces/Droidspaces-rootfs-builder/releases/latest

Kernel requirements:

CONFIG_BINFMT_MISC=y
CONFIG_BINFMT_SCRIPT=y
CONFIG_BINFMT_ELF=y


@Droidspaces
3❀13πŸ—Ώ2πŸ₯°1πŸ’©1
Droidspaces now has a CONTRIBUTING.md

If you're planning to submit a PR, read it before you open one.

https://github.com/ravindu644/Droidspaces-OSS/blob/main/CONTRIBUTING.md

Short version:

- Your feature must work on kernel 3.10+. No exceptions.
- Must be tested across multiple SoCs and OEMs, not just your device.
- Android-only code must be guarded with is_android(). Linux is a supported target.
- Android app changes must not break Android 8.
- If your feature is merged, you own it. If it breaks later and you're gone, it gets removed.
- PRs that solve nothing, add bloat, or ignore these rules get closed. Repeat offenders get blocked.

A feature that doesn't exist is better than a broken implementation.


@Droidspaces
2πŸ—Ώ15πŸ’©1
Kid: Can we have Azure?
Mom: We have Azure at home.
Azure at home:
πŸ—Ώ16😭5❀1😁1πŸ’―1
This media is not supported in your browser
VIEW IN TELEGRAM
😁5πŸŽ‰3❀2πŸ”₯1😒1