commit 3666cebaea471a5582146732e8e896a45c1bf4b6 general remarks - instead of repeatedly doing string comparisons for file system and partition table types, it might make sense to parse them once and then work with enumeration constants. You can do the parsing with a table relating string constants to enumeration constants and then searching the table for a match. But it's not that big of a deal. - remember to eventually add your name and the current year to the copyright headers. It's your code, so you get the copyright! diskmenu.c - indentation error in if-statement. Try an indentation like this: if (strcmp(part_to_copy->name, "") != 0) { asprintf(__DECONST(char ** , &bsditems[i].bottomdesc), "Partition to copy: %s", part_to_copy->name); } else { bsditems[i].bottomdesc = ""; } filesystem.c - this code will be much less complicated if you write yourself a helper function that takes an array of pairs of bsddialog_menu_items and strings and then builds the radiolist, shows it to the user, and builds the commands from it. - doing so would also allow you to arrange the code such that the stuff is grouped by filesystem instead of by control flow, which would make it easier to add a new file system to the code. gpart_ops.c - the BSD partition type is a "BSD disklabel" - the MBR partition type is a "MBR partition table". I'm not sure what "DOS Partitions" refers to, as you can have other partitions than DOS partitions on an MBR partition table". I would also mention that this partition type is needed for legacy boot. important file system creation options - for the volname options, it might be useful to handle these in a systematic manner, perhaps the same way future glabel support is handled newfs -E recommended for SSD devices -L volname -U should be on by default -O type needs not be supported (UFS1 hasn't been used in years) -j -l -t newfs_msdos -L volname mkfs.ext2 mkfs.ext3 mkfs.ext4 (from ports) - these should be treated as one option with a dropdown to select ext2/ext3/ext4 -E discard recommended for SSD devices -j we don't support journalling, but it'll be useful on Linux -L volname mkexfatfs -n volname mkntfs -L label -f should be on by default -C