choose-mirror-bin mirror/http/proxy string
d-i mirror/country string manual
d-i apt-setup/use_mirror boolean false
d-i base-installer/install-recommends boolean false

d-i debian-installer/locale string en_US
d-i debian-installer/language string en
d-i debian-installer/country EN

d-i pkgsel/install-language-support boolean false

d-i debian-installer/framebuffer boolean false
d-i debconf/frontend select noninteractive
d-i base-installer/kernel/override-image string linux-server
d-i clock-setup/utc boolean true
d-i clock-setup/utc-auto boolean true
d-i finish-install/reboot_in_progress note
d-i grub-installer/only_debian boolean true
d-i grub-installer/with_other_os boolean true
d-i netcfg/get_domain string unassigned-domain
d-i netcfg/get_hostname string unassigned-hostname

d-i partman-auto/disk string /dev/sda /dev/vda
# Use LVM for partitioning
d-i partman-auto/method string lvm

# GPT

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

# GPT

d-i partman-auto-lvm/guided_size string max

# If one of the disks that are going to be automatically partitioned
# contains an old LVM configuration, the user will normally receive a
# warning. Preseed this away
d-i partman-lvm/device_remove_lvm boolean true

# And the same goes for the confirmation to write the lvm partitions.
d-i partman-lvm/confirm boolean true

# Really, please don't prompt me!
d-i partman-lvm/confirm_nooverwrite boolean true

d-i partman-auto/expert_recipe string                         \
          vcp_lvm ::                                          \
              1 1 1 free                                      \
                      $gptonly{ }                             \
                      $primary{ }                             \
                      $bios_boot{ }                           \
                      method{ biosgrub }                      \
              .                                               \
              1051 2 1051 ext3                                \
                      $gptonly{ }                             \
                      $primary{ }                             \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext3 }    \
                      lable{ lable-boot }                     \
                      mountpoint{ /boot }                     \
              .                                               \
              10 10 10 ext4                                   \
                      $defaultignore{ }                       \
                      $gptonly{ }                             \
                      $primary{ }                             \
                      method{ lvm }                           \
                      vg_name{ vg0 }                          \
              .                                               \
              105 2 105 ext4                                \
                      $lvmok{ }                               \
                      in_vg{ vg0 }                            \
                      lv_name{ home }                         \
                      method{ lvm } format{ }                 \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ /home }                     \
                      options/nodev{ nodev }                  \
              .                                               \
              105 2 105 ext4 ext4                            \
                      $lvmok{ }                               \
                      in_vg{ vg0 }                            \
                      lv_name{ tmp }                          \
                      method{ lvm } format{ }                 \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ /tmp }                      \
                      options/nodev{ nodev }                  \
                      options/nosuid{ nosuid }                \
                      options/noexec{ noexec }                \
              .                                               \
              105 2 105 ext4                            \
                      $lvmok{ }                               \
                      in_vg{ vg0 }                            \
                      lv_name{ var_log }                      \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ /var/log }                  \
                      options/noexec{ noexec }                \
              .                                               \
              315 2 315 ext4 ext4                            \
                      $lvmok{ }                               \
                      in_vg{ vg0 }                            \
                      lv_name{ var_tmp }                      \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ /var/tmp }                  \
                      options/nodev{ nodev }                  \
                      options/nosuid{ nosuid }                \
                      options/noexec{ noexec }                \
              .                                               \
              105 2 105 ext4 ext4                                \
                      $lvmok{ }                               \
                      in_vg{ vg0 }                            \
                      lv_name{ var_log_audit }                \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ /var/log/audit }            \
                      options/noexec{ noexec }                \
              .                                               \
              2154 2 65536 ext4                          \
                      $lvmok{ }                               \
                      method{ format } format{ }              \
                      use_filesystem{ } filesystem{ ext4 }    \
                      mountpoint{ / }                         \
                      in_vg{ vg0 }                            \
                      lv_name{ root }                         \
              .

d-i partman-auto/choose_recipe select vcp_lvm

partman-basicfilesystems partman-basicfilesystems/no_swap boolean false

# This makes partman automatically partition without confirmation, provided
# that you told it what to do using one of the methods above.
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 pkgsel/include string openssh-server
d-i pkgsel/install-language-support boolean false
d-i pkgsel/update-policy select none
popularity-contest popularity-contest/participate boolean false

d-i pkgsel/upgrade select none

d-i time/zone string UTC
d-i passwd/root-password password r00tme
d-i passwd/root-password-again password r00tme
d-i passwd/root-login boolean true
d-i passwd/make-user boolean false
d-i openssh-server/permit-root-login boolean true
d-i user-setup/allow-password-weak boolean true
d-i user-setup/encrypt-home boolean false
tasksel tasksel/first multiselect minimal, ssh-server, openssh-server

d-i preseed/late_command string \
    in-target sed -i 's/PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config
