Complete the Haskell bindings (see discussion on haskell-cafe).
+PHP bindings
+------------
+
+Add bindtests to PHP bindings.
+
Complete bind tests
-------------------
Should we bother having the daemon at all and just link the guestfsd
code directly into libguestfs?
-Supermin appliance to febootstrap
----------------------------------
-
-Supermin appliance functionality should be moved into febootstrap.
-
Ideas for extra commands
------------------------
-N option should be generated
-----------------------------
-'-N' option should be generated code, and should generate
-documentation in guestfish(1) manpage.
+'-N' option should generate documentation in guestfish(1) manpage.
Fix 'file'
----------
add a regression test for it. However this is hard because we'd need
to avoid having to carry huge images.
+Update: I managed to fit a real-but-minimal Fedora 13 image into 6.2 MB.
+See: http://rwmj.wordpress.com/2010/09/07/tip-pack-files-into-a-new-disk-image/#content
+
Freeze/thaw filesystems
-----------------------
Access to these ioctls:
http://git.kernel.org/linus/fcccf502540e3d7
+
+Tips for new users in guestfish
+-------------------------------
+
+$ guestfish
+Tip: You need to 'add disk.img' or 'alloc disk.img nn' to make a new image.
+Type 'notips' to disable tips permanently.
+><fs> add mydisk
+Tip: You need to type 'run' before you can see into the disk image.
+><fs> run
+Tip: Use 'list-filesystems' to see what filesystems are available.
+><fs> list-filesystems
+/dev/vda1
+Tip: Use 'mount fs /' to mount a filesystem.
+><fs> mount /dev/vda1 /
+Tip: Use 'll /' to view the filesystem or ...
+><fs> ll /
+
+New guestfish commands
+----------------------
+
+'list-filesystems' => list mountable filesystems
+
+We could implement this as a new API call, replacing a number of areas
+of the current code where this is done already (in virt-inspector and
+elsewhere). What we normally do to find out if a partition contains a
+mountable filesystem is to just blindly mount it, and see if that
+succeeds. However the kernel won't let us do this if the filesystem
+is already mounted somewhere, so a naive implementation of this in the
+daemon won't work. We would have to check if the partition was
+already mounted.
+
+Could we make guestfish interactive if commands are used without params?
+------------------------------------------------------------------------
+
+><fs> sparse
+[[Prints man page]]
+Image name? disk.img
+Size of image? 10M
+
+Common problems
+---------------
+
+How can we solve these common user problems?
+
+- http://lists.fedoraproject.org/pipermail/users/2010-June/374931.html
+ In guestfish, specified -m non-existent filesystem. We could suggest
+ a list of filesystems, or suggest they run the virt-list-filesystems
+ command.
+
+Better support for encrypted devices
+------------------------------------
+
+Currently LUKS support only works if the device contains volume
+groups. If it contains, eg., partitions, you cannot access them.
+We would like to add:
+
+ - An easier way to use this from guestfish.
+ - Direct access to the /dev/mapper device (eg. if it contains
+ anything apart from VGs).
+
+Recursive upload / download of multiple files
+---------------------------------------------
+
+virt-tar is really clumsy to use, and upload/download in guestfish can
+only do single files. tar-in in guestfish can upload multiple files,
+but only if you have prepared a tarball in advance.
+
+What we really need is a method which is as easy to use as 'scp' and
+'scp -r'.
+
+Can we add this as a command in guestfish? This will be more useful
+since users will already need to be in guestfish in order to create
+target directories, review what they've done etc. It could be a meta-
+command such as:
+
+ copy-in-recursive localdir remotedir
+ copy-out-recursive remotedir localdir
+
+which would hide use of tgz-in etc.
+
+Other thoughts on this:
+
+virt-cp or virt-rcp or virt-copy or virt-scp or ...?
+
+virt-copy *.c *.h GuestName:/tmp/
+
+virt-copy -r dir/ GuestName:/tmp/
+
+virt-copy GuestName:/tmp/foo* .
+
+virt-copy disk.img:/tmp/bar* otherdisk.img:/tmp
+( probably not because it requires multiple libguestfs connections)