lxc / distrobuilder

System container image builder for LXC and Incus
https://linuxcontainers.org
Apache License 2.0
591 stars 171 forks source link

Support rootless mode? #862

Closed inklesspen1rus closed 1 month ago

inklesspen1rus commented 5 months ago

I think this would be great if we could work without root

Currently I see these points we should adapt to rootless mode:

These points can be adapted via fakechroot, squashfuse and fuseiso

Could u review and accept my changes if I send PR with these adaptions? Without breaking changes, with new options in cli For example: distrobuilder --rootless ....

stgraber commented 5 months ago

There is far more than this unfortunately:

I think the namespace and fakeroot/fakechroot issues are going to be the biggest problem here. As that needs to handle any crazy thing arbitrary packages from arbitrary distribution can throw at out.

There are FUSE based alternatives for pretty much every filesystem we need to interact with so that part should be manageable enough.

The partition handling is a bit more problematic as you obviously can't use kpartx/losetup when unprivileged so you'd need each of the FUSE filesystems to support accessing their filesystem at an offset and then basically read the partition table, calculate the offset and pass that through.