Index: uspace/lib/label/src/gpt.c
===================================================================
--- uspace/lib/label/src/gpt.c	(revision 0ecfc62d767bfd2b7b7885ad490d2eb39d4eeb8f)
+++ uspace/lib/label/src/gpt.c	(revision ea0ff6b69b253afa7b6b4e9cd38ef8e91ec0daab)
@@ -544,4 +544,9 @@
 }
 
+static bool gpt_can_delete_part(label_t *label)
+{
+	return list_count(&label->parts) > 0;
+}
+
 static int gpt_get_info(label_t *label, label_info_t *linfo)
 {
@@ -551,4 +556,6 @@
 	if (gpt_can_create_pri(label))
 		linfo->flags = linfo->flags | lf_can_create_pri;
+	if (gpt_can_delete_part(label))
+		linfo->flags = linfo->flags | lf_can_delete_part;
 	linfo->ablock0 = label->ablock0;
 	linfo->anblocks = label->anblocks;
Index: uspace/lib/label/src/mbr.c
===================================================================
--- uspace/lib/label/src/mbr.c	(revision 0ecfc62d767bfd2b7b7885ad490d2eb39d4eeb8f)
+++ uspace/lib/label/src/mbr.c	(revision ea0ff6b69b253afa7b6b4e9cd38ef8e91ec0daab)
@@ -399,4 +399,9 @@
 }
 
+static bool mbr_can_delete_part(label_t *label)
+{
+	return list_count(&label->parts) > 0;
+}
+
 static int mbr_get_info(label_t *label, label_info_t *linfo)
 {
@@ -416,4 +421,7 @@
 	if (label->ext_part != NULL)
 		linfo->flags |= lf_can_create_log;
+	/* Can delete partition */
+	if (mbr_can_delete_part(label))
+		linfo->flags |= lf_can_delete_part;
 
 	linfo->ablock0 = label->ablock0;
