]> git.ipfire.org Git - thirdparty/dracut.git/commitdiff
[PATCH 50/50] Some documentation updates
authorVictor Lowther <victor.lowther@gmail.com>
Fri, 13 Feb 2009 12:43:31 +0000 (04:43 -0800)
committerDave Jones <davej@redhat.com>
Mon, 16 Feb 2009 18:56:51 +0000 (13:56 -0500)
HACKING
README
TODO

diff --git a/HACKING b/HACKING
index 1e8111b03e124e5881172d555a530fdb09330fc4..e9efe09ac1fa818bf8e66c06ccbf663eaa37e35b 100644 (file)
--- a/HACKING
+++ b/HACKING
@@ -18,5 +18,4 @@ and set
 
 Requirements:
 * udev
-* plymouth > 0.6.0-2 (for encrypted root; otherwise, it should noop out)
 * nash (for switchroot until we get in util-linux)
diff --git a/README b/README
index 7749fdb33d7dfd58f22b05d6f6f1e768621a77bd..abc282ac9593dc5be106413cff3eafea9661f1ee 100644 (file)
--- a/README
+++ b/README
@@ -19,6 +19,25 @@ we'll grow some hooks for running arbitrary commands in the flow of
 the script, but it's worth trying to resist the urge as much as we can
 as hooks are guaranteed to be the path to slow-down.
 
+Most of the initrd generation functionality in dracut is provided by a bunch
+of generator modules that are sourced by the main dracut script to install
+specific functionality into the initrd.  They live in the modules subdirectory,
+and use functionality provided by dracut-functions to do their work.
+Some general rules for writing modules:
+ * Use one of the inst family of functions to actually install files
+   on to the initrd.  They handle mangling the pathnames and (for binaries,
+   scripts, and kernel modules) installing dependencies as appropriate so
+   you do not have to.
+ * Scripts that end up on the initrd should be POSIX compliant. dracut
+   will try to use /bin/dash as /bin/sh for the initrd if it is available,
+   so you should install it on your system -- dash aims for strict POSIX
+   compliance to the extent possible.
+ * Hooks MUST be POSIX compliant -- they are sourced by the init script,
+   and having a bashism break your user's ability to boot really sucks.
+ * Generator modules should have a two digit numeric prefix -- they run in
+   ascending sort order. Anything in the 90-99 range is stuff that dracut
+   relies on, so try not to break those hooks.
+
 Also, there is an attempt to keep things as distribution-agnostic as
 possible.  Every distribution has their own tool here and it's not
 something which is really interesting to have separate across them.
diff --git a/TODO b/TODO
index a59c869fce678a721b01353a710900ce774d086f..e04be3a0b6a5aedfb58c1ac1fff089333b84a385 100644 (file)
--- a/TODO
+++ b/TODO
@@ -16,15 +16,8 @@ the rules that we care about in the initramfs.  These could be
 symlinks/hardlinks to the main rules in some cases or special-cased
 ones
 * LVM activation by udev is a bit of a large hammer right now
-* dm-crypt (luks) depends on plymouth
-* plymouth is hard-coded... this may be reasonable as modesetting goes
-into the upstream kernel as a way to get off of fb-splash stuff, but I
-can see this being a point of contention for other distros
-  * plymouth --show-splash should be done as a udev rule so that we
-  can switch modes first
 * root= parsing should be done with udev creating /dev/root symlink
 for us appropriately
-* Support thaw (resume from hibernate)
 * Proving some support with a simple network based root would be good
   * Do we just call dhclient, etc or try to get NetworkManager going?
 * Would be nice not to have to kill and restart udev across switchroot 
@@ -40,3 +33,7 @@ GENERATOR TODO
 --------------
 * Default module specificatoin could use some work
 * udev rule copying, as mentioned above, is a bit too hard-coded
+* pkg-config integration, to make it easy for other packages to use us.
+* Autotool-izing the package is probably overkill, but making the Makefile
+  vaguely autotools-compatible and adding a configure script would probably
+  be a good thing.