summaryrefslogtreecommitdiffstats
path: root/abs/core-testing/linhes-live/lib/initcpio/hooks
diff options
context:
space:
mode:
authorJames Meyer <james.meyer@operamail.com>2010-10-23 18:17:40 (GMT)
committerJames Meyer <james.meyer@operamail.com>2010-10-23 18:19:39 (GMT)
commitadbcf19958300e9b6598990184c8815b945ba0ee (patch)
treef4283c850ac0ac202c17e78a637ee7ca8147621b /abs/core-testing/linhes-live/lib/initcpio/hooks
parent61a68250df10d29b624650948484898334ff22d0 (diff)
downloadlinhes_pkgbuild-adbcf19958300e9b6598990184c8815b945ba0ee.zip
linhes_pkgbuild-adbcf19958300e9b6598990184c8815b945ba0ee.tar.gz
linhes_pkgbuild-adbcf19958300e9b6598990184c8815b945ba0ee.tar.bz2
Removed old core and extra from repo. Renamed -testing to core/extra. This will setup the base for the testing branch.
Diffstat (limited to 'abs/core-testing/linhes-live/lib/initcpio/hooks')
-rw-r--r--abs/core-testing/linhes-live/lib/initcpio/hooks/larch1125
-rw-r--r--abs/core-testing/linhes-live/lib/initcpio/hooks/larch233
-rw-r--r--abs/core-testing/linhes-live/lib/initcpio/hooks/larch2_aufs33
-rw-r--r--abs/core-testing/linhes-live/lib/initcpio/hooks/larch3196
4 files changed, 0 insertions, 387 deletions
diff --git a/abs/core-testing/linhes-live/lib/initcpio/hooks/larch1 b/abs/core-testing/linhes-live/lib/initcpio/hooks/larch1
deleted file mode 100644
index 88ccc3e..0000000
--- a/abs/core-testing/linhes-live/lib/initcpio/hooks/larch1
+++ /dev/null
@@ -1,125 +0,0 @@
-# vim: set ft=sh:
-
-# larch1 - live 'hook' for mkinitcpio: set up tmpfs and find boot device
-
-# Author: Michael Towers (gradgrind) <mt.42@web.de>
-#
-# This file is part of the larch project.
-#
-# larch is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# larch is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with larch; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-#
-#----------------------------------------------------------------------------
-#2008.02.11
-
-# Replacement for msg which includes leading and trailing spaces
-msg_ () { [ "${quiet}" != "y" ] && echo "$@"; }
-
-# Try to mount a disk, partition or cdrom and look for the file
-# 'larchboot' in the /larch directory.
-# If LiveCD system found in the device, return 0, else return 1
-# and leave the device mounted.
-# $1 = device name (e.g. "/dev/hda2")
-# $2 = directory where devices will be mounted
-#
-test_live_data_dir ()
-{
- /bin/mount -r -t iso9660 "$1" $2 >/dev/null 2>/dev/null || \
- /bin/mount -r -t vfat -o noatime,nodiratime "$1" $2 >/dev/null 2>/dev/null || \
- /bin/mount -r -t ext2 -o noatime,nodiratime "$1" $2 >/dev/null 2>/dev/null
- if [ $? -eq 0 ]; then
- if [ -f "$2/larch/larchboot" ]; then
- LDEV="$1"
- msg_ " ... found at $1"
- return 0
- else
- /bin/umount $2 2>/dev/null
- msg_ " ... $1 mounted, but no 'larch/larchboot' found"
- fi
- else
- msg_ " ... not $1"
- fi
- return 1
-}
-
-run_hook ()
-{
- msg_ ":: Creating writeable filesystem (tmpfs)"
- /bin/mkdir "/tfs"
- # Boot option copy-to-ram (c2r)
- if [ "${c2r}" = "y" ]; then
- TFSSIZE="90%"
- else
- TFSSIZE="60%"
- fi
- /bin/mount -t tmpfs -o "size=${TFSSIZE}" tmpfs "/tfs"
-
- # Directory for test mounts (and then for live CD)
- cdmount="/livecd"
- /bin/mkdir "${cdmount}"
-
- # look for livecd data directory, first try ${root}
- LDEV="${root}"
- if [ "x${LDEV}" != "x" ]; then
- /bin/mount -r -t iso9660 "${LDEV}" "${cdmount}" >/dev/null 2>/dev/null || \
- /bin/mount -r -t vfat -o noatime,nodiratime "${LDEV}" "${cdmount}" >/dev/null 2>/dev/null || \
- /bin/mount -r -t ext2 -o noatime,nodiratime "${LDEV}" "${cdmount}" >/dev/null 2>/dev/null
- if [ $? -eq 0 ]; then
- if [ -d "${cdmount}/larch" ]; then
- msg_ ":: larch system at ${LDEV}"
- else
- /bin/umount "${cdmount}" 2>/dev/null
- echo "!! No larch system at ${LDEV}"
- LDEV=""
- fi
- else
- echo "!! Couldn't mount ${LDEV}"
- LDEV=""
- fi
- fi
-
- # then try cdroms
- if [ "x${LDEV}" = "x" ]; then
- msg_ ":: Looking for boot device"
- cdroms=$( /bin/cat /proc/sys/dev/cdrom/info | { while read a b c; do
- if [ "${a}" = "drive" -a "${b}" = "name:" ]; then
- echo "${c}"
- break
- fi
- done
- } )
- for i in ${cdroms}; do
- test_live_data_dir "/dev/${i}" "${cdmount}"
- if [ $? -eq 0 ]; then break; fi
- done
- fi
-
- # test USB devices (and disks) repeatedly until timed out
- if [ "x${LDEV}" = "x" ]; then
- msg_ ":: Searching for usb (and disk) devices .."
- for i in 1 2 3 4 5; do
- msg_ " :wait ${i} :::"
- /bin/sleep ${i}
- for d in /dev/sd[a-z][0-9]*; do
- test_live_data_dir "${d}" "${cdmount}"
- if [ $? -eq 0 ]; then break 2; fi
- done
- msg_ ":: Searching for usb cdroms .."
- for d in /dev/sr[0-9]*; do
- test_live_data_dir "${d}" "${cdmount}"
- if [ $? -eq 0 ]; then break 2; fi
- done
- done
- fi
-}
diff --git a/abs/core-testing/linhes-live/lib/initcpio/hooks/larch2 b/abs/core-testing/linhes-live/lib/initcpio/hooks/larch2
deleted file mode 100644
index 74b4e64..0000000
--- a/abs/core-testing/linhes-live/lib/initcpio/hooks/larch2
+++ /dev/null
@@ -1,33 +0,0 @@
-# larch2 - live 'hook' for mkinitcpio: unionfs specific
-
-# Author: Michael Towers (gradgrind) <mt.42@web.de>
-#
-# This file is part of the larch project.
-#
-# larch is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# larch is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with larch; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-#
-#----------------------------------------------------------------------------
-#2007.12.13
-
-run_hook ()
-{
- #!!! --- unionfs specific
- # Need unionfs module
- /bin/modprobe unionfs
- ovlmnt="ro"
- bropt="dirs="
- sqfmnt="ro"
- utype="unionfs"
-}
diff --git a/abs/core-testing/linhes-live/lib/initcpio/hooks/larch2_aufs b/abs/core-testing/linhes-live/lib/initcpio/hooks/larch2_aufs
deleted file mode 100644
index ac8e40b..0000000
--- a/abs/core-testing/linhes-live/lib/initcpio/hooks/larch2_aufs
+++ /dev/null
@@ -1,33 +0,0 @@
-# larch2_aufs - live 'hook' for mkinitcpio: aufs specific
-
-# Author: Michael Towers (gradgrind) <mt.42@web.de>
-#
-# This file is part of the larch project.
-#
-# larch is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# larch is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with larch; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-#
-#----------------------------------------------------------------------------
-# 2008.02.29
-
-run_hook ()
-{
- #!!! --- aufs specific
- # Need aufs module
- /bin/modprobe aufs
- ovlmnt="rr+wh"
- sqfmnt="rr"
- bropt="br:"
- utype="aufs"
-}
diff --git a/abs/core-testing/linhes-live/lib/initcpio/hooks/larch3 b/abs/core-testing/linhes-live/lib/initcpio/hooks/larch3
deleted file mode 100644
index b301aa9..0000000
--- a/abs/core-testing/linhes-live/lib/initcpio/hooks/larch3
+++ /dev/null
@@ -1,196 +0,0 @@
-# larch3 - live 'hook' for mkinitcpio:
-# deal with c2r,
-# mount base system,
-# load overlay,
-# set up unioned root filesystem.
-# Also manages overlay merging.
-
-# Author: Michael Towers <gradgrind[at]online[dot]de>
-#
-# This file is part of the larch project.
-#
-# larch is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# larch is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with larch; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-#
-#----------------------------------------------------------------------------
-# 2008.04.04
-
-run_hook ()
-{
- if [ "x${LDEV}" = "x" ]; then
- err "Sorry, couldn't find boot medium ..."
- break="y"
- return
- fi
-
- /sbin/modprobe loop
-
- # Path to compressed base system
- sysSqf=${cdmount}/system.sqf
-
- ovlpath=${cdmount}
-
- # A possibility to use alternative files:
- if [ -f ${cdmount}/larch/boot-init ]; then
- . ${cdmount}/larch/boot-init
- fi
-
- # Path to compressed 'modifications' archive
- modsSqf=${ovlpath}/mods.sqf
- # Default overlay file and directory
- overlay=${ovlpath}/overlay.ovl
-
- # Make union root
- /bin/mkdir /union
-
- # Deal with new archives
- if [ -f ${overlay}_ ]; then
- /bin/mount -o remount,rw ${LDEV} ${cdmount}
- /bin/mv ${overlay} ${overlay}~
- /bin/mv ${overlay}_ ${overlay}
-
- if [ -f ${modsSqf}_ ]; then
- /bin/mv ${modsSqf} ${modsSqf}~
- /bin/mv ${modsSqf}_ ${modsSqf}
- fi
- /bin/mount -o remount,ro ${LDEV} ${cdmount}
- fi
-
- # Boot option copy-to-ram (c2r)
- if [ "${c2r}" = "y" ]; then
- msg_ ":: Copying base system to RAM, this will take a while ..."
- /bin/cat ${sysSqf} > /tfs/system.sqf
- if [ $? -ne 0 ]; then
- err "Sorry, not enough RAM"
- break="y"
- return
- fi
- sysSqf=/tfs/system.sqf
-
- msg_ ":: Copying mods archive to RAM, this might take a while ..."
- /bin/cat ${modsSqf} > /tfs/mods.sqf
- if [ $? -ne 0 ]; then
- err "Sorry, not enough RAM"
- break="y"
- return
- fi
- modsSqf=/tfs/mods.sqf
-
- # force use of swap (if available)
- :> /tfs/swapon
-
- elif [ "${swap}" = "y" ]; then
- :> /tfs/swapon
- fi
-
- msg_ ":: Mounting squashed images"
- /bin/mkdir /tfs/system
- #added sleep for 3 seconds, because well i don't know but it seems to fix things
- sleep 3
- # The klibc mount command doesn't support '-o loop'
- /bin/losetup /dev/loop0 ${sysSqf}
- /bin/mount -r -t squashfs /dev/loop0 /tfs/system
-
- # Make stuff in 'system' available by providing the loader and
- # library path
- ldli=$( cd /tfs/system; echo lib/ld-linux*.so.2 )
- /bin/ln -s /tfs/system/${ldli} /${ldli}
- export LD_LIBRARY_PATH=/tfs/system/lib:/tfs/system/usr/lib
-
- /bin/mkdir /tfs/mods
-
- # The klibc mount command doesn't support '-o loop'
- /bin/losetup /dev/loop1 ${modsSqf}
- /bin/mount -r -t squashfs /dev/loop1 /tfs/mods
-
- # Unpack the overlay
-
- msg_ ":: Initializing writable layer for union (overlay)"
- /tfs/system/usr/bin/lzop -d < ${overlay} | \
- /tfs/system/bin/tar -C /tfs -xf -
-
- # Copy the installation tidy-up script (for removing custom live-only stuff),
- # and any other files in 'larch/copy' directory
- if [ -d ${ovlpath}/larch/copy ]; then
- cd ${ovlpath}/larch/copy
- for f in *; do
- cat ${f} >/tfs/${f}
- done
- fi
-
- msg_ ":: Setting up union file system"
-
- layers="/tfs/overlay=rw:/tfs/mods=${ovlmnt}:/tfs/system=${sqfmnt}"
- /bin/mount -t ${utype} -o ${bropt}${layers} ${utype} /union
-
- echo "${utype}" > /tfs/utype
-
- # Minimal device nodes needed before udev does its work
- /bin/mkdir /union/dev
- /bin/mknod /union/dev/console c 5 1
- /bin/mknod /union/dev/null c 1 3
- /bin/mknod /union/dev/zero c 1 5
-
- # Make special directories
- /bin/mkdir -m 1777 /union/tmp
- /bin/mkdir /union/media
- /bin/mkdir /union/sys
- /bin/mkdir /union/proc
-
- # Make the tmpfs stuff accessible within the union
- /bin/mkdir /union/.livesys
- /bin/mount -o bind /tfs /union/.livesys
-
- /bin/mkdir /union/.livesys/medium
-
- /bin/mount -o bind /tfs/system /union/.livesys/system
- /bin/mount -o bind /tfs/overlay /union/.livesys/overlay
- /bin/mount -o bind ${cdmount} /union/.livesys/medium
-
- if [ "x${modsSqf}" != "x" ]; then
- /bin/mount -o move /tfs/mods /union/.livesys/mods
- fi
-
- # Remember the boot device
- echo "${LDEV}" > /tfs/bootdevice
-
- if [ "${c2r}" = "y" ]; then
- # Set flag to inform system of copy-to-ram
- :> /tfs/c2r
-
- # Unmount boot device
- /bin/umount ${cdmount}
- fi
-
- msg_ ":: End of live system set-up"
-
- # Now some tweaks to alter 'init' actions from non-larch hooks, etc.
- # Override rootdelay from usb hook
- if [ "x${larchdelay}" = "x" ]; then
- # To avoid spurious udevd pid numbers
- export rootdelay=1
- else
- # Allow adjustment via boot option
- export rootdelay=${larchdelay}
- fi
- # root must be set to something or other, even though larch doesn't
- # need it ...
- export root="/dev/loop0"
-}
-
-#######
-# The actual root switch occurs later, when 'init' execs 'kinit'.
-# I handle this by overwriting the 'kinit' binary with my own script.
-# This will unmount dev, sys and proc and then exec run-init.
-#######