I am using following partition recipe for my partition on ubuntu 12.04 precise.


d-i partman-auto/disk string /dev/sda
d-i partman-auto/method string lvm
d-i partman-lvm/device_remove_lvm boolean true
d-i partman-lvm/device_remove_lvm_span boolean true
d-i partman-auto/purge_lvm_from_device boolean true
d-i partman-md/device_remove_md boolean true
d-i partman-lvm/confirm boolean true
d-i partman-auto/choose_recipe select boot-root

d-i partman-auto/expert_recipe string \
boot-root :: \
256 500 1024 ext3 \
$primary{ } $bootable{ } \
method{ format } format{ } \
use_filesystem{ } filesystem{ ext3 } \
mountpoint{ /boot } \
. \
100 600 100000 ext3 \
$defaultignore{ } \
method{ lvm } device{ /dev/sda } \
vg_name{ system } \
. \
512 1024 200% linux-swap \
$lvmok{ } \
in_vg{ system } \
lv_name{ swap } \
method{ swap } format{ } \
. \
2000 3000 4000 ext3 \
$lvmok{ } \
mountpoint{ /tmp } \
in_vg{ system } \
lv_name{ TEMP }
method{ format } \
format{ } use_filesystem{ } filesystem{ ext3 } \
. \
10000 14000 20000 ext3 \
$lvmok{ } \
in_vg{ system } \
mountpoint{ / } \
lv_name{ ROOT } \
method{ format } \
format{ } use_filesystem{ } filesystem{ ext3 } \
. \
5000 6000 10000 ext3 \
$lvmok{ } \
in_vg{ system } \
mountpoint{ /var } \
lv_name{ VAR } \
method{ format } \
format{ } use_filesystem{ } filesystem{ ext3 } \
. \
5000 6000 10000 ext3 \
$lvmok{ } \
in_vg{ system } \
mountpoint{ /home } \
lv_name{ HOME } \
method{ format } \
format{ } use_filesystem{ } filesystem{ ext3 } \
. \
10000 15000 100000 ext3 \
$lvmok{ } \
in_vg{ system } \
mountpoint{ /usr } \
lv_name{ USR } \
method{ format } \
format{ } use_filesystem{ } filesystem{ ext3 } \
. \

d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition select finish
d-i partman/confirm boolean true