X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=TODO;h=5002fc155d209105411c2ad181d3901fa1ffbe4a;hp=0f933fafd55cf3bd2df366327227d073b9ff1734;hb=3451d73a693091ae1a33e7dbefbe56c1b93f426a;hpb=6590e04bdcc3038312cb0a5f5545f1f0924907b2 diff --git a/TODO b/TODO index 0f933fa..5002fc1 100644 --- a/TODO +++ b/TODO @@ -206,6 +206,10 @@ http://www.perlmonks.org/index.pl?node_id=582185 Note that pty requires cooperation inside the C code too (there are two sides to a pty, and one has to be handled after the fork). +[I tried to implement this in the new C virt-rescue, but it doesn't +work. qemu is implementing its own ptys, and they are broken. Need +to fix qemu.] + Windows-based daemon/appliance ------------------------------ @@ -234,6 +238,8 @@ However this won't work easily for VM disk images in the disk image. One would have to download those to the host and launch another libguestfs instance. +[Not sure this is such a good idea. See also live CD inspection idea below.] + Map filesystems to disk blocks ------------------------------ @@ -264,16 +270,6 @@ 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 ----------------------- @@ -319,7 +315,6 @@ 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). @@ -348,10 +343,37 @@ capturing traces than using patched qemu (see contrib/visualize-alignment). We would still use the same visualization tools in conjunction with blktrace traces. -Add-domain command +guestfish parsing +----------------- + +At the moment guestfish uses an ad hoc parser which has many +shortcomings. We should change to using a lex/yacc-based scanner and +parser (there are better parsers out there, but yacc is sufficient and +very widely available). + +The scanner must deal with the case of parsing a whole command string, +eg. for a command that the user types in: + + > add-drive-opts "/tmp/foo" readonly:true + +and also with parsing single words from the command line: + + guestfish add-drive-opts /tmp/foo readonly:true + +Note the quotes are for scanning and don't indicate types. + +We should also allow variables and expressions as part of this new +parsing code, eg: + + set roots inspect-os + set product inspect-get-product-name %{roots[0]} + +% is better than $ because of shell escaping and confusion with shell +variables. + +live CD inspection ------------------ -guestfs_add_domain (g, "libvirt-dom"); +guestfish -i livecd.iso -However this would need to not depend on libvirt, eg. loading it -on demand. +Could this be done through the core API and existing calls?