#!/bin/sh

. /lib/partman/definitions.sh

mypart=''
mysize=0

get_biggest_free_on_dev() {
    cd $dev
    open_dialog PARTITIONS
    while { read_line num id size type fs path name; [ "$id" ]; }; do
	if [ "$fs" = free ] && ! longint_le $size $mysize; then
	    mysize=$size
	    mypart=$dev//$id
	fi
    done
    close_dialog
}

dev="$1"

if [ -z "$dev" ]; then
    for dev in $DEVICES/*; do
	[ -d $dev ] || continue
	get_biggest_free_on_dev
    done
else
    get_biggest_free_on_dev
fi

if [ "$mypart" ]; then
    db_metaget partman-auto/text/use_biggest_free description
    printf "$mypart\t$RET"
fi
