schroot allows to set a Linux personality for chroots, e.g. to run a 32bit chroot on a 64bit system. And there is a schroot setup script to start services when entering the schroot. But these service setup script ignores the personality; that's my problem. So what is actually happening. Pasted From the RfC mails - thread is here: http://lists.alioth.debian.org/pipermail/buildd-tools-devel/2015-February/009398.html from "schroot-mount", which understands the schroot personality types and starts a command with the chroots personality. This program is now used in the service setup script and fixes my build problem. Actually I think all command run in inside the chroot from a setup scripts should set the personality, so this should become a schroot chroot personality wrapper, as the personality should always and just be applied in the chroot. The two attached patches: For schroot 1.6: was tested with the schroot-wheezy-backport git branch. At applies to schroot-1.6 FWIW. The original patch was done 1/2 year ago, but I did some cleanup and just a quick test and it still "seems to work". For schroot 1.7: was just compile tested - I currently don't have a Jessie environment. Regards, Jan-Marek
Dear Jan-Marek, Sorry for the delay, I just wanted to let you know that I do appreciate you doing this work and that I have looked over your patches. I've unfortunately not had time to test it and commit it, due to a combination of work deadlines and RSI still preventing me doing as much typing as I would like. I hope that the work side of things will improve towards the end of the month. Kind regards, Roger
Hi Roger, Am 15.04.2015 um 00:25 schrieb Roger Leigh: call in the helper? The patch currently does: - chroot "$CHROOT_PATH" /usr/sbin/invoke-rc.d ... + "$LIBEXEC_DIR"/schroot-impersonate -- $(which chroot) "$CHROOT_PATH" /usr/sbin/invoke-rc.d ... Would be nice to get this down to something like: "$LIBEXEC_DIR"/schroot-run /usr/sbin/invoke-rc.d ... Regards, Jan-Marek P.S. just as an other data point from an other tool: FAI sets the env ROOTCMD="chroot /tmp/target" for its scripts, so the script aren't that clobbered with long chroot calls... P.P.S. I'm currently on holiday until July, so no need to hurry.
Definitely makes sense. I was thinking about the possibility of moving the logic from schroot's session exec function here and then execing this helper from schroot as well. The main concern would be passing the session details in the environment or with appropriate command-line options before running the command. It would probably make sense to call it schroot-exec in that case! That level of support doesn't need to be done now though; it could be updated/renamed later. Regards, Roger