Fix detection of optional libvirt support in virt-inspector.
[libguestfs.git] / TODO
diff --git a/TODO b/TODO
index 9b36e96..1d7cb36 100644 (file)
--- a/TODO
+++ b/TODO
@@ -6,6 +6,12 @@ https://www.redhat.com/archives/fedora-virt/2009-April/msg00114.html
 We badly need to actually implement the FTP server mentioned in the
 documentation.
 
+Or: Implement a FUSE-based filesystem.  See the FUSE mountlo
+project which does something similar, albeit only to single
+filesystems:
+
+http://sourceforge.net/project/showfiles.php?group_id=121684&package_id=150116
+
 ----------------------------------------------------------------------
 
 BufferIn and BufferOut should turn into <char *, int> and simple
@@ -16,9 +22,92 @@ Limit on transfers would still be 2MB for these types.
 
 ----------------------------------------------------------------------
 
-Augeas support should be completely optional.  Major platforms lack
-it, such as RHEL 5.
+Implement febootstrap command.
 
 ----------------------------------------------------------------------
 
-Implement febootstrap command.
+Complete the Haskell bindings (see discussion on haskell-cafe).
+
+----------------------------------------------------------------------
+
+Complete the bindings tests - must test the return values and
+error cases.
+
+----------------------------------------------------------------------
+
+For virt-inspector:
+
+ - Make a libvirt XML config
+
+ - Test over available OSes
+
+ - Add 'reged' / NT registry support.
+
+----------------------------------------------------------------------
+
+Use virtio_blk by default.  It's faster and more natural.
+Unfortunately it seems like this will rename all devices - see next
+item.
+
+Note: virtio_blk *IS* supported by all our minimum platforms,
+ie. CentOS 5.3, Fedora 11, Debian.
+
+----------------------------------------------------------------------
+
+"Standalone/local mode"
+
+Instead of running guestfsd (the daemon) inside qemu, there should be
+an option to just run guestfsd directly.
+
+The architecture in this mode would look like:
+
+     +------------------+
+     | main program     |
+     |------------------|
+     | libguestfs       |
+     +--------^---------+
+          |   | reply
+      cmd |   |
+     +----v-------------+
+     | guestfsd         |
+     +------------------+
+
+Notes:
+
+(1) This only makes sense if we are running as root.
+
+(2) There is no console / kernel messages in this configuration, but
+we might consider capturing stderr from the daemon.
+
+(3) guestfs_config and guestfs_add_drive become no-ops.
+
+Obviously in this configuration, commands are run directly on the
+local machine's disks.  You could just run the commands themselves
+directly, but libguestfs provides a convenient API and language
+bindings.  Also deals with tricky stuff like parsing the output of the
+LVM commands.  Also we get to leverage other code such as
+virt-inspector.
+
+This is mainly useful from live CDs, ie. virt-p2v.
+
+Should we bother having the daemon at all and just link the guestfsd
+code directly into libguestfs?
+
+----------------------------------------------------------------------
+
+PPC problems:
+
+  ppc (32 bit) works with qemu from git, however there is no serial console
+
+  ppc64 requires extra parameters:
+    -M mac99 -cpu ppc64
+  however it still fails:
+    invalid/unsupported opcode: 01 - 01 - 1a (06301e83) 00000000018c2738 1
+    invalid bits: 00400000 for opcode: 0b - 19 - 15 (2d746572) 0000000000009230
+
+  no serial console in ppc or ppc64 because no one can tell us what
+  console=ttyXX option to use
+
+----------------------------------------------------------------------
+
+Supermin appliance should be moved into febootstrap.