summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard W.M. Jones <rjones@redhat.com>2012-05-14 15:32:08 +0100
committerRichard W.M. Jones <rjones@redhat.com>2012-05-14 15:33:21 +0100
commite8ec521dc64208016b0dc8dcb873324819ed734d (patch)
tree1594c4f34584876bf3660fe40c033b6d11c8328a
parent18451abdf5b3618750af11da6579db547b266b8d (diff)
downloadlibguestfs-e8ec521dc64208016b0dc8dcb873324819ed734d.tar.gz
libguestfs-e8ec521dc64208016b0dc8dcb873324819ed734d.tar.xz
libguestfs-e8ec521dc64208016b0dc8dcb873324819ed734d.zip
todo: Notes about partitioning tools.
-rw-r--r--TODO25
1 files changed, 25 insertions, 0 deletions
diff --git a/TODO b/TODO
index d604d10e..93f8787a 100644
--- a/TODO
+++ b/TODO
@@ -477,3 +477,28 @@ Optimize the appliance
----------------------
Pass -cpu host. Anything else?
+
+Sort out partitioning
+---------------------
+
+Ignoring some legacy APIs, we currently have a mixed selection of
+'part-*' APIs, implemented using parted. We don't like parted or
+libparted very much, and would love to replace it with something else.
+The part-* APIs are quirky, but not too bad and we should maintain and
+extend them instead of making another set of APIs.
+
+One option is to write "libmbr" and "libgpt" libraries that would just
+do MBR and GPT respectively, and do it directly and do it well. They
+wouldn't try to abstract anything (so, unlike libparted). We could
+then reimplement the part-* APIs on top of these hopefully sensible
+libraries. This is a lot of work.
+
+Another option is to look for tools or libraries to replace parted.
+For GPT there is a fairly obvious candidate: Rod Smith's GPT fdisk
+(http://www.rodsbooks.com/gdisk/). Rod has spent a lot of time
+studying GPT, and seems to know more about it than any sane man
+should. There is a command line tool designed for scripts called
+'sgdisk'. The tools are packaged for many Linux distros. Even if
+this approach works, it doesn't solve the MBR problem, so likely we'd
+have to write a library for that (or perhaps go back to sfdisk but
+using a very abstracted interface over sfdisk).