Skip to content

Instantly share code, notes, and snippets.

@fepitre
Last active October 22, 2025 07:25
Show Gist options
  • Select an option

  • Save fepitre/1b508c0657e193eaa37557f3194fc19b to your computer and use it in GitHub Desktop.

Select an option

Save fepitre/1b508c0657e193eaa37557f3194fc19b to your computer and use it in GitHub Desktop.
# Locale Setup
d-i debian-installer/language string en
d-i debian-installer/country string US
d-i debian-installer/locale string en_US.UTF-8
# Keyboard Setup
d-i keyboard-configuration/xkb-keymap select us
# Clock Setup
d-i time/zone string Etc/UTC
# Configure hardware clock
d-i clock-setup/utc boolean true
d-i clock-setup/utc-auto boolean true
# User Setup
d-i passwd/user-fullname string debian
d-i passwd/user-uid string 1000
d-i passwd/user-password password localadm
d-i passwd/user-password-again password localadm
d-i passwd/username string localadm
# Package Setup
d-i apt-setup/cdrom/set-first boolean false
d-i apt-setup/cdrom/set-next boolean false
d-i apt-setup/cdrom/set-failed boolean false
d-i mirror/country string manual
d-i mirror/http/hostname string deb.debian.org
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string
tasksel tasksel/first multiselect ssh-server, standard
popularity-contest popularity-contest/participate boolean false
d-i pkgsel/include string sudo, unattended-upgrades, dpkg, openssh-server
# Whether to upgrade packages after debootstrap
d-i pkgsel/upgrade select full-upgrade
# Disk configuration
d-i partman-basicfilesystems/choose_label string gpt
d-i partman-basicfilesystems/default_label string gpt
d-i partman-partitioning/choose_label string gpt
d-i partman-partitioning/default_label string gpt
d-i partman/choose_label string gpt
d-i partman/default_label string gpt
partman-partitioning partman-partitioning/choose_label select gpt
d-i partman-auto/disk string /dev/xvda
d-i partman-auto/method string regular
d-i partman-auto/expert_recipe string \
root-swap :: \
1000 1000 0 linux-swap \
$primary{ } \
method{ swap } format{ } . \
1000 20000 -1 ext4 \
$primary{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext4 } \
mountpoint{ / } . \
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
d-i grub-installer/only_debian boolean true
d-i grub-installer/with_other_os boolean true
d-i grub-installer/bootdev string /dev/xvda
# Install tools
d-i preseed/late_command string \
in-target wget https://gitlab.com/xen-project/xen-guest-agent/-/jobs/6041686362/artifacts/raw/target/release/xen-guest-agent_0.4.0_amd64.deb; \
in-target export RUNLEVEL=1; \
in-target dpkg -i xen-guest-agent_0.4.0_amd64.deb;
# Final Setup
d-i finish-install/reboot_in_progress note
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment