### software sources d-i ubiquity/use_nonfree true d-i ubiquity/install_oem false ### Partitioning d-i partman-auto/disk string /dev/sda d-i partman-auto/method string regular d-i partman-lvm/device_remove_lvm boolean true d-i partman-md/device_remove_md boolean true d-i partman-auto/choose_recipe select atomic # This makes partman automatically partition without confirmation d-i partman-partitioning/confirm_write_new_label boolean true d-i partman/choose_partition select finish d-i partman/confirm boolean true d-i partman/confirm_nooverwrite boolean true # Locale d-i debian-installer/locale string @@VBOX_INSERT_LOCALE@@ d-i console-setup/ask_detect boolean false d-i console-setup/layoutcode string us d-i keyboard-configuration/xkb-keymap select us # Network d-i netcfg/get_hostname string @@VBOX_INSERT_HOSTNAME_WITHOUT_DOMAIN@@ d-i netcfg/get_domain string @@VBOX_INSERT_HOSTNAME_DOMAIN@@ d-i netcfg/choose_interface select auto # Clock @@VBOX_COND_IS_RTC_USING_UTC@@ d-i clock-setup/utc-auto boolean true d-i clock-setup/utc boolean true @@VBOX_COND_END@@ @@VBOX_COND_IS_NOT_RTC_USING_UTC@@ d-i clock-setup/utc-auto boolean false d-i clock-setup/utc boolean false @@VBOX_COND_END@@ d-i time/zone string @@VBOX_INSERT_TIME_ZONE_UX@@ @@VBOX_COND_IS_INSTALLING_ADDITIONS@@d-i clock-setup/ntp boolean false@@VBOX_COND_END@@ @@VBOX_COND_IS_NOT_INSTALLING_ADDITIONS@@d-i clock-setup/ntp boolean true@@VBOX_COND_END@@ # Packages, Mirrors, Image d-i base-installer/kernel/override-image string linux-server d-i base-installer/kernel/override-image string linux-image-amd64 ## @todo use nearest mirror somehow... d-i mirror/country string @@VBOX_INSERT_COUNTRY@@ d-i mirror/http/proxy string ## @todo minimal install? d-i apt-setup/restricted boolean true d-i apt-setup/universe boolean true d-i pkgsel/install-language-support boolean false # Stuff we need to build additions modules: d-i pkgsel/include string build-essential linux-headers-generic perl make # Package cloud-init is needed for possible automation the initial setup of virtual machine d-i pkgsel/include cloud-init # Users d-i passwd/user-fullname string @@VBOX_INSERT_USER_FULL_NAME@@ d-i passwd/username string @@VBOX_INSERT_USER_LOGIN@@ d-i passwd/user-password password @@VBOX_INSERT_USER_PASSWORD@@ d-i passwd/user-password-again password @@VBOX_INSERT_USER_PASSWORD@@ d-i passwd/root-login boolean true d-i passwd/root-password password @@VBOX_INSERT_ROOT_PASSWORD@@ d-i passwd/root-password-again password @@VBOX_INSERT_ROOT_PASSWORD@@ d-i user-setup/allow-password-weak boolean true d-i passwd/user-default-groups string admin # Grub d-i grub-installer/grub2_instead_of_grub_legacy boolean true d-i grub-installer/only_debian boolean true @@VBOX_COND[${GUEST_OS_VERSION} vge 14.04 && ${GUEST_OS_VERSION} vle 15.04]@@ # Due notably to potential USB sticks, the location of the MBR can not be # determined safely in general, so this needs to be specified: # grub-install fails on [14.04.0, 15.04] by complaining "not being able to find default". # pointing it to /dev/sda gets around that problem. d-i grub-installer/bootdev string /dev/sda @@VBOX_COND_ELSE@@ # To install to the first device (assuming it is not a USB stick): d-i grub-installer/bootdev string default @@VBOX_COND_END@@ d-i finish-install/reboot_in_progress note # Custom Commands d-i preseed/late_command string cp /cdrom/vboxpostinstall.sh /target/root/vboxpostinstall.sh \ && chmod +x /target/root/vboxpostinstall.sh \ && /bin/bash /root/vboxpostinstall.sh --preseed-late-command # Same as above, but for ubiquity. ubiquity ubiquity/success_command string vboxpostinstall.sh ubiquity ubiquity/success_command string cp /cdrom/vboxpostinstall.sh /target/root/vboxpostinstall.sh \ && chmod +x /target/root/vboxpostinstall.sh \ && /bin/bash /target/root/vboxpostinstall.sh --ubiquity-success-command # automatically reboot after installation. ubiquity ubiquity/reboot boolean true ## Skip downloading updates during installation (better for testing). # Seems this doesn't make any difference, so why bother. #ubiquity ubiquity/download_updates boolean false