Curious why schroot instead of something like "systemd-nspawn -D /the/chroot/dir". Might offer a little more flexibility in configuration. I guess, though, schroot allows for full non-root use, perhaps that's the big driver.
There are two main drivers for this decision: first, as you already mentioned, systemd-nspawn requires root privileges when creating a container instance. With schroot this is something I don't really have to care about.
The other important reason is that I try to keep the slingring codebase as small as possible. At the moment, I maintain this project alone and I want to keep it manageable in the long term. I actually started Slingring using nspawn containers, but I found that handling things like providing the user/group nss databases inside the container had to be done by myself, while schroot includes that functionality.
On the other hand, I simply do not need the greater flexibility that is provided by nspawn-containers at the moment. This could change in the future. Therefore, the coupling with schroot inside slingring is kept to a minimum and I might switch to nspawn whenever it might suite my requirements better.
Hi everyone, I am the author of Slingring. It is in a very early stage and I am interested in your opinion on the basic concept as well as my approach. Please ask anything you want to know :)