diff --git a/packages/audio/alsa-utils/init.d/40_alsa b/packages/audio/alsa-utils/init.d/40_alsa index 7408a4c485..afe306fad9 100755 --- a/packages/audio/alsa-utils/init.d/40_alsa +++ b/packages/audio/alsa-utils/init.d/40_alsa @@ -2,7 +2,7 @@ # # setup alsa (especially the mixer config) # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure echo "### Setting up sound card ###" diff --git a/packages/devel/dbus/init.d/15_dbus b/packages/devel/dbus/init.d/15_dbus index c3990da8dc..f5c40beabc 100755 --- a/packages/devel/dbus/init.d/15_dbus +++ b/packages/devel/dbus/init.d/15_dbus @@ -2,7 +2,7 @@ # # start D-BUS daemon # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure if test -f /usr/bin/dbus-daemon; then echo "### Starting D-BUS ###" diff --git a/packages/linux/init.d/01_date b/packages/linux/init.d/01_date index 5ff5808bf5..141fc692db 100644 --- a/packages/linux/init.d/01_date +++ b/packages/linux/init.d/01_date @@ -2,6 +2,6 @@ # # store boot time # -# runlevels: geexbox, debug +# runlevels: openelec, debug /bin/date > /tmp/bootdate diff --git a/packages/linux/init.d/20_modules b/packages/linux/init.d/20_modules index cd428bdece..6c7986fdd2 100755 --- a/packages/linux/init.d/20_modules +++ b/packages/linux/init.d/20_modules @@ -2,7 +2,7 @@ # # load modules # -# runlevels: geexbox, debug, install, configure +# runlevels: openelec, debug, configure echo "### Loading kernel modules ###" diff --git a/packages/network/avahi/init.d/43_avahi b/packages/network/avahi/init.d/43_avahi index 07bd078326..4a4a8699a4 100755 --- a/packages/network/avahi/init.d/43_avahi +++ b/packages/network/avahi/init.d/43_avahi @@ -2,7 +2,7 @@ # # start Avahi Daemon # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure if test -f /usr/sbin/avahi-daemon; then diff --git a/packages/network/bluez/init.d/22_bluetooth b/packages/network/bluez/init.d/22_bluetooth index e910a1dc69..0201794074 100755 --- a/packages/network/bluez/init.d/22_bluetooth +++ b/packages/network/bluez/init.d/22_bluetooth @@ -2,7 +2,7 @@ # # setup bluetooth daemons # -# runlevels: geexbox, debug +# runlevels: openelec, debug echo "### Starting Bluetooth support ###" diff --git a/packages/network/connman/init.d/42_connman b/packages/network/connman/init.d/42_connman index 90edfdd738..20fc088b1d 100755 --- a/packages/network/connman/init.d/42_connman +++ b/packages/network/connman/init.d/42_connman @@ -2,7 +2,7 @@ # # start Connection Manager # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure if test -f /usr/sbin/connmand; then echo "### Starting Connection Manager ###" diff --git a/packages/python/multimedia/elisa/init.d/71_elisa b/packages/python/multimedia/elisa/init.d/71_elisa index 426acd4081..7ea53f7abb 100755 --- a/packages/python/multimedia/elisa/init.d/71_elisa +++ b/packages/python/multimedia/elisa/init.d/71_elisa @@ -2,7 +2,7 @@ # # start elisa # -# runlevels: geexbox, debug, configure +# runlevels: openelec . /etc/sysconfig diff --git a/packages/sysutils/automountd/init.d/21_automountd b/packages/sysutils/automountd/init.d/21_automountd index bda11186b5..e9502ec281 100755 --- a/packages/sysutils/automountd/init.d/21_automountd +++ b/packages/sysutils/automountd/init.d/21_automountd @@ -2,7 +2,7 @@ # # start D-BUS/HAL automounter daemon # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure if test -f /usr/bin/automountd; then diff --git a/packages/sysutils/busybox/init.d/13_syslogd b/packages/sysutils/busybox/init.d/13_syslogd index 56ca20b144..ebcd958add 100755 --- a/packages/sysutils/busybox/init.d/13_syslogd +++ b/packages/sysutils/busybox/init.d/13_syslogd @@ -2,7 +2,7 @@ # # start cron daemon # -# runlevels: geexbox, debug +# runlevels: openelec, debug echo "### Starting Syslog daemon ###" diff --git a/packages/sysutils/busybox/init.d/52_telnet b/packages/sysutils/busybox/init.d/52_telnet index 401e812de0..5580977aa9 100755 --- a/packages/sysutils/busybox/init.d/52_telnet +++ b/packages/sysutils/busybox/init.d/52_telnet @@ -2,7 +2,7 @@ # # start telnet daemon # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure # get options test -f /etc/network || exit 1 diff --git a/packages/sysutils/busybox/init.d/53_httpd b/packages/sysutils/busybox/init.d/53_httpd index c898f36c3f..b4f0303837 100755 --- a/packages/sysutils/busybox/init.d/53_httpd +++ b/packages/sysutils/busybox/init.d/53_httpd @@ -2,7 +2,7 @@ # # start http daemon # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure # get options test -f /etc/network || exit 1 diff --git a/packages/sysutils/busybox/init.d/54_crond b/packages/sysutils/busybox/init.d/54_crond index 606c864e93..1ce26190b0 100755 --- a/packages/sysutils/busybox/init.d/54_crond +++ b/packages/sysutils/busybox/init.d/54_crond @@ -2,7 +2,7 @@ # # start cron daemon # -# runlevels: geexbox, debug +# runlevels: openelec, debug echo "### Starting CRON daemon ###" diff --git a/packages/sysutils/busybox/scripts/init.initramfs b/packages/sysutils/busybox/scripts/init.initramfs index 8ca1f53aa2..1c0af16e08 100755 --- a/packages/sysutils/busybox/scripts/init.initramfs +++ b/packages/sysutils/busybox/scripts/init.initramfs @@ -6,6 +6,18 @@ BOOT=`/bin/busybox cat /proc/cmdline | /bin/busybox sed 's/.*boot=// ; s/ .*//'` DISK=`/bin/busybox cat /proc/cmdline | /bin/busybox sed 's/.*disk=// ; s/ .*//'` +# parse command line arguments +for arg in $(cat /proc/cmdline); do + case $arg in + debugging) + DEBUG=yes + ;; + configure) + CONFIGURE=yes + ;; + esac +done + /bin/busybox mdev -s /bin/busybox mount -t ext3 -o ro,noatime $BOOT /flash @@ -13,16 +25,25 @@ if [ -f "/flash/openelec.system" ]; then /bin/busybox mount /flash/openelec.system /sysroot + INIT=/sbin/init.system if [ $? -ne 0 ] ; then echo Could not mount system on /sysroot. Starting debugging shell.... + INIT=/sbin/nosystem /bin/busybox sh /dev/tty1 2>&1 fi fi +RUNLEVEL="openelec" +if test "$DEBUG" = yes; then + RUNLEVEL="debug" +elif test "$CONFIGURE" = yes; then + RUNLEVEL="configure" +fi + /bin/busybox mount --bind /flash /sysroot/flash /bin/busybox mount --bind /storage /sysroot/storage /bin/busybox umount /proc /bin/busybox umount /sys - exec /bin/busybox switch_root /sysroot /sbin/init.system + exec /bin/busybox switch_root /sysroot $INIT $RUNLEVEL diff --git a/packages/sysutils/hal/init.d/20_hal b/packages/sysutils/hal/init.d/20_hal index 73665f4824..860df093cd 100755 --- a/packages/sysutils/hal/init.d/20_hal +++ b/packages/sysutils/hal/init.d/20_hal @@ -2,7 +2,7 @@ # # start HAL daemon # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure if test -f /usr/sbin/hald; then diff --git a/packages/sysutils/udev/init.d/01_udev b/packages/sysutils/udev/init.d/01_udev index 7a33b81e95..8fe40ed6f3 100755 --- a/packages/sysutils/udev/init.d/01_udev +++ b/packages/sysutils/udev/init.d/01_udev @@ -2,7 +2,7 @@ # # start udev daemon # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure . /etc/sysconfig diff --git a/packages/virtual/Xorg/init.d/65_xorg b/packages/virtual/Xorg/init.d/65_xorg index 00d0c82645..b64dbe1070 100755 --- a/packages/virtual/Xorg/init.d/65_xorg +++ b/packages/virtual/Xorg/init.d/65_xorg @@ -2,7 +2,7 @@ # # configure X.Org video settings # -# runlevels: geexbox +# runlevels: openelec . /etc/sysconfig diff --git a/packages/x11-toolkits/gtk+/init.d/64_gdk-query-pixbuf-loaders b/packages/x11-toolkits/gtk+/init.d/64_gdk-query-pixbuf-loaders index 739cf92e0b..0add118005 100755 --- a/packages/x11-toolkits/gtk+/init.d/64_gdk-query-pixbuf-loaders +++ b/packages/x11-toolkits/gtk+/init.d/64_gdk-query-pixbuf-loaders @@ -2,7 +2,7 @@ # # configure GDK Pixbuf Loaders # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure . /etc/sysconfig diff --git a/packages/x11-toolkits/pango/init.d/64_pango-querymodules b/packages/x11-toolkits/pango/init.d/64_pango-querymodules index 5ddea14175..0109fae9ad 100755 --- a/packages/x11-toolkits/pango/init.d/64_pango-querymodules +++ b/packages/x11-toolkits/pango/init.d/64_pango-querymodules @@ -2,7 +2,7 @@ # # configure Pango Modules # -# runlevels: geexbox, debug, configure +# runlevels: openelec, debug, configure . /etc/sysconfig