Hi,
Thanks for the report and the patch. I'm explicitly cc-ing Steve and
debian-efi to get some feedback from them.
Mraw,
KiBi.
Shih-Yuan Lee (FourDollars) <fourdollars@gmail.com> (2015-11-03):
Mraw,> ---
> debian/changelog | 7 +++++++
> fstab.d/efi | 37 +++++++++++++++++++++++++++++++++----
> 2 files changed, 40 insertions(+), 4 deletions(-)
>
> diff --git a/debian/changelog b/debian/changelog
> index 61b84aa..003cc3e 100644
> --- a/debian/changelog
> +++ b/debian/changelog
> @@ -1,3 +1,10 @@
> +partman-efi (72) UNRELEASED; urgency=medium
> +
> + [ Shih-Yuan Lee (FourDollars) ]
> + * Follow partman-auto/disk to reuse the ESP. Closes: #803912
> +
> + -- Shih-Yuan Lee (FourDollars) <fourdollars@gmail.com> Tue, 03 Nov 2015 14:00:26 +0800
> +
> partman-efi (71) unstable; urgency=medium
>
> [ Updated translations ]
> diff --git a/fstab.d/efi b/fstab.d/efi
> index 14b6696..9906f24 100755
> --- a/fstab.d/efi
> +++ b/fstab.d/efi
> @@ -12,19 +12,48 @@ case $ARCH in
> ;;
> esac
>
> -seen_efi=
> +paths=
> for dev in $DEVICES/*; do
> [ -d $dev ] || continue
> cd $dev
> open_dialog PARTITIONS
> while { read_line num id size type fs path name; [ "$id" ]; }; do
> - [ -z "$seen_efi" ] || continue
> [ $fs != free ] || continue
> [ -f "$id/method" ] || continue
> method=$(cat $id/method)
> [ "$method" = efi ] || continue
> - echo "$path" /boot/efi vfat umask=0077 0 1
> - seen_efi=1
> + if [ -z "$paths" ]; then
> + paths="$path"
> + else
> + paths="$paths $path"
> + fi
> done
> close_dialog
> done
> +
> +if [ -z "$paths" ]; then
> + exit 0
> +fi
> +
> +# Use any autopartition disk that has been set
> +if db_get partman-auto/disk && [ "$RET" ]; then
> + disks="$RET"
> + seen_efi=
> + for disk in $disks; do
> + for path in $paths; do
> + case "$path" in
> + $disk*)
> + echo "$path" /boot/efi vfat umask=0077 0 1
> + seen_efi=1
> + break
> + ;;
> + esac
> + done
> + [ -z "$seen_efi" ] || break
> + done
> +else
> + for path in $paths; do
> + echo "$path" /boot/efi vfat umask=0077 0 1
> + break
> + done
> +fi
> --
> 1.9.1
>
>
KiBi.