-
Notifications
You must be signed in to change notification settings - Fork 31
/
HACKING
51 lines (43 loc) · 1.58 KB
/
HACKING
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
Send patches to the libguestfs mailing list.
----------------------------------------------------------------------
If you want to write a package manager for a new Linux distro, then
first look at the interface that you have to supply. It is documented
in src/package_handler.mli. Secondly look at existing handlers, eg.
src/rpm.ml, src/dpkg.ml.
----------------------------------------------------------------------
Overview of the source files:
supermin.ml main program, argument parsing and coordination
|
+- prepare.ml Prepare mode (--prepare option)
|
+- build.ml Build mode (--build option)
|
+- chroot.ml Build a chroot (--build -f chroot)
|
+- ext2.ml Build an ext2 fs (--build -f ext2)
|
+- kernel.ml Find the right kernel to use
|
+- ext2_initrd.ml Build a minimal initrd
Libraries used by both modes:
|
+- package_hander.mli
+- package_hander.ml Package manager interface, for resolving
| | package dependencies, list of files, etc.
| |
| +- rpm.ml Package manager implementation for RPM distros
| |
| +- dpkg.ml Package manager implementation for dpkg distros
| |
| +- etc.
|
+- config.ml Configuration (from autoconf)
|
+- types.ml Some global type declarations
|
+- utils.ml Some utility functions
|
+- fnmatch.ml Interface to fnmatch(3)
| |
| +- fnmatch-c.c Binding to fnmatch(3)
+- etc. And other C bindings ...