X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=TODO;h=452e5dc33fcfe5f41b93f8d5a1996d5720483b36;hp=2209619a47bad3b52f106b95e0fe7f8db693ceb1;hb=979bcc553897f42024539ae6dd6ba66e9764a92c;hpb=bda6cf75f259992bcba23c3c4c2339c50552f491 diff --git a/TODO b/TODO index 2209619..452e5dc 100644 --- a/TODO +++ b/TODO @@ -29,6 +29,11 @@ Haskell bindings Complete the Haskell bindings (see discussion on haskell-cafe). +PHP bindings +------------ + +Add bindtests to PHP bindings. + Complete bind tests ------------------- @@ -85,11 +90,6 @@ 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? -Supermin appliance to febootstrap ---------------------------------- - -Supermin appliance functionality should be moved into febootstrap. - Ideas for extra commands ------------------------ @@ -110,6 +110,7 @@ Ideas for extra commands findfs logsave mklost+found + ext2undelete SELinux: chcat @@ -275,19 +276,122 @@ http://sourceforge.net/projects/aide/ http://osiris.shmoo.com/ http://sourceforge.net/projects/tripwire/ -Resizing, shrinking, specifying sizes in guestfish --------------------------------------------------- +-N option should be generated +----------------------------- + +'-N' option should generate documentation in guestfish(1) manpage. + +Fix 'file' +---------- + +https://www.redhat.com/archives/libguestfs/2010-June/msg00053.html +https://www.redhat.com/archives/libguestfs/2010-June/msg00079.html + +Regression test on virt-inspector +--------------------------------- + +Occasionally we break virt-inspector through some change. We should +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. +> add mydisk +Tip: You need to type 'run' before you can see into the disk image. +> run +Tip: Use 'list-filesystems' to see what filesystems are available. +> list-filesystems +/dev/vda1 +Tip: Use 'mount fs /' to mount a filesystem. +> mount /dev/vda1 / +Tip: Use 'll /' to view the filesystem or ... +> 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? +------------------------------------------------------------------------ + +> 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/ -Owing to an oversight we don't really supporting shrinking -filesystems. See: +virt-copy -r dir/ GuestName:/tmp/ -https://bugzilla.redhat.com/show_bug.cgi?id=585221 -https://bugzilla.redhat.com/show_bug.cgi?id=585222 -https://bugzilla.redhat.com/show_bug.cgi?id=585223 +virt-copy GuestName:/tmp/foo* . -But a related problem is how to specify sizes to guestfish, ie. "100M" -or "1G". Currently the specific alloc and sparse functions contain -code to parse these size strings, but that cannot be used anywhere -else that would take a byte count. This is awkward because some -commands take units of megabytes (lvresize, sfdiskM) or sectors -(part-add), with no unifying theme. +virt-copy disk.img:/tmp/bar* otherdisk.img:/tmp +( probably not because it requires multiple libguestfs connections)