#!/bin/sh set -e . /usr/share/debconf/confmodule # # Handle default file # DEFAULT_FILE="/etc/default/mini-buildd" if [ ! -e "${DEFAULT_FILE}" ]; then touch "${DEFAULT_FILE}" fi # Get MINI_BUILDD_OPTIONS as RET from debconf db_get mini-buildd/options # Replace existing line or add new if grep -Eq "^ *MINI_BUILDD_OPTIONS=" "${DEFAULT_FILE}"; then sed -i "s|^ *MINI_BUILDD_OPTIONS=.*|MINI_BUILDD_OPTIONS=\"${RET}\"|" "${DEFAULT_FILE}" else printf "MINI_BUILDD_OPTIONS=\"${RET}\"\n" >>"${DEFAULT_FILE}" fi # # Handle mini-buildd user # db_get mini-buildd/home MINI_BUILDD_HOME="${RET}" # Some code may actually choke (and break builds) if the passwd geco field is empty, so we set it MINI_BUILDD_FULL_NAME="Custom Debian buildd" if ! getent passwd mini-buildd >/dev/null; then # Fresh install: Add a new system user/group: mini-buildd/mini-buildd adduser --system --group --shell /bin/bash --home "${MINI_BUILDD_HOME}" --gecos "${MINI_BUILDD_FULL_NAME}" mini-buildd else # Existing user # Compat (<0.9.6): Always fix old-style user/group: mini-buildd/sbuild to mini-buildd/mini-buildd addgroup --system mini-buildd usermod --gid=mini-buildd mini-buildd # Fix HOME if needed usermod --home="${MINI_BUILDD_HOME}" --comment="${MINI_BUILDD_FULL_NAME}" --move-home mini-buildd fi # Always (re-)add to group sbuild adduser mini-buildd sbuild # Always (re-)write mini-buildd's fstab to use with schroot. # For sbuild to work the way we call it, we need # ~/var/spool/ : Build log, ... # ~/var/chroots-libdir: For optional %LIBDIR% support (ccache, ...). FSTAB_FILE="/etc/schroot/mini-buildd/fstab" cat <${FSTAB_FILE} # Generated by ${0} on $(date). # Please don't edit this file; you may customize fstab-generic if needed. # ${MINI_BUILDD_HOME}/var/shared ${MINI_BUILDD_HOME}/var/shared none rw,bind 0 0 # EOF cat ${FSTAB_FILE}-generic >>${FSTAB_FILE} # # Handle password # db_get mini-buildd/admin_password MINI_BUILDD_ADMIN_PASSWORD="${RET}" if [ -n "${MINI_BUILDD_ADMIN_PASSWORD}" ]; then printf "Setting admin password..." su mini-buildd -c "/usr/sbin/mini-buildd --set-admin-password='${MINI_BUILDD_ADMIN_PASSWORD}'" db_set mini-buildd/admin_password "" printf "done.\n" fi # Automatically added by dh_installdeb/13.15.3 dpkg-maintscript-helper rm_conffile /etc/bash_completion.d/mini-buildd.bash-completion -- "$@" dpkg-maintscript-helper rm_conffile /etc/cron.weekly/mini-buildd -- "$@" dpkg-maintscript-helper rm_conffile /etc/schroot/setup.d/15mini-buildd-workarounds -- "$@" # End automatically added section # Automatically added by dh_installinit/13.15.3 if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then if [ -z "${DPKG_ROOT:-}" ] && [ -x "/etc/init.d/mini-buildd" ]; then update-rc.d mini-buildd defaults >/dev/null if [ -n "$2" ]; then _dh_action=restart else _dh_action=start fi invoke-rc.d --skip-systemd-native mini-buildd $_dh_action || exit 1 fi fi # End automatically added section # Automatically added by dh_installsystemd/13.15.3 if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then # The following line should be removed in trixie or trixie+1 deb-systemd-helper unmask 'mini-buildd.service' >/dev/null || true # was-enabled defaults to true, so new installations run enable. if deb-systemd-helper --quiet was-enabled 'mini-buildd.service'; then # Enables the unit on first installation, creates new # symlinks on upgrades if the unit file has changed. deb-systemd-helper enable 'mini-buildd.service' >/dev/null || true else # Update the statefile to add new symlinks (if any), which need to be # cleaned up on purge. Also remove old symlinks. deb-systemd-helper update-state 'mini-buildd.service' >/dev/null || true fi fi # End automatically added section # Automatically added by dh_installsystemd/13.15.3 if [ "$1" = "configure" ] || [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-deconfigure" ] || [ "$1" = "abort-remove" ] ; then if [ -d /run/systemd/system ]; then systemctl --system daemon-reload >/dev/null || true if [ -n "$2" ]; then _dh_action=restart else _dh_action=start fi deb-systemd-invoke $_dh_action 'mini-buildd.service' >/dev/null || true fi fi # End automatically added section exit 0