[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#739006: Switch to mkdosfs instead of libparted



On Fri, Feb 14, 2014 at 03:49:56PM -0500, Phillip Susi wrote:
> diff -Nru partman-efi-39/commit.d/format_efi partman-efi-40/commit.d/format_efi
> --- partman-efi-39/commit.d/format_efi	2012-09-20 10:45:15.000000000 -0400
> +++ partman-efi-40/commit.d/format_efi	2014-02-14 15:40:50.000000000 -0500
> @@ -54,10 +54,13 @@
>  			db_subst $template PARTITION "$num"
>  			db_subst $template DEVICE $(humandev $(cat device))
>  			name_progress_bar $template
> -			open_dialog CREATE_FILE_SYSTEM $id $new_efi_fs
> -			read_line status
> -			close_dialog
> -			sync
> +			if log-output -t partman --pass-stdout \
> +			    mkfs.vfat -F 32 $device >/dev/null; then
> +			    status=OK
> +			else
> +			    status=failed
> +			fi
> +			db_progress STOP    
>  
>  			if [ "$status" != OK ]; then
>  				db_subst partman-basicfilesystems/create_failed TYPE efi

This has the same kind of problem I noted in #738922; you have
unbalanced db_progress calls, and you should probably drop the
now-useless name_progress_bar call and explicitly create a progress bar.

You've silently dropped a sync call, which seems an unwise thing to
bundle into this already fairly complex transition; I would suggest
keeping it at least in the case when mkfs.vfat returns successfully.

The top of format_efi selects fat32 or fat16 depending on the
architecture, but you ignore that here.  I'd recommend using -F
"${new_efi_fs#fat}" instead of hardcoding 32.

> diff -Nru partman-efi-39/debian/changelog partman-efi-40/debian/changelog
> --- partman-efi-39/debian/changelog	2013-09-08 10:29:40.000000000 -0400
> +++ partman-efi-40/debian/changelog	2014-02-14 15:45:19.000000000 -0500
> @@ -1,3 +1,9 @@
> +partman-efi (40) unstable; urgency=low
> +
> +  * Switch to using mkdosfs instead of libparted
> +
> + -- Phillip Susi <psusi@ubuntu.com>  Fri, 14 Feb 2014 15:44:22 -0500
> +
>  partman-efi (39) unstable; urgency=low
>  
>    [ Updated translations ]

Just as general good practice, it's a good idea to submit changelog
patches with the distribution set to "UNRELEASED" rather than
"unstable"; we only set it to "unstable" when tagging and releasing.  Or
you can even just supply the changelog entry separately without the
header/trailer lines and let the committer fill that in, to reduce the
probability of conflicts.

-- 
Colin Watson                                       [cjwatson@debian.org]


Reply to: