# Filename: grml-debootstrap
# Purpose: wrapper around debootstrap for installing plain Debian via Grml
# Authors: grml-team (grml.org), (c) Michael Prokop <mika@grml.org>
-# Bug-Reports: see http://grml.org/bugs/
+# Bug-Reports: see https://grml.org/bugs/
# License: This file is licensed under the GPL v2+
################################################################################
-V, --version Show summary of options and exit.
Usage examples can be found in the grml-debootstrap manpage.
-Send bugreports to the grml-team: bugs (at) grml.org || http://grml.org/bugs/
+Send bugreports to the grml-team: bugs (at) grml.org || https://grml.org/bugs/
"
}
# }}}
# make sure we have what we need {{{
-check4progs debootstrap || bailout 1
+check4progs "${DEBOOTSTRAP}" || bailout 1
# }}}
# source main configuration file {{{
bailout 1
fi
+if [ -n "$ISO" ] && [[ "$DEBOOTSTRAP" =~ mmdebstrap$ ]] ; then
+ eerror "The ISO option is incompatible with usage of mmdebstrap for bootstrapping."
+ eerror "Either drop the --iso ... option or use plain debootstrap instead."
+ eend 1
+ bailout 1
+fi
if [ "$DEBUG" = "true" ] ; then
set -x
[ "$_opt_version" ] && {
einfo "$PN - version $VERSION"
- einfo "Send bug reports to bugs@grml.org or http://grml.org/bugs/"
+ einfo "Report bugs via https://github.com/grml/grml-debootstrap/ or https://grml.org/bugs/"
eend 0
exit 0
}
cp $VERBOSE -a -L "${CONFFILES}"/extrapackages/ "${MNTPOINT}"/etc/debootstrap/
- # make sure we can access network [relevant for cdebootstrap]
+ # make sure we can access network [relevant for cdebootstrap/mmdebstrap]
[ -f "${MNTPOINT}"/etc/resolv.conf ] || cp $VERBOSE /etc/resolv.conf "${MNTPOINT}"/etc/resolv.conf
# setup default locales
iface eth0 inet dhcp
"
+ # add dhcp setting for Predictable Network Interface Names
+ if [ -x /bin/udevadm ]; then
+ for interface in $(udevadm info -e | sed -n -e 's/E: ID_NET_NAME_PATH=\([^$*]\)/\1/p'); do
+ DEFAULT_INTERFACES="${DEFAULT_INTERFACES}
+allow-hotplug ${interface}
+iface ${interface} inet dhcp
+"
+ done
+ fi
+
if [ -n "$NOINTERFACES" ] ; then
einfo "Not installing /etc/network/interfaces as requested via --nointerfaces option" ; eend 0
elif [ -n "$USE_DEFAULT_INTERFACES" ] ; then