GParted uses GNU libparted to detect and manipulate devices and partition tables. Several (optional) "file system" tools provide support for file systems not included in libparted. These optional packages will be detected at runtime and do not require a rebuild of GParted. GParted is written in C++ and uses gtkmm for it's Graphical User Interface (GUI). This requires gtkmm.