init is an essential package in Jessie so it's automatically pulled in every time you want to debootstrap a new system. init has a dependency on systemd-sysv or sysvinit-core or upstart. Unfortunately debootstrap always selects systemd-sysv even if systemd-sysv is excluded by the --exclude flag (see also #776917). This can be annoying if you just want to have a small build chroot where the installation of systemd might also fail.

Fortunately there is a possibility to tweak the list of packages that should be installed. For this we have to operate debootstrap in two stages. The first stage will just download the packages, after that we can manipulate the package list and then we continue in stage two.

To execute stage one the parameter --foreign is used. Packages are only downloaded by not unpacked or installed at this point. To satisfy the dependencies of init we have to use the parameter --include sysvinit-core so that sysv is pulled in:

# debootstrap --variant=minbase --include sysvinit-core --foreign \
    jessie system

Now we can just remove systemd systemd-sysv from the list of required packages:

# sed -i -e 's/systemd systemd-sysv //g' system/debootstrap/required

... and continue bootstrapping:

# chroot system debootstrap/debootstrap --second-stage

After the second stage is finnished, you can test if the dependencies are fine:

# chroot system /bin/bash
# apt-get update
# apt-get dist-upgrade