DEBIAN_FRONTEND='noninteractive'
DEBOOTSTRAP='debootstrap'
EXTRAPACKAGES='yes'
+FALLBACK_MIRROR='http://http.debian.net/debian'
FORCE=''
HOSTNAME='grml'
INITRD='yes'
INSTALL_NOTES='/etc/debootstrap/install_notes'
LOCALES='yes'
-MIRROR='http://cdn.debian.net/debian'
+MIRROR="$FALLBACK_MIRROR"
MKFS='mkfs.ext3'
PACKAGES='yes'
PRE_SCRIPTS='yes'
RECONFIGURE='console-data'
-RELEASE='squeeze'
+RELEASE='wheezy'
RM_APTCACHE='yes'
SCRIPTS='yes'
SECURE='yes'
-m, --mirror <URL> Mirror which should be used for apt-get/aptitude.
-i, --iso <mnt> Mountpoint where a Debian ISO is mounted to, for use
instead of fetching packages from a mirror.
- -r, --release <name> Release of new Debian system (default: squeeze).
+ -r, --release <name> Release of new Debian system (default: wheezy).
-t, --target <target> Target partition (/dev/...) or directory where the
system should be installed to.
-p, --mntpoint <mnt> Mountpoint used for mounting the target system,
/etc/debootstrap/packages
--debconf <file> Pre-seed packages using specified pre-seed db file.
--grmlrepos Enable Grml's Debian repository (deb.grml.org).
+ --backportrepos Enable Debian's backports repository (backports.debian.org).
--keep_src_list Do not overwrite user provided apt sources.list.
--hostname <name> Hostname of Debian system.
--nopassword Do not prompt for the root password.
[ "$_opt_chroot_scripts_set" ] && CHROOT_SCRIPTS='yes'
[ "$_opt_keep_src_list" ] && KEEP_SRC_LIST='yes'
[ "$_opt_grmlrepos" ] && GRMLREPOS='yes'
+[ "$_opt_backportrepos" ] && BACKPORTREPOS='yes'
[ "$_opt_hostname" ] && HOSTNAME=$_opt_hostname
[ "$_opt_password" ] && ROOTPASSWORD=$_opt_password
[ "$_opt_nopassword" ] && NOPASSWORD='yes'
# ask for Debian release {{{
prompt_for_release()
{
- [ -n "$RELEASE" ] && DEFAULT_RELEASE="$RELEASE" || DEFAULT_RELEASE='squeeze'
+ [ -n "$RELEASE" ] && DEFAULT_RELEASE="$RELEASE" || DEFAULT_RELEASE='wheezy'
RELEASE="$(dialog --stdout --title "${PN}" --default-item $DEFAULT_RELEASE --menu \
"Please enter the Debian release you would like to use for installation:" \
0 50 4 \
- lenny Debian/old-stable \
- squeeze Debian/stable \
- wheezy Debian/testing \
+ lenny Debian/5.0 \
+ squeeze Debian/6.0 \
+ wheezy Debian/7.0 \
sid Debian/unstable)"
[ $? -eq 0 ] || bailout
}
[ $? -eq 0 ] || bailout
if [ "$CHOOSE_MIRROR" = 'net' ] ; then
- [ -n "$MIRROR" ] || MIRROR='http://cdn.debian.net/debian'
+ [ -n "$MIRROR" ] || MIRROR='http://http.debian.net/debian'
MIRROR="$(dialog --stdout --title "${PN}" --inputbox \
"Please enter Debian mirror you would like to use for installing packages." \
0 0 $MIRROR)"
[ -n "$VMSIZE" ] && echo " Using Virtual Disk file with size of ${VMSIZE}."
fi
+ if [ ! -t 0 -a -z "$ROOTPASSWORD" -a -z "$NOPASSWORD" ] ; then
+ echo
+ echo " You do not have a TTY allocated, your password will be shown in"
+ echo " plaintext on the terminal! If you are using SSH, try its -t option!"
+ fi
+
echo
echo " Important! Continuing will delete all data from ${TARGET}!"
file*) # do nothing
;;
*)
- ISO=file:$1
+ ISO=file:$ISO
;;
esac
fi
ISODIR=${ISODIR%%/}
# }}}
+# Debian ISOs do not contain signed Release files {{{
+if [ -n "$ISO" ] ; then
+ DEBOOTSTRAP_OPT="$DEBOOTSTRAP_OPT --no-check-gpg"
+fi
+# }}}
+
# create filesystem {{{
mkfs() {
if [ -n "$DIRECTORY" ] ; then
eend 1 ; exit 1
fi
- einfo "Running $DEBOOTSTRAP $DEBOOTSTRAP_OPT for release ${RELEASE}${ARCHINFO} using ${MIRROR}${ISO}"
- if [ -n "$MIRROR" ] ; then
- einfo "Executing: $DEBOOTSTRAP $ARCHCMD $KEYRING $DEBOOTSTRAP_OPT $RELEASE $MNTPOINT $MIRROR"
- $DEBOOTSTRAP $ARCHCMD $KEYRING $DEBOOTSTRAP_OPT $RELEASE $MNTPOINT $MIRROR
- RC=$?
- else
+ if [ -n "$ISO" ] ; then
+ einfo "Running $DEBOOTSTRAP $DEBOOTSTRAP_OPT for release ${RELEASE}${ARCHINFO} using ${ISO}"
einfo "Executing: $DEBOOTSTRAP $ARCHCMD $KEYRING $DEBOOTSTRAP_OPT $RELEASE $MNTPOINT $ISO"
$DEBOOTSTRAP $ARCHCMD $KEYRING $DEBOOTSTRAP_OPT $RELEASE $MNTPOINT $ISO
RC=$?
+ else
+ einfo "Running $DEBOOTSTRAP $DEBOOTSTRAP_OPT for release ${RELEASE}${ARCHINFO} using ${MIRROR}"
+ einfo "Executing: $DEBOOTSTRAP $ARCHCMD $KEYRING $DEBOOTSTRAP_OPT $RELEASE $MNTPOINT $MIRROR"
+ $DEBOOTSTRAP $ARCHCMD $KEYRING $DEBOOTSTRAP_OPT $RELEASE $MNTPOINT $MIRROR
+ RC=$?
fi
if [ $RC -ne 0 ] ; then
chmod 600 $CHROOT_VARIABLES # make sure nobody except root can read it
echo "# Configuration of ${PN}" > $CHROOT_VARIABLES
[ -n "$ARCH" ] && echo "ARCH=\"$ARCH\"" >> $CHROOT_VARIABLES
+ [ -n "$BACKPORTREPOS" ] && echo "BACKPORTREPOS=\"$BACKPORTREPOS\"" >> $CHROOT_VARIABLES
[ -n "$CHROOT_SCRIPTS" ] && echo "CHROOT_SCRIPTS=\"$CHROOT_SCRIPTS\"" >> $CHROOT_VARIABLES
[ -n "$CONFFILES" ] && echo "CONFFILES=\"$CONFFILES\"" >> $CHROOT_VARIABLES
[ -n "$DEBCONF" ] && echo "DEBCONF=\"$DEBCONF\"" >> $CHROOT_VARIABLES
[ -n "$DEBIAN_FRONTEND" ] && echo "DEBIAN_FRONTEND=\"$DEBIAN_FRONTEND\"" >> $CHROOT_VARIABLES
[ -n "$DEBOOTSTRAP" ] && echo "DEBOOTSTRAP=\"$DEBOOTSTRAP\"" >> $CHROOT_VARIABLES
[ -n "$EXTRAPACKAGES" ] && echo "EXTRAPACKAGES=\"$EXTRAPACKAGES\"" >> $CHROOT_VARIABLES
+ [ -n "$FALLBACK_MIRROR" ] && echo "FALLBACK_MIRROR=\"$FALLBACK_MIRROR\"" >> $CHROOT_VARIABLES
[ -n "$FORCE" ] && echo "FORCE=\"$FORCE\"" >> $CHROOT_VARIABLES
[ -n "$GRMLREPOS" ] && echo "GRMLREPOS=\"$GRMLREPOS\"" >> $CHROOT_VARIABLES
[ -n "$GRUB" ] && echo "GRUB=\"$GRUB\"" >> $CHROOT_VARIABLES