X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=HACKING;h=6ca33be31c7d1692baa2e931f62caecfae3abd90;hp=b2fab3ed28ca4869b14a1b1cb414c17bda269e4d;hb=8ab8377ef64ec0e2483826388cf7d3c07ffa8ecc;hpb=f5d2602bf6d40ecc71a5a17e0be9f480e9a4453a diff --git a/HACKING b/HACKING index b2fab3e..6ca33be 100644 --- a/HACKING +++ b/HACKING @@ -1,3 +1,6 @@ +PLEASE LOOK AT THE TOP OF EACH FILE BEFORE EDITING TO SEE WHETHER IT +IS AUTOMATICALLY GENERATED OR NOT. + Adding a new action ---------------------------------------------------------------------- @@ -11,18 +14,112 @@ etc. to the big list called 'functions' at the top of this file. 'do_action' function. Take a look at one of the numerous examples there. -You will need to run src/generator.ml (from the top directory) which -regenerates all the auto-generated files, and then continue with the -ordinary build process. - Formatting ---------------------------------------------------------------------- Try to use GNU / Emacs default formatting, following the convention used elsewhere in the source. +Please make sure that the code compiles without warnings. + +Please test any changes. + +Directories +---------------------------------------------------------------------- + +appliance/ + The qemu appliance, build scripts and so on. + +cat/ + The virt-cat tool. + +capitests/ + Automated tests of the C API. + +contrib/ + Outside contributions, experimental parts. + +daemon/ + The daemon that runs inside the guest and carries out actions. + +df/ + The virt-df tool. + +examples/ + The examples. + +fish/ + Guestfish (the command-line program / shell) + +haskell/ + Haskell bindings. + +images/ + Some guest images to test against. These are gzipped to save + space. You have to unzip them before use. + + Also contains some files used by the test suite. + +inspector/ + Virtual machine image inspector (virt-inspector). + +java/ + Java bindings. + +m4/ + M4 macros used by autoconf. + +ocaml/ + OCaml bindings. + +po/ + Translations. + +perl/ + Perl bindings. + +python/ + Python bindings. + +regressions/ + Regression tests. + +ruby/ + Ruby bindings. + +src/ + Source code to the C library. + Also contains the crucial generator program. + +v2v/ + Xen to KVM (V2V) conversion tool. + +Debugging +---------------------------------------------------------------------- + +It's a good idea to use guestfish to try out new commands. + +Debugging the daemon is a problem because it runs inside a minimal +qemu environment. However you can print messages from the daemon, and +they will show up if you use 'guestfish -v'. + Patches ---------------------------------------------------------------------- -Submit patches to the fedora-virt mailing list: -http://www.redhat.com/mailman/listinfo/fedora-virt +Submit patches to the mailing list: +http://www.redhat.com/mailman/listinfo/libguestfs +and CC to rjones@redhat.com + +I18N +---------------------------------------------------------------------- + +We support i18n (gettext anyhow) in the library. + +However many messages come from the daemon, and we don't translate +those at the moment. One reason is that the appliance generally has +all locale files removed from it, because they take up a lot of space. +So we'd have to readd some of those, as well as copying our PO files +into the appliance. + +Debugging messages are never translated, since they are intended for +the programmers.