summaryrefslogtreecommitdiffstats
path: root/HACKING
Commit message (Collapse)AuthorAgeFilesLines
* docs: Obsolete HACKING file, move content into guestfs(3) man page.Richard W.M. Jones2010-12-191-258/+2
| | | | | | Add a new section called "EXTENDING LIBGUESTFS" to the guestfs manual page which contains all the information previously in "HACKING".
* capitests: Add 'InitScratchFS' test environment.Richard W.M. Jones2010-11-301-24/+31
| | | | | | This should allow us to perform filesystem-based write tests much more quickly, because we don't need to recreate the filesystem from scratch each time.
* capitests: Move test documentation into HACKING file.Richard W.M. Jones2010-11-301-1/+36
|
* rescue: Rewrite virt-rescue in C.Richard W.M. Jones2010-11-261-0/+3
|
* Update HACKING description of tools/ subdirectory.Richard W.M. Jones2010-11-261-1/+1
| | | | This fixes commit 18374b5b7d3154e0b8b8a07e3590f6eee762b58e.
* df: Rewrite virt-df in C.Richard W.M. Jones2010-11-251-0/+3
| | | | | | | | | | | | I have diffed the output from the original virt-df with this new version, and they agree very closely. Some differences: - Old virt-df have a divide-by-zero error in cases where the number of used inodes was 0. New virt-df fixes this. - New virt-df uses gnulib human_readable library which displays numbers to 3 significant figures for -h output (old version used an ad hoc function).
* New tool: virt-filesystemsRichard W.M. Jones2010-11-231-1/+2
| | | | | | | | This tool replaces virt-list-filesystems and virt-list-partitions with a new tool written in C with a more uniform command line structure and output. This existing Perl tools are deprecated but remain indefinitely.
* ls: Rewrite virt-ls in C.Richard W.M. Jones2010-11-231-1/+1
|
* Rewrite virt-cat in C.Richard W.M. Jones2010-11-111-4/+4
| | | | | | | | | | | | | | | | | With changes in the core API since 1.5, virt-cat was little more than a Perl wrapper which did some command line argument processing. Thus it could easily be rewritten in C. This version also shares core command line argument processing with guestfish and guestmount, so the options have changed slightly (old-style command line *is* supported). virt-cat -a disk.img file [file ...] virt-cat -d domname file [file ...] Several other guestfish options are supported including encryption, and with the new style multiple files can be downloaded. See the man page for details.
* HACKING: Mention PHP bindings.Richard W.M. Jones2010-11-031-0/+3
|
* Split generator into separate source files.Richard Jones2010-09-111-3/+7
| | | | | | | | | | 'src/generator.ml' is no more. Instead the generator is logically split up over many different source files. Read generator/README for help and tips. We compile the generator down to bytecode, not native code. This means it will run more slowly, but is done for maximum portability.
* Allow manual pages and POD files to be translated.Richard Jones2010-09-021-1/+7
| | | | | | | | | | | | | | This uses the optional po4a package to split these files into PO files for translation, and reassemble afterwards. Note this creates an extra pot file (po-docs/libguestfs-docs.pot). We don't (yet) combine this with the main po/libguestfs.pot file. The 'libguestfs-docs.pot' file included in this commit is not the real thing, just a short cut down snippet for testing. The real thing is created if you update one of the dependent files and rebuild. Note also the dummy ja.po, for testing the principles.
* Spin off hivex as a separate upstream project.Richard Jones2010-02-221-3/+4
| | | | | | | | | | | | | | This commit makes the semi-independent hivex library into a separate upstream project. The git repo for hivex is now: http://git.annexia.org/?p=hivex.git;a=summary Downloads of hivex are available here: http://libguestfs.org/download/ All questions, patches, bugs etc should be sent to the libguestfs mailing list and bug tracker.
* Experimental C# bindings.Richard Jones2010-01-021-0/+3
| | | | Tested in only limited situations, with Mono on Linux.
* indent with spaces, not TABsJim Meyering2009-11-091-3/+3
| | | | | | | | | | | * HACKING: Expand indentation TABs. * configure.ac: Likewise. * daemon/daemon.h: Likewise. * daemon/guestfsd.c: Likewise. * fuse/guestmount.c: Likewise. * hivex/LICENSE: Likewise. * src/generator.ml: Likewise. * tools/virt-win-reg: Likewise.
* FUSE filesystem support.Richard Jones2009-11-031-0/+3
| | | | | | | | | | | | | | | This implements FUSE filesystem support so that any libguestfs- accessible disk image can be mounted as a local filesystem. Note: file writes (ie. write(2) system call) is not yet implemented. The API needs more test coverage, particularly lesser-used system calls. The big unresolved issue is UID/GID mapping between guest filesystem IDs and the host. It's not easy to automate this because you need extra details about the guest itself in order to get to its UID->username map (eg. /etc/passwd from the guest).
* Support for Windows Registry.Richard Jones2009-10-291-0/+4
| | | | | | | | | | | | | In hivex/: This mini-library allows us to extract Windows Registry binary files ("hives"). There are also two tools: hivexml converts a hive to a self-describing XML format. hivexget can be used to extract single subkeys from a hive. New tool: virt-win-reg. This is a wrapper around the library functionality allowing you to pull out data from the registries of Windows guests.
* Tab to space fixes, now passes 'make syntax-check'Richard Jones2009-10-201-4/+4
|
* Move virt tools (virt-cat, virt-edit etc) into tools/ subdirectory.Richard Jones2009-10-191-12/+6
| | | | | | | | | | | | | | | | | | This moves the tool programs into a single directory: cat/* -> tools/virt-cat df/* -> tools/virt-df edit/* -> tools/virt-edit rescue/* -> tools/virt-rescue This in itself simplifies the build process because we only need one Makefile and one copy of 'run-locally'. 'run-*-locally' has become just 'run-locally' and takes an extra parameter which is the name of the tool, eg: run-locally cat [virt-cat params...] virt-inspector stays in its own directory, because this contains more than just a single Perl script.
* maint: use spaces, not TABs for indentationJim Meyering2009-09-241-2/+2
| | | | | | | | "make syntax-check" was failing. This fixes it. * HACKING: Indent with spaces, not TABs. * configure.ac: Likewise. * rescue/virt-rescue: Likewise. * src/generator.ml: Likewise.
* New tool: virt-editRichard Jones2009-09-231-0/+3
| | | | | | | | | | | | | Edit any file in a guest. This was possibly previously using guestfish, but having a separate command makes it simpler. The usage is simply: virt-edit mydomain /some/file It runs $EDITOR or vi on the file, and if the user changes it, uploads the result back to the VM.
* Add 'virt-rescue' command.Richard Jones2009-09-231-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This command runs a "rescue appliance" against a virtual machine or disk image. This is useful for making ad-hoc interactive changes to virtual machines. $ virt-rescue --ro /dev/vg_trick/F11x64 Welcome to virt-rescue, the libguestfs rescue shell. Note: The contents of / are the rescue appliance. You have to mount the guest's partitions under /sysroot before you will be able to examine them. bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job control in this shell ><rescue> mount /dev/vg_f11x64/lv_root /sysroot EXT4-fs (dm-0): barriers enabled kjournald2 starting: pid 269, dev dm-0:8, commit interval 5 seconds EXT4-fs (dm-0): internal journal on dm-0:8 EXT4-fs (dm-0): delayed allocation enabled EXT4-fs: file extents enabled EXT4-fs: mballoc enabled EXT4-fs (dm-0): mounted filesystem with ordered data mode ><rescue> ls /sysroot/ bin dev home lib64 media opt root selinux sys usr boot etc lib lost+found mnt proc sbin srv tmp var ><rescue> exit
* Remove virt-v2v. New repo: http://gitorious.org/virt-v2v/Richard Jones2009-08-201-3/+0
|
* HACKING: Document make targets and ./configure --enable-gcc-warnings.Richard W.M. Jones2009-08-171-0/+7
|
* doc: improve emacs snippetsJim Meyering2009-08-121-2/+10
| | | | | * HACKING: Make (setq indent-tabs-mode nil) apply to nearly all files, not just C-mode ones.
* build: tweak HACKING so we pass "make syntax-check"Jim Meyering2009-08-041-2/+2
| | | | * HACKING: Convert leading TABs.
* Document and enforce the new spaces-only indentation policy.Jim Meyering2009-08-031-0/+23
| | | | | | | * cfg.mk (disable_temporarily): Remove sc_TAB_in_indentation, to enable the "make syntax-check" that enforces this. * .x-sc_TAB_in_indentation: New file. Exceptions. * HACKING: Document the policy, with tips on how to conform.
* Convert all TABs-as-indentation to spaces.Jim Meyering2009-08-031-25/+25
| | | | | | | | | | | Do it by running this command: [exempted files are matched via .x-sc_TAB_in_indentation] git ls-files \ | pcregrep -vf .x-sc_TAB_in_indentation \ | xargs pcregrep -l '^ *\t' \ | xargs perl -MText::Tabs -ni -le \ '$m=/^( *\t[ \t]*)(.*)/; print $m ? expand($1) . $2 : $_'
* Replace shell_quote function with %Q and %R printf specifiers.Richard Jones2009-07-281-0/+22
| | | | | | | %Q => simple shell quoted string %R => path will be prefixed by /sysroot eg. snprintf (cmd, sizeof cmd, "cat %R", path); system (cmd);
* Add libguestfs-test-tool.Richard Jones2009-07-221-0/+3
| | | | | | | | | | | This is an end-user testing tool, designed to test basic functionality of libguestfs/qemu/kernel combination on the end-user's final host machine. It does not perform a thorough test, but should be enough to find most booting issues. Also this is intended to be used when reporting bugs.
* New tool virt-cat: display a file in a virtual machine.Richard Jones2009-07-151-0/+3
| | | | | | | | | This script is just a simpler way to cat a file from a VM. It is otherwise equivalent to using guestfish. virt-cat someguest /etc/fstab virt-cat someguest /var/log/messages | tail
* Added framework for 'virt-df' command.Richard Jones2009-07-101-0/+3
|
* Added outline of the virt-v2v script.Richard Jones2009-07-101-0/+3
|
* Update with links to the new mailing list.Richard Jones2009-07-081-2/+2
|
* Generator now runs automatically when it has changed.Richard W.M. Jones2009-07-021-4/+0
|
* Move pure regression tests to their own subdirectory.Richard Jones2009-06-041-0/+3
|
* Move C API tests out of root build dir into 'capitests' subdir.Richard W.M. Jones2009-05-281-0/+3
|
* Move the appliance and build scripts into new appliance/ subdirectory.Richard W.M. Jones2009-05-281-0/+3
|
* Gettextize the source, make library strings translatable.Richard Jones2009-05-211-0/+17
|
* Partial Haskell bindings.Richard Jones2009-05-101-0/+3
|
* Experimental febootstrap install script.Richard Jones2009-05-081-0/+3
|
* Added virt-inspector program from virt-v2v.Richard Jones2009-04-281-0/+3
|
* Java bindings compile, not tested.Richard Jones2009-04-211-0/+3
|
* Added tar-in, tar-out, tgz-in, tgz-out commands.Richard Jones2009-04-201-0/+2
|
* Add ruby/ directory, add more warnings.Richard Jones2009-04-181-3/+6
|
* Updated HACKING notes about debugging.Richard Jones2009-04-091-2/+3
|
* Added framework for the language bindings.Richard Jones2009-04-071-1/+38
|
* Debugging tips.Richard Jones2009-04-061-0/+11
|
* Added a HACKING file.Richard Jones2009-04-031-0/+28