summaryrefslogtreecommitdiffstats
path: root/install
diff options
context:
space:
mode:
authorAaron Griffin <aaron@archlinux.org>2006-04-27 19:08:47 +0200
committerAaron Griffin <aaron@archlinux.org>2006-04-27 19:08:47 +0200
commit2ed876b6b5c7b431caf5c452d6ee4a67241c4d01 (patch)
treed8e3c850df5bc1a7f262b810fbf273761eb15266 /install
parentb3002a0c9ec4f3a299b5756695fb28957a83e005 (diff)
downloadmkinitcpio-2ed876b6b5c7b431caf5c452d6ee4a67241c4d01.tar.gz
mkinitcpio-2ed876b6b5c7b431caf5c452d6ee4a67241c4d01.tar.xz
Added 'autodetect' hook, intended to replace *-auto scripts
Beginnings of raid and dm hooks Used sysfs for ide parsing git-svn-id: http://projects.archlinux.org/svn/initramfs/mkinitcpio@25 880c04e9-e011-0410-abf7-b926e227c9cd
Diffstat (limited to 'install')
-rw-r--r--install/autodetect25
-rw-r--r--install/dm17
-rw-r--r--install/raid17
3 files changed, 59 insertions, 0 deletions
diff --git a/install/autodetect b/install/autodetect
new file mode 100644
index 0000000..9e23783
--- /dev/null
+++ b/install/autodetect
@@ -0,0 +1,25 @@
+# vim: set ft=sh:
+
+install ()
+{
+ msg ":: Autodetecting modules"
+ #blegh, we'll let /tmp clean itself up
+ modtmp=$( mktemp /tmp/initcpio_modules.XXXXXX )
+ MODULES=" $(auto_modules "/scsi/" | grep -v "ata")
+ $(auto_modules "/block/")
+ $(auto_modules "/fusion/")
+ $(auto_modules "/usb/") usb_storage usbhid
+ $(auto_modules "scsi/.*ata")
+ $(auto_modules "/ide/")
+ $(cat /proc/filesystems | grep -v nodev) "
+ for m in $MODULES; do
+ echo $(basename ${m//\.ko/}) >> $modtmp
+ [ "$m" == "ata_piix" ] && echo "piix" >> $modtmp
+ done
+
+ add_file $modtmp "/modules"
+
+ BINARIES=""
+ FILES=""
+ SCRIPT="autodetect"
+}
diff --git a/install/dm b/install/dm
new file mode 100644
index 0000000..7011f5e
--- /dev/null
+++ b/install/dm
@@ -0,0 +1,17 @@
+# vim: set ft=sh:
+
+install ()
+{
+ MODULES=" $(all_modules "/md/" | grep -v "raid")"
+ BINARIES=""
+ FILES=""
+ SCRIPT="UNKNOWN"
+}
+
+help ()
+{
+cat<<HELPEOF
+ This hook loads the necessary modules for an device mapper device.
+ Detection will take place at runtime.
+HELPEOF
+}
diff --git a/install/raid b/install/raid
new file mode 100644
index 0000000..6f3c90a
--- /dev/null
+++ b/install/raid
@@ -0,0 +1,17 @@
+# vim: set ft=sh:
+
+install ()
+{
+ MODULES=" $(all_modules "/md/raid*")"
+ BINARIES=""
+ FILES=""
+ SCRIPT="raid"
+}
+
+help ()
+{
+cat<<HELPEOF
+ This hook loads the necessary modules for an raid root device.
+ Detection will take place at runtime.
+HELPEOF
+}