# mini_buildd.schroot module

Attention

wheezy or older builds on amd64: Re-enable linux’ vsyscall

In Debian kernel packages since `4.8.4-1~exp1`:

    [ Ben Hutchings ]
    * [amd64] Enable LEGACY_VSYSCALL_NONE instead of LEGACY_VSYSCALL_EMULATE.
      This breaks (e)glibc 2.13 and earlier, and can be reverted using the kernel
      parameter: vsyscall=emulate

I.e.: When running the Debian standard kernel and your mini-buildd instance needs to support `wheezy` or earlier, you need to re-enable this (in `/etc/default/grub`).

You may use `local-vsyscall-emulate.cfg` in `examples` (a symlink should do) for this purpose.

On any running kernel, this is a poor man’s check to see if vsyscall is still enabled on your system:

    grep "\[vsyscall\]" /proc/self/maps

See also

Debian Bug #847154, linux package’s `NEWS` file.

Note

schroot: Verbosely logs commands (“Running command …”) explicitly via syslog (journalctl)

schroot seems to verbosely log any executed root-user command via syslog (user/notice). This will clutter journalctl’s (standard) log output via unit:

    journalctl --unit mini-buildd.service --follow

As a workaround, specifying the (syslog compatibility) identifier like so helps to unclutter:

    journalctl --identifier mini-buildd --follow

class mini_buildd.schroot.Session(name, namespace='chroot')

  Bases: `object`

  close()

    Close session (including retries on failure)

    Attention

    schroot: ‘target is busy’ on session close (stale schroot sessions)

    Occasionally, a schroot session can’t be closed properly, leaving stale sessions around. Presumably, external programs (like ‘desktop mount scanners’) can cause this.

    This internal close does try hard to avoid this – however, if disaster strikes anyway, `mini-buildd-cruft` may help to remove these stale sessions manually (i.e., as `mini-buildd` user from the shell).

  call(_call, user='root')
  run(_call, user='root')
  info()
  update_file(file_path, content)

    Write content to file

  set_debconf(key, value)

    Set arbitrary debconf value