diff --git a/packages/debug/gdb/meta b/packages/debug/gdb/meta
index fddc89422f..f19a5cf0dc 100644
--- a/packages/debug/gdb/meta
+++ b/packages/debug/gdb/meta
@@ -19,12 +19,12 @@
################################################################################
PKG_NAME="gdb"
-PKG_VERSION="7.3"
+PKG_VERSION="7.3.1"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.gnu.org/software/gdb/"
-PKG_URL="http://ftp.gnu.org/gnu/gdb/$PKG_NAME-${PKG_VERSION}a.tar.bz2"
+PKG_URL="http://ftp.gnu.org/gnu/gdb/$PKG_NAME-$PKG_VERSION.tar.bz2"
PKG_DEPENDS="ncurses expat"
PKG_BUILD_DEPENDS="toolchain ncurses expat"
PKG_PRIORITY="optional"
diff --git a/packages/debug/gdb/patches/gdb-7.3-10-uclibc_conf.patch b/packages/debug/gdb/patches/gdb-7.3.1-10-uclibc_conf.patch
similarity index 100%
rename from packages/debug/gdb/patches/gdb-7.3-10-uclibc_conf.patch
rename to packages/debug/gdb/patches/gdb-7.3.1-10-uclibc_conf.patch
diff --git a/packages/initramfs/sysutils/busybox-initramfs/scripts/init b/packages/initramfs/sysutils/busybox-initramfs/scripts/init
index 036de2928d..fe5c56b66d 100755
--- a/packages/initramfs/sysutils/busybox-initramfs/scripts/init
+++ b/packages/initramfs/sysutils/busybox-initramfs/scripts/init
@@ -210,6 +210,8 @@ NFS_OVERLAY="192.168.1.1:/var/lib/overlay"
update "Kernel" "$IMAGE_KERNEL" "/flash/$IMAGE_KERNEL"
update "System" "$IMAGE_SYSTEM" "/flash/$IMAGE_SYSTEM"
+ umount /storage
+
if test "$REBOOT" -eq "1"; then
echo "System reboots now..." && \
/bin/busybox reboot
@@ -226,10 +228,6 @@ NFS_OVERLAY="192.168.1.1:/var/lib/overlay"
# move /flash and /storage to /sysroot
/bin/busybox mount --move /flash /sysroot/flash
-
- if [ -n "$disk" ]; then
- /bin/busybox mount --move /storage /sysroot/storage
- fi
}
if [ -z "$NETBOOT" ]; then
@@ -238,7 +236,7 @@ NFS_OVERLAY="192.168.1.1:/var/lib/overlay"
mount_nbd
fi
- # unmount all other filesystems
+# unmount all other filesystems
/bin/busybox umount /dev
/bin/busybox umount /proc
/bin/busybox umount /sys
diff --git a/packages/linux/init.d/01_cpupower b/packages/linux/init.d/02_cpupower
similarity index 86%
rename from packages/linux/init.d/01_cpupower
rename to packages/linux/init.d/02_cpupower
index 314c7a8592..3a23f724de 100644
--- a/packages/linux/init.d/01_cpupower
+++ b/packages/linux/init.d/02_cpupower
@@ -23,6 +23,12 @@
#
# runlevels: openelec, textmode
-progress "set cpu's to full power"
+case $RUNLEVEL in
+ boot)
+ progress "set cpu's to full power"
+ cpupower frequency-set -g performance > /dev/null 2>&1
+ ;;
- cpupower frequency-set -g performance
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/linux/init.d/15_modules b/packages/linux/init.d/15_modules
index 72155f6e93..2a0dcdc197 100644
--- a/packages/linux/init.d/15_modules
+++ b/packages/linux/init.d/15_modules
@@ -23,13 +23,19 @@
#
# runlevels: openelec, textmode
-(
- progress "loading kernel modules"
+case $RUNLEVEL in
+ boot)
+ (
+ progress "loading kernel modules"
- IFS='
-'
- for module in `cat /etc/modules|grep "^[^#]"`; do
- eval "modprobe $module" >/dev/null 2>&1
- done
+ IFS='
+ '
+ for module in `cat /etc/modules|grep "^[^#]"`; do
+ eval "modprobe $module" >/dev/null 2>&1
+ done
+ )&
+ ;;
-)&
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/mediacenter/xbmc/init.d/91_setup-addons b/packages/mediacenter/xbmc/init.d/91_setup-addons
new file mode 100644
index 0000000000..9f22b212cd
--- /dev/null
+++ b/packages/mediacenter/xbmc/init.d/91_setup-addons
@@ -0,0 +1,44 @@
+################################################################################
+# This file is part of OpenELEC - http://www.openelec.tv
+# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
+#
+# This Program 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, or (at your option)
+# any later version.
+#
+# This Program 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 OpenELEC.tv; see the file COPYING. If not, write to
+# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+# http://www.gnu.org/copyleft/gpl.html
+################################################################################
+
+#
+# setup XBMC addons
+#
+# runlevels: openelec, textmode
+
+case $RUNLEVEL in
+ boot)
+ progress "setup XBMC addons"
+
+ # hack: add addons to $PATH
+ for i in `find /storage/.xbmc/addons/* -name bin -type d`; do
+ PATH="$PATH:$i"
+ done
+ export PATH
+
+ # hack: make addon-bins executable
+ chmod +x /storage/.xbmc/addons/*/bin/* > /dev/null 2>&1
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
+
+
diff --git a/packages/mediacenter/xbmc/init.d/92_setup-xbmc b/packages/mediacenter/xbmc/init.d/92_setup-xbmc
index 1344840f82..b7a9fcabeb 100644
--- a/packages/mediacenter/xbmc/init.d/92_setup-xbmc
+++ b/packages/mediacenter/xbmc/init.d/92_setup-xbmc
@@ -22,21 +22,23 @@
#
# runlevels: openelec
-progress "setup XBMC"
+case $RUNLEVEL in
+ boot)
+ progress "setup XBMC"
-#
-# clean temp dir
-#
- rm -rf $HOME/.xbmc/temp/*
+ #
+ # clean temp dir
+ #
+ rm -rf $HOME/.xbmc/temp/*
-#
-# add some default settings
-#
- mkdir -p $HOME/.xbmc/userdata
+ #
+ # add some default settings
+ #
+ mkdir -p $HOME/.xbmc/userdata
-# use dds fanarts by default
- if [ ! -f $HOME/.xbmc/userdata/advancedsettings.xml ] ; then
- cat > $HOME/.xbmc/userdata/advancedsettings.xml << EOF
+ # use dds fanarts by default
+ if [ ! -f $HOME/.xbmc/userdata/advancedsettings.xml ] ; then
+ cat > $HOME/.xbmc/userdata/advancedsettings.xml << EOF
true
false
@@ -47,21 +49,21 @@ progress "setup XBMC"
EOF
- fi
+ fi
-#
-# setup directories for XBMC sources
-#
+ #
+ # setup directories for XBMC sources
+ #
- [ ! -d "$HOME/music" ] && mkdir -p $HOME/music
- [ ! -d "$HOME/pictures" ] && mkdir -p $HOME/pictures
- [ ! -d "$HOME/tvshows" ] && mkdir -p $HOME/tvshows
- [ ! -d "$HOME/videos" ] && mkdir -p $HOME/videos
+ [ ! -d "$HOME/music" ] && mkdir -p $HOME/music
+ [ ! -d "$HOME/pictures" ] && mkdir -p $HOME/pictures
+ [ ! -d "$HOME/tvshows" ] && mkdir -p $HOME/tvshows
+ [ ! -d "$HOME/videos" ] && mkdir -p $HOME/videos
- mkdir -p $HOME/.xbmc/userdata
+ mkdir -p $HOME/.xbmc/userdata
- if [ ! -f $HOME/.xbmc/userdata/sources.xml ] ; then
- cat > $HOME/.xbmc/userdata/sources.xml << EOF
+ if [ ! -f $HOME/.xbmc/userdata/sources.xml ] ; then
+ cat > $HOME/.xbmc/userdata/sources.xml << EOF
EOF
- fi
+ fi
-#
-# common setup guisettings
-#
+ #
+ # common setup guisettings
+ #
- mkdir -p $HOME/.xbmc/userdata
+ mkdir -p $HOME/.xbmc/userdata
- [ ! -d "$HOME/screenshots" ] && mkdir -p $HOME/screenshots
+ [ ! -d "$HOME/screenshots" ] && mkdir -p $HOME/screenshots
- if [ ! -f $HOME/.xbmc/userdata/guisettings.xml ] ; then
- echo "" > $HOME/.xbmc/userdata/guisettings.xml
+ if [ ! -f $HOME/.xbmc/userdata/guisettings.xml ] ; then
+ echo "" > $HOME/.xbmc/userdata/guisettings.xml
- cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF
+ cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF
$HOME/screenshots/
EOF
-#
-# include project specific options
-#
+ #
+ # include project specific options
+ #
- if [ -f /usr/share/xbmc/config/guisettings.xml ]; then
- cat /usr/share/xbmc/config/guisettings.xml >> $HOME/.xbmc/userdata/guisettings.xml
- fi
+ if [ -f /usr/share/xbmc/config/guisettings.xml ]; then
+ cat /usr/share/xbmc/config/guisettings.xml >> $HOME/.xbmc/userdata/guisettings.xml
+ fi
-#
-# common setup for amd and nvidia graphic
-#
+ #
+ # common setup for amd and nvidia graphic
+ #
- # Always sync to vblank
- if [ "$GPUTYPE" = "NVIDIA" -o "$GPUTYPE" = "AMD" ] ; then
- cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF
+ # Always sync to vblank
+ if [ "$GPUTYPE" = "NVIDIA" -o "$GPUTYPE" = "AMD" ] ; then
+ cat >> $HOME/.xbmc/userdata/guisettings.xml << EOF
2
EOF
- fi
- echo "" >> $HOME/.xbmc/userdata/guisettings.xml
- fi
+ fi
+ echo "" >> $HOME/.xbmc/userdata/guisettings.xml
+ fi
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/mediacenter/xbmc/init.d/93_xbmc b/packages/mediacenter/xbmc/init.d/93_xbmc
index 49f1162175..1db77b91b2 100644
--- a/packages/mediacenter/xbmc/init.d/93_xbmc
+++ b/packages/mediacenter/xbmc/init.d/93_xbmc
@@ -22,66 +22,70 @@
#
# runlevels: openelec
-LIRCDEV="/var/run/lirc/lircd"
-[ -e /var/run/lirc/lircd.irtrans ] && LIRCDEV="/var/run/lirc/lircd.irtrans"
-XBMC_ARGS="--standalone -fs --lircdev $LIRCDEV"
+case $RUNLEVEL in
+ boot)
+ LIRCDEV="/var/run/lirc/lircd"
+ [ -e /var/run/lirc/lircd.irtrans ] && LIRCDEV="/var/run/lirc/lircd.irtrans"
+ XBMC_ARGS="--standalone -fs --lircdev $LIRCDEV"
-progress "starting XBMC"
+ progress "starting XBMC"
-# hack for Boxee Remote
-if $(cat /proc/bus/input/devices | grep Vendor=0471 | grep -q Product=20d9);then
- export SDL_MOUSE_RELATIVE=0
-fi
+ # hack for Boxee Remote
+ if $(cat /proc/bus/input/devices | grep Vendor=0471 | grep -q Product=20d9);then
+ export SDL_MOUSE_RELATIVE=0
+ fi
-# hack: make addon-bins executable
- chmod +x /storage/.xbmc/addons/*/bin/* > /dev/null 2>&1
+ # starting autostart script (will be removed later again, dont use it!!!)
+ AUTOSTART="/storage/.config/autostart.sh"
+ if [ -f $AUTOSTART ]; then
+ echo "!!! AUTOSTART script detected !!!" >> /var/log/messages
+ cat "$AUTOSTART" >> /var/log/messages
+ echo "!!! -End of autostart script- !!!" >> /var/log/messages
-# starting autostart script (will be removed later again, dont use it!!!)
- AUTOSTART="/storage/.config/autostart.sh"
- if [ -f $AUTOSTART ]; then
- echo "!!! AUTOSTART script detected !!!" >> /var/log/messages
- cat "$AUTOSTART" >> /var/log/messages
- echo "!!! -End of autostart script- !!!" >> /var/log/messages
+ sh $AUTOSTART
+ fi
- sh $AUTOSTART
- fi
+ # starting autoupdate
+ [ -f /usr/bin/autoupdate ] && /usr/bin/autoupdate &
-# starting autoupdate
- [ -f /usr/bin/autoupdate ] && /usr/bin/autoupdate &
+ # waiting for Xorg to start
+ wait_for_xorg
-# waiting for Xorg to start
- wait_for_xorg
+ # set cpu's to 'on demand'
+ ( usleep 15000000
+ progress "set cpu's to 'on demand'"
+ cpupower frequency-set -g ondemand > /dev/null 2>&1
+ )&
-# set cpu's to 'on demand'
- ( usleep 15000000
- progress "set cpu's to 'on demand'"
- cpupower frequency-set -g ondemand
- )&
+ # starting XBMC
+ while true; do
-# starting XBMC
- while true; do
+ DISPLAY=:0.0 /usr/lib/xbmc/xbmc.bin $XBMC_ARGS > /dev/null 2>&1
+ RET=$?
- DISPLAY=:0.0 /usr/lib/xbmc/xbmc.bin $XBMC_ARGS > /dev/null 2>&1
- RET=$?
+ case "$RET" in
+ 0)
+ RUNLEVEL="poweroff"
+ ;;
+ 64)
+ RUNLEVEL="poweroff"
+ ;;
+ 66)
+ RUNLEVEL="reboot"
+ ;;
+ 255)
+ echo "Abnormal Exit. Exited with code $RET"
+ echo "is Xorg running? check /var/log/Xorg.log"
+ ;;
+ *)
+ echo "Abnormal Exit. Exited with code $RET"
+ ;;
+ esac
- case "$RET" in
- 0)
- poweroff -f
- ;;
- 64)
- poweroff -f
- ;;
- 66)
- reboot
- ;;
- 255)
- echo "Abnormal Exit. Exited with code $RET"
- echo "is Xorg running? check /var/log/Xorg.log"
- ;;
- *)
- echo "Abnormal Exit. Exited with code $RET"
- ;;
- esac
+ usleep 250000
+ done
+ ;;
- usleep 250000
- done
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-011-add_xbmcvfs_module-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-011-add_xbmcvfs_module-0.2.patch
similarity index 70%
rename from packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-011-add_xbmcvfs_module-0.1.patch
rename to packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-011-add_xbmcvfs_module-0.2.patch
index d21e14f7f5..7e43df6a64 100644
--- a/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-011-add_xbmcvfs_module-0.1.patch
+++ b/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-011-add_xbmcvfs_module-0.2.patch
@@ -1,6 +1,6 @@
-diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/Makefile xbmc-Dharma-10.1-c8405db.patch/xbmc/lib/libPython/xbmcmodule/Makefile
---- xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/Makefile 2011-02-15 13:30:06.000000000 +0100
-+++ xbmc-Dharma-10.1-c8405db.patch/xbmc/lib/libPython/xbmcmodule/Makefile 2011-03-03 16:47:38.230032818 +0100
+diff -Naur xbmc-10.1-Dharma/xbmc/lib/libPython/xbmcmodule/Makefile xbmc-10.1-Dharma.patch/xbmc/lib/libPython/xbmcmodule/Makefile
+--- xbmc-10.1-Dharma/xbmc/lib/libPython/xbmcmodule/Makefile 2011-03-08 02:49:14.000000000 +0100
++++ xbmc-10.1-Dharma.patch/xbmc/lib/libPython/xbmcmodule/Makefile 2011-09-06 22:59:02.915548511 +0200
@@ -1,8 +1,9 @@
INCLUDES=-I../../../.. -I. -I../../../ -I../../../linux -I../../../../guilib -I../../../utils -I../../../cores -I../../../../lib/jsoncpp/jsoncpp/include
@@ -12,9 +12,9 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/Makefile xbmc-
include ../../../../Makefile.include
-include $(patsubst %.cpp,%.P,$(patsubst %.c,%.P,$(SRCS)))
+
-diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp xbmc-Dharma-10.1-c8405db.patch/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp
---- xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp 2011-02-15 13:30:06.000000000 +0100
-+++ xbmc-Dharma-10.1-c8405db.patch/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp 2011-03-03 16:47:38.257032286 +0100
+diff -Naur xbmc-10.1-Dharma/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp xbmc-10.1-Dharma.patch/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp
+--- xbmc-10.1-Dharma/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp 2011-03-08 02:49:14.000000000 +0100
++++ xbmc-10.1-Dharma.patch/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp 2011-09-06 22:59:02.916548524 +0200
@@ -64,6 +64,7 @@
#include "SectionLoader.h"
#include "Settings.h"
@@ -68,10 +68,10 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcmodule.cpp
{NULL, NULL, 0, NULL}
};
-diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.cpp xbmc-Dharma-10.1-c8405db.patch/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.cpp
---- xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.cpp 1970-01-01 01:00:00.000000000 +0100
-+++ xbmc-Dharma-10.1-c8405db.patch/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.cpp 2011-03-03 16:53:19.588294319 +0100
-@@ -0,0 +1,205 @@
+diff -Naur xbmc-10.1-Dharma/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.cpp xbmc-10.1-Dharma.patch/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.cpp
+--- xbmc-10.1-Dharma/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.cpp 1970-01-01 01:00:00.000000000 +0100
++++ xbmc-10.1-Dharma.patch/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.cpp 2011-09-06 23:43:28.717382455 +0200
+@@ -0,0 +1,299 @@
+/*
+ * Copyright (C) 2005-2011 Team XBMC
+ * http://www.xbmc.org
@@ -109,6 +109,7 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+#endif
+#include "../XBPythonDll.h"
+
++#include "FileSystem/Directory.h"
+#include "FileSystem/File.h"
+#include "pyutil.h"
+
@@ -130,7 +131,7 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+#ifdef __cplusplus
+extern "C" {
+#endif
-+
++
+ namespace xbmcvfs
+ {
+ /*****************************************************************
@@ -140,7 +141,7 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+ PyObject_HEAD
+ CFile* pFile;
+ } File;
-+
++
+ // copy() method
+ PyDoc_STRVAR(copy__doc__,
+ "copy(source, destination) -- copy file to destination, returns true/false.\n"
@@ -150,7 +151,7 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+ "\n"
+ "example:\n"
+ " success = xbmcvfs.copy(source, destination)\n");
-+
++
+ PyObject* vfs_copy(PyObject *self, PyObject *args)
+ {
+ PyObject *f_line;
@@ -166,14 +167,14 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+ CStdString strSource;
+ CStdString strDestnation;
+ bool bResult = true;
-+
++
+ if (!PyXBMCGetUnicodeString(strSource, f_line, 1)) return NULL;
+ if (!PyXBMCGetUnicodeString(strDestnation, d_line, 1)) return NULL;
+ Py_BEGIN_ALLOW_THREADS
+ bResult = CFile::Cache(strSource, strDestnation);
+ Py_END_ALLOW_THREADS
-+
-+ return Py_BuildValue((char*)"b", bResult);
++
++ return Py_BuildValue((char*)"b", bResult);
+ }
+ PyDoc_STRVAR(delete__doc__,
+ "delete(file)\n"
@@ -182,7 +183,7 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+ "\n"
+ "example:\n"
+ " xbmcvfs.delete(file)\n");
-+
++
+ // delete a file
+ PyObject* vfs_delete(File *self, PyObject *args, PyObject *kwds)
+ {
@@ -196,16 +197,16 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+ }
+ CStdString strSource;
+ if (!PyXBMCGetUnicodeString(strSource, f_line, 1)) return NULL;
-+
++
+ Py_BEGIN_ALLOW_THREADS
+ self->pFile->Delete(strSource);
+ Py_END_ALLOW_THREADS
-+
++
+ Py_INCREF(Py_None);
+ return Py_None;
-+
++
+ }
-+
++
+ PyDoc_STRVAR(rename__doc__,
+ "rename(file, newFileName)\n"
+ "\n"
@@ -214,7 +215,7 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+ "\n"
+ "example:\n"
+ " success = xbmcvfs.rename(file,newFileName)\n");
-+
++
+ // rename a file
+ PyObject* vfs_rename(File *self, PyObject *args, PyObject *kwds)
+ {
@@ -232,38 +233,131 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+ CStdString strDestnation;
+ if (!PyXBMCGetUnicodeString(strSource, f_line, 1)) return NULL;
+ if (!PyXBMCGetUnicodeString(strDestnation, d_line, 1)) return NULL;
-+
++
+ bool bResult;
+ Py_BEGIN_ALLOW_THREADS
+ bResult = self->pFile->Rename(strSource,strDestnation);
+ Py_END_ALLOW_THREADS
-+
++
+ return Py_BuildValue((char*)"b", bResult);
-+
-+ }
-+
-+
++
++ }
++
++ PyDoc_STRVAR(exists__doc__,
++ "exists(path)\n"
++ "\n"
++ "path : file or folder"
++ "\n"
++ "example:\n"
++ " success = xbmcvfs.exists(path)\n");
++
++ // check for a file or folder existance, mimics Pythons os.path.exists()
++ PyObject* vfs_exists(File *self, PyObject *args, PyObject *kwds)
++ {
++ PyObject *f_line;
++ if (!PyArg_ParseTuple(
++ args,
++ (char*)"O",
++ &f_line))
++ {
++ return NULL;
++ }
++ CStdString strSource;
++ if (!PyXBMCGetUnicodeString(strSource, f_line, 1)) return NULL;
++
++ bool bResult;
++
++ Py_BEGIN_ALLOW_THREADS
++ bResult = self->pFile->Exists(strSource, false);
++ Py_END_ALLOW_THREADS
++
++ return Py_BuildValue((char*)"b", bResult);
++ }
++
++ PyDoc_STRVAR(mkdir__doc__,
++ "mkdir(path) -- Create a folder.\n"
++ "\n"
++ "path : folder\n"
++ "\n"
++ "example:\n"
++ " - success = xbmcvfs.mkdir(path)\n");
++ // make a directory
++ PyObject* vfs_mkdir(File *self, PyObject *args, PyObject *kwds)
++ {
++ PyObject *f_line;
++ if (!PyArg_ParseTuple(
++ args,
++ (char*)"O",
++ &f_line))
++ {
++ return NULL;
++ }
++ CStdString strSource;
++ if (!PyXBMCGetUnicodeString(strSource, f_line, 1)) return NULL;
++
++ bool bResult;
++
++ Py_BEGIN_ALLOW_THREADS
++ bResult = CDirectory::Create(strSource);
++ Py_END_ALLOW_THREADS
++
++ return Py_BuildValue((char*)"b", bResult);
++ }
++
++ PyDoc_STRVAR(rmdir__doc__,
++ "rmdir(path) -- Remove a folder.\n"
++ "\n"
++ "path : folder\n"
++ "\n"
++ "example:\n"
++ " - success = xbmcvfs.rmdir(path)\n");
++ // remove a directory
++ PyObject* vfs_rmdir(File *self, PyObject *args, PyObject *kwds)
++ {
++ PyObject *f_line;
++ if (!PyArg_ParseTuple(
++ args,
++ (char*)"O",
++ &f_line))
++ {
++ return NULL;
++ }
++ CStdString strSource;
++ if (!PyXBMCGetUnicodeString(strSource, f_line, 1)) return NULL;
++
++ bool bResult;
++
++ Py_BEGIN_ALLOW_THREADS
++ bResult = CDirectory::Remove(strSource);
++ Py_END_ALLOW_THREADS
++
++ return Py_BuildValue((char*)"b", bResult);
++ }
++
+ // define c functions to be used in python here
+ PyMethodDef xbmcvfsMethods[] = {
+ {(char*)"copy", (PyCFunction)vfs_copy, METH_VARARGS, copy__doc__},
+ {(char*)"delete", (PyCFunction)vfs_delete, METH_VARARGS, delete__doc__},
+ {(char*)"rename", (PyCFunction)vfs_rename, METH_VARARGS, rename__doc__},
++ {(char*)"mkdir", (PyCFunction)vfs_mkdir, METH_VARARGS, mkdir__doc__},
++ {(char*)"rmdir", (PyCFunction)vfs_rmdir, METH_VARARGS, rmdir__doc__},
++ {(char*)"exists", (PyCFunction)vfs_exists, METH_VARARGS, exists__doc__},
+ {NULL, NULL, 0, NULL}
+ };
-+
++
+ /*****************************************************************
+ * end of methods and python objects
+ * initxbmc(void);
+ *****************************************************************/
-+
-+
++
++
+ PyMODINIT_FUNC
+ DeinitVFSModule()
+ {
+ // no need to Py_DECREF our objects (see InitXBMCMVFSModule()) as they were created only
+ // so that they could be added to the module, which steals a reference.
+ }
-+
++
+ PyMODINIT_FUNC
+ InitVFSModule()
+ {
@@ -271,15 +365,15 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/xbmcmodule/xbmcvfsmodule.
+ PyObject* pXbmcvfsModule;
+ pXbmcvfsModule = Py_InitModule((char*)"xbmcvfs", xbmcvfsMethods);
+ if (pXbmcvfsModule == NULL) return;
-+ }
++ }
+ }
-+
++
+#ifdef __cplusplus
+}
+#endif
-diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/XBPython.cpp xbmc-Dharma-10.1-c8405db.patch/xbmc/lib/libPython/XBPython.cpp
---- xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/XBPython.cpp 2011-02-15 13:30:09.000000000 +0100
-+++ xbmc-Dharma-10.1-c8405db.patch/xbmc/lib/libPython/XBPython.cpp 2011-03-03 16:47:38.270032028 +0100
+diff -Naur xbmc-10.1-Dharma/xbmc/lib/libPython/XBPython.cpp xbmc-10.1-Dharma.patch/xbmc/lib/libPython/XBPython.cpp
+--- xbmc-10.1-Dharma/xbmc/lib/libPython/XBPython.cpp 2011-03-08 02:49:15.000000000 +0100
++++ xbmc-10.1-Dharma.patch/xbmc/lib/libPython/XBPython.cpp 2011-09-06 22:59:02.955549037 +0200
@@ -119,6 +119,8 @@
void InitAddonModule(void);
void InitAddonTypes(void);
@@ -307,9 +401,9 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/lib/libPython/XBPython.cpp xbmc-Dharma-
}
/**
-diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/utils/FileUtils.cpp xbmc-Dharma-10.1-c8405db.patch/xbmc/utils/FileUtils.cpp
---- xbmc-Dharma-10.1-c8405db/xbmc/utils/FileUtils.cpp 2011-02-15 13:30:05.000000000 +0100
-+++ xbmc-Dharma-10.1-c8405db.patch/xbmc/utils/FileUtils.cpp 2011-03-03 16:47:38.279031851 +0100
+diff -Naur xbmc-10.1-Dharma/xbmc/utils/FileUtils.cpp xbmc-10.1-Dharma.patch/xbmc/utils/FileUtils.cpp
+--- xbmc-10.1-Dharma/xbmc/utils/FileUtils.cpp 2011-03-08 02:49:14.000000000 +0100
++++ xbmc-10.1-Dharma.patch/xbmc/utils/FileUtils.cpp 2011-09-06 22:59:02.977549326 +0200
@@ -72,3 +72,32 @@
}
return false;
@@ -343,9 +437,9 @@ diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/utils/FileUtils.cpp xbmc-Dharma-10.1-c8
+ strSize.Format("%d", fileSize); // format size
+ return true;
+}
-diff -Naur xbmc-Dharma-10.1-c8405db/xbmc/utils/FileUtils.h xbmc-Dharma-10.1-c8405db.patch/xbmc/utils/FileUtils.h
---- xbmc-Dharma-10.1-c8405db/xbmc/utils/FileUtils.h 2011-02-15 13:30:05.000000000 +0100
-+++ xbmc-Dharma-10.1-c8405db.patch/xbmc/utils/FileUtils.h 2011-03-03 16:47:38.279031851 +0100
+diff -Naur xbmc-10.1-Dharma/xbmc/utils/FileUtils.h xbmc-10.1-Dharma.patch/xbmc/utils/FileUtils.h
+--- xbmc-10.1-Dharma/xbmc/utils/FileUtils.h 2011-03-08 02:49:14.000000000 +0100
++++ xbmc-10.1-Dharma.patch/xbmc/utils/FileUtils.h 2011-09-06 22:59:03.023549930 +0200
@@ -6,4 +6,5 @@
public:
static bool DeleteItem(const CFileItemPtr &item);
diff --git a/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-041-add_tcp_socket_options_and_lock_dir_to_smb-0.1.patch b/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-041-add_tcp_socket_options_and_lock_dir_to_smb-0.1.patch
new file mode 100644
index 0000000000..0c3089cb30
--- /dev/null
+++ b/packages/mediacenter/xbmc/patches/xbmc-10.1-Dharma-041-add_tcp_socket_options_and_lock_dir_to_smb-0.1.patch
@@ -0,0 +1,12 @@
+diff -Naur xbmc-10.1-Dharma/xbmc/FileSystem/FileSmb.cpp xbmc-10.1-Dharma.patch/xbmc/FileSystem/FileSmb.cpp
+--- xbmc-10.1-Dharma/xbmc/FileSystem/FileSmb.cpp 2011-09-05 02:24:35.154994777 +0200
++++ xbmc-10.1-Dharma.patch/xbmc/FileSystem/FileSmb.cpp 2011-09-05 02:22:55.604582159 +0200
+@@ -122,6 +122,8 @@
+ // use the weaker LANMAN password hash in order to be compatible with older servers
+ fprintf(f, "\tclient lanman auth = yes\n");
+ fprintf(f, "\tlanman auth = yes\n");
++ fprintf(f, "\tsocket options = TCP_NODELAY IPTOS_LOWDELAY SO_RCVBUF=65536 SO_SNDBUF=65536\n");
++ fprintf(f, "\tlock directory = %s/.smb/\n", getenv("HOME"));
+
+ // set wins server if there's one. name resolve order defaults to 'lmhosts host wins bcast'.
+ // if no WINS server has been specified the wins method will be ignored.
diff --git a/packages/network/avahi/init.d/53_avahi b/packages/network/avahi/init.d/53_avahi
index c23073a39c..6206310e7e 100644
--- a/packages/network/avahi/init.d/53_avahi
+++ b/packages/network/avahi/init.d/53_avahi
@@ -22,11 +22,19 @@
#
# runlevels: openelec, textmode
-(
- wait_for_network
+case $RUNLEVEL in
+ boot)
+ (
+ wait_for_network
- progress "Starting Avahi Daemon"
+ progress "Starting Avahi Daemon"
+ mkdir -p /var/run/avahi-daemon
+ avahi-daemon -D
+ )&
+ ;;
- mkdir -p /var/run/avahi-daemon
- avahi-daemon -D
-)&
+ poweroff|reboot)
+ progress "Starting Avahi Daemon"
+ killall avahi-daemon
+ ;;
+esac
diff --git a/packages/network/connman/init.d/21_network b/packages/network/connman/init.d/21_network
index a678a1297f..970b26552e 100644
--- a/packages/network/connman/init.d/21_network
+++ b/packages/network/connman/init.d/21_network
@@ -22,175 +22,182 @@
#
# runlevels: openelec, installer, textmode
-if [ -f /var/config/settings.conf ]; then
- . /var/config/settings.conf
+case $RUNLEVEL in
+ boot)
+ if [ -f /var/config/settings.conf ]; then
+ . /var/config/settings.conf
-# save original interface names (eth0, eth1)
- NET_IFACE_NAME=$NET_IFACE
- NET2_IFACE_NAME=$NET2_IFACE
-fi
+ # save original interface names (eth0, eth1)
+ NET_IFACE_NAME=$NET_IFACE
+ NET2_IFACE_NAME=$NET2_IFACE
+ fi
-[ -z "$NET_HOSTNAME" ] && NET_HOSTNAME="openelec"
+ [ -z "$NET_HOSTNAME" ] && NET_HOSTNAME="openelec"
-# setup hostname
- progress "Setup hostname"
- echo "$NET_HOSTNAME" > /proc/sys/kernel/hostname
+ # setup hostname
+ progress "Setup hostname"
+ echo "$NET_HOSTNAME" > /proc/sys/kernel/hostname
-# create /etc/hosts file, useful for gethostbyname(localhost)
- progress "creating /etc/hosts"
- echo -e "127.0.0.1\tlocalhost $NET_HOSTNAME" > /etc/hosts
+ # create /etc/hosts file, useful for gethostbyname(localhost)
+ progress "creating /etc/hosts"
+ echo -e "127.0.0.1\tlocalhost $NET_HOSTNAME" > /etc/hosts
-# add user defined hosts.conf entry's
- [ -f $HOME/.config/hosts.conf ] && cat $HOME/.config/hosts.conf >> /etc/hosts
+ # add user defined hosts.conf entry's
+ [ -f $HOME/.config/hosts.conf ] && cat $HOME/.config/hosts.conf >> /etc/hosts
-(
- # setup Networking 1
- progress "setup Networking 1"
+ (
+ # setup Networking 1
+ progress "setup Networking 1"
- CONNMAN_PROFILE="/var/lib/connman/default.profile"
+ CONNMAN_PROFILE="/var/lib/connman/default.profile"
- mkdir -p /var/run/connman
- mkdir -p /var/lib/connman
+ mkdir -p /var/run/connman
+ mkdir -p /var/lib/connman
+
+ # NETWORK 1: ( LAN / WLAN )
+ for i in 0 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; do
+ if [ ! -f /sys/class/net/$NET_IFACE/address ]; then
+ logger -t Connman "### [$i] cannot find /sys/class/net/$NET_IFACE/address ###"
+ else
+ logger -t Connman "### [$i] found /sys/class/net/$NET_IFACE/address, continue ###"
+ NET_IFACE=`cat /sys/class/net/$NET_IFACE/address | sed 's/://g'`
+ break
+ fi
+ usleep 500000
+ done
+
+ if [ "$NET_NETWORK" = "WLAN" -a -n "$NET_SSID" ]; then
+ NET_SSID_HEX=`echo -n "$NET_SSID" | od -tx1 | cut -c8-| tr -d ' \n'`
+
+ # NET_SECURITY: ( NONE / WEP / WPA/WPA2 )
+ if [ "$NET_SECURITY" = "WEP" -a -n "$NET_PASSPHRASE" ]; then
+ MODE="managed_wep"
+ elif [ "$NET_SECURITY" = "WPA/WPA2" -a -n "$NET_PASSPHRASE" ]; then
+ MODE="managed_psk"
+ else
+ MODE="managed_none"
+ fi
+
+ if [ "$NET_HIDDEN" = "true" ]; then
+ echo "[wifi_${NET_IFACE}_hidden_${MODE}]" > $CONNMAN_PROFILE
+ else
+ echo "[wifi_${NET_IFACE}_${NET_SSID_HEX}_${MODE}]" > $CONNMAN_PROFILE
+ fi
+
+ echo "Name=$NET_SSID" >> $CONNMAN_PROFILE
+ echo "SSID=$NET_SSID_HEX" >> $CONNMAN_PROFILE
+ [ -n "$NET_PASSPHRASE" ] && echo "Passphrase=$NET_PASSPHRASE" >> $CONNMAN_PROFILE
+ echo "Favorite=true" >> $CONNMAN_PROFILE
+ echo "AutoConnect=true" >> $CONNMAN_PROFILE
+ else
+ MODE="cable"
+ echo "[ethernet_${NET_IFACE}_${MODE}]" > $CONNMAN_PROFILE
+ fi
+
+ # IP settings
+ if [ -z "$NET_IPADDRESS" ]; then
+ echo "IPv4.method=dhcp" >> $CONNMAN_PROFILE
+ else
+ echo "IPv4.method=manual" >> $CONNMAN_PROFILE
+ echo "IPv4.local_address=$NET_IPADDRESS" >> $CONNMAN_PROFILE
+ [ -n "$NET_PREFIXLEN" ] && echo "IPv4.netmask_prefixlen=$NET_PREFIXLEN" >> $CONNMAN_PROFILE
+ [ -n "$NET_GATEWAY" ] && echo "IPv4.gateway=$NET_GATEWAY" >> $CONNMAN_PROFILE
+ fi
+
+ [ -n "$NET_DNS1" ] && NET_NAMESERVER="$NET_DNS1"
+ [ -n "$NET_DNS2" ] && NET_NAMESERVER="$NET_NAMESERVER;$NET_DNS2"
+ [ -n "$NET_DNS3" ] && NET_NAMESERVER="$NET_NAMESERVER;$NET_DNS3"
+ [ -n "$NET_NAMESERVER" ] && echo "Nameservers=$NET_NAMESERVER;" >> $CONNMAN_PROFILE
+
+ # END OF NETWORK 1
+
+ # NETWORK 2: ( LAN / WLAN )
+ if [ -n "$NET2_NETWORK" -a "$NET2_NETWORK" != "NONE" -a "$NET2_IFACE_NAME" != "$NET_IFACE_NAME" ]; then
+ # setup Networking 2
+ progress "setup Networking 2"
+
+ for i in 0 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; do
+ if [ ! -f /sys/class/net/$NET2_IFACE/address ]; then
+ logger -t Connman "### [$i] cannot find /sys/class/net/$NET2_IFACE/address ###"
+ else
+ logger -t Connman "### [$i] found /sys/class/net/$NET2_IFACE/address, continue ###"
+ NET2_IFACE=`cat /sys/class/net/$NET2_IFACE/address | sed 's/://g'`
+ break
+ fi
+ usleep 500000
+ done
+
+ if [ "$NET2_NETWORK" = "WLAN" -a -n "$NET2_SSID" ]; then
+ NET2_SSID_HEX=`echo -n "$NET2_SSID" | od -tx1 | cut -c8-| tr -d ' \n'`
+
+ # NET_SECURITY: ( NONE / WEP / WPA/WPA2 )
+ if [ "$NET2_SECURITY" = "WEP" -a -n "$NET2_PASSPHRASE" ]; then
+ MODE="managed_wep"
+ elif [ "$NET2_SECURITY" = "WPA/WPA2" -a -n "$NET2_PASSPHRASE" ]; then
+ MODE="managed_psk"
+ else
+ MODE="managed_none"
+ fi
+
+ if [ "$NET2_HIDDEN" = "true" ]; then
+ echo "[wifi_${NET2_IFACE}_hidden_${MODE}]" >> $CONNMAN_PROFILE
+ else
+ echo "[wifi_${NET2_IFACE}_${NET2_SSID_HEX}_${MODE}]" >> $CONNMAN_PROFILE
+ fi
+
+ echo "Name=$NET2_SSID" >> $CONNMAN_PROFILE
+ echo "SSID=$NET2_SSID_HEX" >> $CONNMAN_PROFILE
+ [ -n "$NET2_PASSPHRASE" ] && echo "Passphrase=$NET2_PASSPHRASE" >> $CONNMAN_PROFILE
+ echo "Favorite=true" >> $CONNMAN_PROFILE
+ echo "AutoConnect=true" >> $CONNMAN_PROFILE
+ else
+ MODE="cable"
+ echo "[ethernet_${NET2_IFACE}_${MODE}]" >> $CONNMAN_PROFILE
+ fi
+
+ # IP settings
+ if [ -z "$NET2_IPADDRESS" ]; then
+ echo "IPv4.method=dhcp" >> $CONNMAN_PROFILE
+ else
+ echo "IPv4.method=manual" >> $CONNMAN_PROFILE
+ echo "IPv4.local_address=$NET2_IPADDRESS" >> $CONNMAN_PROFILE
+ [ -n "$NET2_PREFIXLEN" ] && echo "IPv4.netmask_prefixlen=$NET2_PREFIXLEN" >> $CONNMAN_PROFILE
+ [ -n "$NET2_GATEWAY" ] && echo "IPv4.gateway=$NET2_GATEWAY" >> $CONNMAN_PROFILE
+ fi
+
+ [ -n "$NET2_DNS1" ] && NET2_NAMESERVER="$NET2_DNS1"
+ [ -n "$NET2_DNS2" ] && NET2_NAMESERVER="$NET2_NAMESERVER;$NET2_DNS2"
+ [ -n "$NET2_DNS3" ] && NET2_NAMESERVER="$NET2_NAMESERVER;$NET2_DNS3"
+ [ -n "$NET2_NAMESERVER" ] && echo "Nameservers=$NET2_NAMESERVER;" >> $CONNMAN_PROFILE
+
+ (
+ # wait some time, put eth1 (NET2_IFACE) down and then up
+ # this is just temporary solution until I figure out how to
+ # do properly with connman
+ usleep 5000000
+ ifconfig $NET2_IFACE_NAME down
+ usleep 1000000
+ ifconfig $NET2_IFACE_NAME up
+ )&
- # NETWORK 1: ( LAN / WLAN )
- for i in 0 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; do
- if [ ! -f /sys/class/net/$NET_IFACE/address ]; then
- logger -t Connman "### [$i] cannot find /sys/class/net/$NET_IFACE/address ###"
- else
- logger -t Connman "### [$i] found /sys/class/net/$NET_IFACE/address, continue ###"
- NET_IFACE=`cat /sys/class/net/$NET_IFACE/address | sed 's/://g'`
- break
fi
- usleep 500000
- done
+ # END OF NETWORK 2
- if [ "$NET_NETWORK" = "WLAN" -a -n "$NET_SSID" ]; then
- NET_SSID_HEX=`echo -n "$NET_SSID" | od -tx1 | cut -c8-| tr -d ' \n'`
+ # overwrite created profile with custom one if exist (debug use only)
+ DEBUG_CONNMAN_PROFILE="/storage/.config/connman.profile"
+ [ -f "$DEBUG_CONNMAN_PROFILE" ] && cp $DEBUG_CONNMAN_PROFILE $CONNMAN_PROFILE
+ [ -f "$DEBUG_CONNMAN_PROFILE" ] && mv $DEBUG_CONNMAN_PROFILE ${DEBUG_CONNMAN_PROFILE}_saved
- # NET_SECURITY: ( NONE / WEP / WPA/WPA2 )
- if [ "$NET_SECURITY" = "WEP" -a -n "$NET_PASSPHRASE" ]; then
- MODE="managed_wep"
- elif [ "$NET_SECURITY" = "WPA/WPA2" -a -n "$NET_PASSPHRASE" ]; then
- MODE="managed_psk"
- else
- MODE="managed_none"
- fi
+ # starting Connection manager
+ progress "starting Connection manager"
- if [ "$NET_HIDDEN" = "true" ]; then
- echo "[wifi_${NET_IFACE}_hidden_${MODE}]" > $CONNMAN_PROFILE
- else
- echo "[wifi_${NET_IFACE}_${NET_SSID_HEX}_${MODE}]" > $CONNMAN_PROFILE
- fi
+ while true; do
+ /usr/sbin/connmand -n > /dev/null 2>&1
+ usleep 250000
+ done
+ )&
+ ;;
- echo "Name=$NET_SSID" >> $CONNMAN_PROFILE
- echo "SSID=$NET_SSID_HEX" >> $CONNMAN_PROFILE
- [ -n "$NET_PASSPHRASE" ] && echo "Passphrase=$NET_PASSPHRASE" >> $CONNMAN_PROFILE
- echo "Favorite=true" >> $CONNMAN_PROFILE
- echo "AutoConnect=true" >> $CONNMAN_PROFILE
- else
- MODE="cable"
- echo "[ethernet_${NET_IFACE}_${MODE}]" > $CONNMAN_PROFILE
- fi
-
- # IP settings
- if [ -z "$NET_IPADDRESS" ]; then
- echo "IPv4.method=dhcp" >> $CONNMAN_PROFILE
- else
- echo "IPv4.method=manual" >> $CONNMAN_PROFILE
- echo "IPv4.local_address=$NET_IPADDRESS" >> $CONNMAN_PROFILE
- [ -n "$NET_PREFIXLEN" ] && echo "IPv4.netmask_prefixlen=$NET_PREFIXLEN" >> $CONNMAN_PROFILE
- [ -n "$NET_GATEWAY" ] && echo "IPv4.gateway=$NET_GATEWAY" >> $CONNMAN_PROFILE
- fi
-
- [ -n "$NET_DNS1" ] && NET_NAMESERVER="$NET_DNS1"
- [ -n "$NET_DNS2" ] && NET_NAMESERVER="$NET_NAMESERVER;$NET_DNS2"
- [ -n "$NET_DNS3" ] && NET_NAMESERVER="$NET_NAMESERVER;$NET_DNS3"
- [ -n "$NET_NAMESERVER" ] && echo "Nameservers=$NET_NAMESERVER;" >> $CONNMAN_PROFILE
-
- # END OF NETWORK 1
-
- # NETWORK 2: ( LAN / WLAN )
- if [ -n "$NET2_NETWORK" -a "$NET2_NETWORK" != "NONE" -a "$NET2_IFACE_NAME" != "$NET_IFACE_NAME" ]; then
- # setup Networking 2
- progress "setup Networking 2"
-
- for i in 0 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; do
- if [ ! -f /sys/class/net/$NET2_IFACE/address ]; then
- logger -t Connman "### [$i] cannot find /sys/class/net/$NET2_IFACE/address ###"
- else
- logger -t Connman "### [$i] found /sys/class/net/$NET2_IFACE/address, continue ###"
- NET2_IFACE=`cat /sys/class/net/$NET2_IFACE/address | sed 's/://g'`
- break
- fi
- usleep 500000
- done
-
- if [ "$NET2_NETWORK" = "WLAN" -a -n "$NET2_SSID" ]; then
- NET2_SSID_HEX=`echo -n "$NET2_SSID" | od -tx1 | cut -c8-| tr -d ' \n'`
-
- # NET_SECURITY: ( NONE / WEP / WPA/WPA2 )
- if [ "$NET2_SECURITY" = "WEP" -a -n "$NET2_PASSPHRASE" ]; then
- MODE="managed_wep"
- elif [ "$NET2_SECURITY" = "WPA/WPA2" -a -n "$NET2_PASSPHRASE" ]; then
- MODE="managed_psk"
- else
- MODE="managed_none"
- fi
-
- if [ "$NET2_HIDDEN" = "true" ]; then
- echo "[wifi_${NET2_IFACE}_hidden_${MODE}]" >> $CONNMAN_PROFILE
- else
- echo "[wifi_${NET2_IFACE}_${NET2_SSID_HEX}_${MODE}]" >> $CONNMAN_PROFILE
- fi
-
- echo "Name=$NET2_SSID" >> $CONNMAN_PROFILE
- echo "SSID=$NET2_SSID_HEX" >> $CONNMAN_PROFILE
- [ -n "$NET2_PASSPHRASE" ] && echo "Passphrase=$NET2_PASSPHRASE" >> $CONNMAN_PROFILE
- echo "Favorite=true" >> $CONNMAN_PROFILE
- echo "AutoConnect=true" >> $CONNMAN_PROFILE
- else
- MODE="cable"
- echo "[ethernet_${NET2_IFACE}_${MODE}]" >> $CONNMAN_PROFILE
- fi
-
- # IP settings
- if [ -z "$NET2_IPADDRESS" ]; then
- echo "IPv4.method=dhcp" >> $CONNMAN_PROFILE
- else
- echo "IPv4.method=manual" >> $CONNMAN_PROFILE
- echo "IPv4.local_address=$NET2_IPADDRESS" >> $CONNMAN_PROFILE
- [ -n "$NET2_PREFIXLEN" ] && echo "IPv4.netmask_prefixlen=$NET2_PREFIXLEN" >> $CONNMAN_PROFILE
- [ -n "$NET2_GATEWAY" ] && echo "IPv4.gateway=$NET2_GATEWAY" >> $CONNMAN_PROFILE
- fi
-
- [ -n "$NET2_DNS1" ] && NET2_NAMESERVER="$NET2_DNS1"
- [ -n "$NET2_DNS2" ] && NET2_NAMESERVER="$NET2_NAMESERVER;$NET2_DNS2"
- [ -n "$NET2_DNS3" ] && NET2_NAMESERVER="$NET2_NAMESERVER;$NET2_DNS3"
- [ -n "$NET2_NAMESERVER" ] && echo "Nameservers=$NET2_NAMESERVER;" >> $CONNMAN_PROFILE
-
-(
- # wait some time, put eth1 (NET2_IFACE) down and then up
- # this is just temporary solution until I figure out how to
- # do properly with connman
- usleep 5000000
- ifconfig $NET2_IFACE_NAME down
- usleep 1000000
- ifconfig $NET2_IFACE_NAME up
-)&
-
- fi
- # END OF NETWORK 2
-
- # overwrite created profile with custom one if exist (debug use only)
- DEBUG_CONNMAN_PROFILE="/storage/.config/connman.profile"
- [ -f "$DEBUG_CONNMAN_PROFILE" ] && cp $DEBUG_CONNMAN_PROFILE $CONNMAN_PROFILE
- [ -f "$DEBUG_CONNMAN_PROFILE" ] && mv $DEBUG_CONNMAN_PROFILE ${DEBUG_CONNMAN_PROFILE}_saved
-
- # starting Connection manager
- progress "starting Connection manager"
-
- while true; do
- /usr/sbin/connmand -n > /dev/null 2>&1
- usleep 250000
- done
-)&
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/network/netmount/init.d/59_netmount b/packages/network/netmount/init.d/59_netmount
index a11b1a50bf..b054d468d8 100644
--- a/packages/network/netmount/init.d/59_netmount
+++ b/packages/network/netmount/init.d/59_netmount
@@ -22,9 +22,16 @@
#
# runlevels: openelec, textmode
-(
- wait_for_network
+case $RUNLEVEL in
+ boot)
+ (
+ wait_for_network
- progress "mounting Network shares"
- netmount > /dev/null 2>&1
-)&
+ progress "mounting Network shares"
+ netmount > /dev/null 2>&1
+ )&
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/network/openssh/build b/packages/network/openssh/build
index 62b0c5cc8a..f986231254 100755
--- a/packages/network/openssh/build
+++ b/packages/network/openssh/build
@@ -26,7 +26,7 @@ export LD="$TARGET_CC"
export LDFLAGS="$TARGET_CFLAGS $TARGET_LDFLAGS"
cd $PKG_BUILD
-ac_cv_have_space_for_dirent_d_name=yes \
+#ac_cv_have_space_for_dirent_d_name=yes \
./configure --host=$TARGET_NAME \
--build=$HOST_NAME \
--prefix=/usr \
diff --git a/packages/network/openssh/init.d/51_sshd b/packages/network/openssh/init.d/51_sshd
index f97a02e92e..237e6fff87 100644
--- a/packages/network/openssh/init.d/51_sshd
+++ b/packages/network/openssh/init.d/51_sshd
@@ -22,55 +22,63 @@
#
# runlevels: openelec, textmode
-(
- RSA1_KEY="/storage/.cache/ssh/ssh_host_key"
- RSA2_KEY="/storage/.cache/ssh/ssh_host_rsa_key"
- DSA2_KEY="/storage/.cache/ssh/ssh_host_dsa_key"
+ RSA1_KEY="/storage/.cache/ssh/ssh_host_key"
+ RSA2_KEY="/storage/.cache/ssh/ssh_host_rsa_key"
+ DSA2_KEY="/storage/.cache/ssh/ssh_host_dsa_key"
- KEYGEN="/usr/bin/ssh-keygen"
- SSHD="/usr/sbin/sshd"
+ KEYGEN="/usr/bin/ssh-keygen"
+ SSHD="/usr/sbin/sshd"
- # Check for the SSH1 RSA key
- if [ ! -f $RSA1_KEY ] ; then
- progress "SSH: generating SSH1 RSA key"
+case $RUNLEVEL in
+ boot)
+ (
+ # Check for the SSH1 RSA key
+ if [ ! -f $RSA1_KEY ] ; then
+ progress "SSH: generating SSH1 RSA key"
- mkdir -p /storage/.cache/ssh
- $KEYGEN -q -t rsa1 -f $RSA1_KEY -C '' -N '' >&/dev/null
- chmod 600 $RSA1_KEY
- fi
+ mkdir -p /storage/.cache/ssh
+ $KEYGEN -q -t rsa1 -f $RSA1_KEY -C '' -N '' >&/dev/null
+ chmod 600 $RSA1_KEY
+ fi
- # Check for the SSH2 RSA key
- if [ ! -f $RSA2_KEY ] ; then
- progress "SSH: generating SSH2 RSA key"
+ # Check for the SSH2 RSA key
+ if [ ! -f $RSA2_KEY ] ; then
+ progress "SSH: generating SSH2 RSA key"
- mkdir -p /storage/.cache/ssh
- $KEYGEN -q -t rsa -f $RSA2_KEY -C '' -N '' >&/dev/null
- chmod 600 $RSA2_KEY
- fi
+ mkdir -p /storage/.cache/ssh
+ $KEYGEN -q -t rsa -f $RSA2_KEY -C '' -N '' >&/dev/null
+ chmod 600 $RSA2_KEY
+ fi
- # Check for the SSH2 DSA key
- if [ ! -f $DSA2_KEY ] ; then
- progress "SSH: generating SSH2 DSA key"
+ # Check for the SSH2 DSA key
+ if [ ! -f $DSA2_KEY ] ; then
+ progress "SSH: generating SSH2 DSA key"
- mkdir -p /storage/.cache/ssh
- $KEYGEN -q -t dsa -f $DSA2_KEY -C '' -N '' >&/dev/null
- chmod 600 $DSA2_KEY
- fi
+ mkdir -p /storage/.cache/ssh
+ $KEYGEN -q -t dsa -f $DSA2_KEY -C '' -N '' >&/dev/null
+ chmod 600 $DSA2_KEY
+ fi
- # Check for predifined known hosts file
- if [ -f /etc/ssh/known_hosts -a ! -f $HOME/.ssh/known_hosts ] ; then
- progress "SSH: setup predifined known hosts"
+ # Check for predifined known hosts file
+ if [ -f /etc/ssh/known_hosts -a ! -f $HOME/.ssh/known_hosts ] ; then
+ progress "SSH: setup predifined known hosts"
- mkdir -p /$HOME/.ssh
- cp /etc/ssh/known_hosts $HOME/.ssh
- fi
+ mkdir -p /$HOME/.ssh
+ cp /etc/ssh/known_hosts $HOME/.ssh
+ fi
- progress "Starting SSH Server"
+ progress "Starting SSH Server"
- wait_for_network
+ wait_for_network
- mkdir -p /var/empty
- chmod -R 600 /var/empty
- $SSHD
+ mkdir -p /var/empty
+ chmod -R 600 /var/empty
+ $SSHD
+ )&
+ ;;
-)&
+ poweroff|reboot)
+ progress "Stopping SSH Server"
+ killall sshd
+ ;;
+esac
diff --git a/packages/network/openssh/meta b/packages/network/openssh/meta
index e9abd1b200..941f4db942 100644
--- a/packages/network/openssh/meta
+++ b/packages/network/openssh/meta
@@ -19,7 +19,7 @@
################################################################################
PKG_NAME="openssh"
-PKG_VERSION="5.8p2"
+PKG_VERSION="5.9p1"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="OSS"
diff --git a/packages/network/openssh/patches/openssh-5.8p2-000-crosscompiling.patch b/packages/network/openssh/patches/openssh-5.8p2-000-crosscompiling.patch
deleted file mode 100644
index 95cc6c85cc..0000000000
--- a/packages/network/openssh/patches/openssh-5.8p2-000-crosscompiling.patch
+++ /dev/null
@@ -1,53 +0,0 @@
-diff -Naur openssh-5.8p1-old/configure.ac openssh-5.8p1-new/configure.ac
---- openssh-5.8p1-old/configure.ac 2011-02-21 17:41:23.000000000 -0800
-+++ openssh-5.8p1-new/configure.ac 2011-02-21 17:42:20.000000000 -0800
-@@ -41,7 +41,7 @@
- AC_PROG_RANLIB
- AC_PROG_INSTALL
- AC_PROG_EGREP
--AC_PATH_PROG(AR, ar)
-+AC_PATH_TOOL(AR, ar)
- AC_PATH_PROG(CAT, cat)
- AC_PATH_PROG(KILL, kill)
- AC_PATH_PROGS(PERL, perl5 perl)
-@@ -1188,25 +1188,25 @@
-
- AC_CHECK_DECLS(GLOB_NOMATCH, , , [#include ])
-
--AC_MSG_CHECKING([whether struct dirent allocates space for d_name])
--AC_RUN_IFELSE(
-- [AC_LANG_SOURCE([[
-+AC_CACHE_CHECK(
-+ [whether struct dirent allocates space for d_name],
-+ [ac_cv_have_space_for_dirent_d_name],
-+ [AC_RUN_IFELSE(
-+ [AC_LANG_SOURCE([[
- #include
- #include
- int main(void){struct dirent d;exit(sizeof(d.d_name)<=sizeof(char));}
-- ]])],
-- [AC_MSG_RESULT(yes)],
-- [
-- AC_MSG_RESULT(no)
-- AC_DEFINE(BROKEN_ONE_BYTE_DIRENT_D_NAME, 1,
-- [Define if your struct dirent expects you to
-- allocate extra space for d_name])
-- ],
-- [
-- AC_MSG_WARN([cross compiling: assuming BROKEN_ONE_BYTE_DIRENT_D_NAME])
-- AC_DEFINE(BROKEN_ONE_BYTE_DIRENT_D_NAME)
-- ]
-+ ]])],
-+ [ ac_cv_have_space_for_dirent_d_name="yes" ],
-+ [ ac_cv_have_space_for_dirent_d_name="no" ],
-+ [ ac_cv_have_space_for_dirent_d_name="no" ]
-+ )]
- )
-+if test "x$ac_cv_have_space_for_dirent_d_name" = "xno" ; then
-+ AC_DEFINE(BROKEN_ONE_BYTE_DIRENT_D_NAME, 1,
-+ [Define if your struct dirent expects you to
-+ allocate extra space for d_name])
-+fi
-
- AC_MSG_CHECKING([for /proc/pid/fd directory])
- if test -d "/proc/$$/fd" ; then
diff --git a/packages/network/openssh/patches/openssh-5.8p2-001-abstract_socket.patch b/packages/network/openssh/patches/openssh-5.8p2-001-abstract_socket.patch
deleted file mode 100644
index 934cd1c343..0000000000
--- a/packages/network/openssh/patches/openssh-5.8p2-001-abstract_socket.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-diff -Naur openssh-5.8p1-old/channels.c openssh-5.8p1-new/channels.c
---- openssh-5.8p1-old/channels.c 2010-11-30 17:02:35.000000000 -0800
-+++ openssh-5.8p1-new/channels.c 2011-02-21 17:41:34.000000000 -0800
-@@ -61,6 +61,7 @@
- #include
- #include
- #include
-+#include
-
- #include "openbsd-compat/sys-queue.h"
- #include "xmalloc.h"
-@@ -3353,6 +3354,8 @@
- {
- int sock;
- struct sockaddr_un addr;
-+ int abstract = 0;
-+ int addrsize = 0;
-
- sock = socket(AF_UNIX, SOCK_STREAM, 0);
- if (sock < 0)
-@@ -3360,8 +3363,15 @@
- memset(&addr, 0, sizeof(addr));
- addr.sun_family = AF_UNIX;
- strlcpy(addr.sun_path, pathname, sizeof addr.sun_path);
-- if (connect(sock, (struct sockaddr *)&addr, sizeof(addr)) == 0)
-+ addrsize = offsetof(struct sockaddr_un, sun_path) + strlen(addr.sun_path);
-+ if (addr.sun_path[0] = '@')
-+ abstract = 1;
-+ if (abstract)
-+ addr.sun_path[0] = '\0';
-+ if (connect(sock, (struct sockaddr *)&addr, addrsize) == 0)
- return sock;
-+ if (abstract)
-+ addr.sun_path[0] = '@';
- close(sock);
- error("connect %.100s: %.100s", addr.sun_path, strerror(errno));
- return -1;
-diff -Naur openssh-5.8p1-old/defines.h openssh-5.8p1-new/defines.h
---- openssh-5.8p1-old/defines.h 2011-01-17 02:15:31.000000000 -0800
-+++ openssh-5.8p1-new/defines.h 2011-02-21 17:41:34.000000000 -0800
-@@ -411,7 +411,7 @@
- # ifdef __hpux
- # define X_UNIX_PATH "/var/spool/sockets/X11/%u"
- # else
--# define X_UNIX_PATH "/tmp/.X11-unix/X%u"
-+# define X_UNIX_PATH "@/tmp/.X11-unix/X%u"
- # endif
- #endif /* X_UNIX_PATH */
- #define _PATH_UNIX_X X_UNIX_PATH
diff --git a/packages/network/samba/scripts/52_samba b/packages/network/samba/scripts/52_samba
index 62ea24a57f..897b261b68 100644
--- a/packages/network/samba/scripts/52_samba
+++ b/packages/network/samba/scripts/52_samba
@@ -22,28 +22,38 @@
#
# runlevels: openelec, textmode
-(
- if [ -f /var/config/settings.conf ]; then
- . /var/config/settings.conf
+SMB_USERCONF="/storage/.config/samba.conf"
+SMB_DEFCONF="/etc/samba/smb.conf"
- if [ "$SAMBA_START" = "true" ]; then
+case $RUNLEVEL in
+ boot)
+ (
+ if [ -f /var/config/settings.conf ]; then
+ . /var/config/settings.conf
- wait_for_network
+ if [ "$SAMBA_START" = "true" ]; then
- progress "Starting Samba server"
+ wait_for_network
- SMB_USERCONF="/storage/.config/samba.conf"
- SMB_DEFCONF="/etc/samba/smb.conf"
+ progress "Starting Samba server"
- if [ -f $SMB_USERCONF ]; then
- SMB_ARG="--configfile=$SMB_USERCONF"
- else
- SMB_ARG="--configfile=$SMB_DEFCONF"
+ if [ -f $SMB_USERCONF ]; then
+ SMB_ARG="--configfile=$SMB_USERCONF"
+ else
+ SMB_ARG="--configfile=$SMB_DEFCONF"
+ fi
+
+ mkdir -p /var/log/samba
+ smbd --daemon $SMB_ARG > /dev/null 2>&1
+ nmbd --daemon $SMB_ARG > /dev/null 2>&1
+ fi
fi
+ )&
+ ;;
- mkdir -p /var/log/samba
- smbd --daemon $SMB_ARG > /dev/null 2>&1
- nmbd --daemon $SMB_ARG > /dev/null 2>&1
- fi
- fi
-)&
+ poweroff|reboot)
+ progress "Stopping Samba server"
+ killall nmbd
+ killall smbd
+ ;;
+esac
diff --git a/packages/sysutils/ConsoleKit/init.d/34_ConsoleKit b/packages/sysutils/ConsoleKit/init.d/34_ConsoleKit
index 40f3efa16f..28e887cdac 100644
--- a/packages/sysutils/ConsoleKit/init.d/34_ConsoleKit
+++ b/packages/sysutils/ConsoleKit/init.d/34_ConsoleKit
@@ -22,8 +22,14 @@
#
# runlevels: openelec, textmode
-progress "starting ConsoleKit daemon"
+case $RUNLEVEL in
+ boot)
+ progress "starting ConsoleKit daemon"
- install -m 755 -d /var/log/ConsoleKit
- install -m 755 -d /var/run/ConsoleKit
+ install -m 755 -d /var/log/ConsoleKit
+ install -m 755 -d /var/run/ConsoleKit
+ ;;
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/sysutils/ConsoleKit/scripts/ck-system-restart b/packages/sysutils/ConsoleKit/scripts/ck-system-restart
index 003c352270..160e50fac4 100755
--- a/packages/sysutils/ConsoleKit/scripts/ck-system-restart
+++ b/packages/sysutils/ConsoleKit/scripts/ck-system-restart
@@ -20,4 +20,20 @@
# http://www.gnu.org/copyleft/gpl.html
################################################################################
-reboot
+. /etc/profile
+
+ progress "Reboot the syste"
+ RET=0
+
+ RUNLEVEL="reboot"
+
+ for script in `ls -r1 /etc/init.d/*`; do
+ if grep -q -e "^# runlevels:.*$MODE" $script; then
+ . $script
+ S_RET=$?
+ test $S_RET -ge $RET && RET=$S_RET
+ fi
+ done
+
+ sync
+ reboot
diff --git a/packages/sysutils/ConsoleKit/scripts/ck-system-stop b/packages/sysutils/ConsoleKit/scripts/ck-system-stop
index a6e24e8385..29be405b0f 100755
--- a/packages/sysutils/ConsoleKit/scripts/ck-system-stop
+++ b/packages/sysutils/ConsoleKit/scripts/ck-system-stop
@@ -20,4 +20,20 @@
# http://www.gnu.org/copyleft/gpl.html
################################################################################
-poweroff
+. /etc/profile
+
+ progress "Poweroff the system"
+ RET=0
+
+ RUNLEVEL="poweroff"
+
+ for script in `ls -r1 /etc/init.d/*`; do
+ if grep -q -e "^# runlevels:.*$MODE" $script; then
+ . $script
+ S_RET=$?
+ test $S_RET -ge $RET && RET=$S_RET
+ fi
+ done
+
+ sync
+ poweroff -f
diff --git a/packages/sysutils/busybox/init.d/01_mount-filesystem b/packages/sysutils/busybox/init.d/01_mount-filesystem
index 5cf3c27d0b..bb6a18e50d 100644
--- a/packages/sysutils/busybox/init.d/01_mount-filesystem
+++ b/packages/sysutils/busybox/init.d/01_mount-filesystem
@@ -23,5 +23,31 @@
#
# runlevels: openelec, installer, textmode
-progress "mounting needed filesystems"
- mount -n -t ramfs none /var
+case $RUNLEVEL in
+ boot)
+ progress "mounting needed filesystems"
+ mount -n -t devtmpfs none /dev
+ mkdir -p /dev/pts
+ mount -n -t devpts -o gid=5,mode=620 none /dev/pts
+ mkdir -p /dev/shm
+ mount -n -t tmpfs none /dev/shm
+ mount -n -t tmpfs none /run
+ mount -n -t ramfs none /var
+ mount "$disk" /storage -o rw,noatime > /dev/null 2>&1
+ ;;
+
+ poweroff|reboot)
+ progress "unmounting filesystems"
+ for i in 1 2 3 4 5 6 7 8 9 10; do
+ echo "umount /storage"
+ ERR_ENV=1
+ umount /storage
+ [ "$?" -eq "0" ] && ERR_ENV=0 && break
+ usleep 1000000
+ done
+ if [ "$ERR_ENV" -ne "0" ]; then
+ mount -o remount,ro /storage
+ umount -l /storage
+ fi
+ ;;
+esac
diff --git a/packages/sysutils/busybox/init.d/02_make-directorys b/packages/sysutils/busybox/init.d/02_make-directorys
index f52d5c4c69..a2666de347 100644
--- a/packages/sysutils/busybox/init.d/02_make-directorys
+++ b/packages/sysutils/busybox/init.d/02_make-directorys
@@ -23,38 +23,47 @@
#
# runlevels: openelec, installer, textmode
-progress "make variable directory structure"
- mkdir -p /var/cache \
- /var/lock \
- /var/media \
- /var/run \
- /var/tmp \
- /var/run/sepermit \
- /var/run/lirc
+case $RUNLEVEL in
+ boot)
+ progress "make variable directory structure"
+ mkdir -p /var/cache \
+ /var/lock \
+ /var/media \
+ /var/run \
+ /var/tmp \
+ /var/run/sepermit \
+ /var/run/lirc
- chmod 1777 /var/run /var/tmp
+ chmod 1777 /var/run /var/tmp
- touch /var/run/utmp
- chmod 1777 /var/run/utmp
+ touch /var/run/utmp
+ chmod 1777 /var/run/utmp
- if test "$DEBUG" = "yes"; then
- mkdir -p $HOME/log
- ln -sf $HOME/log /var/log
- else
- mkdir -p /var/log
- fi
+ if test "$DEBUG" = "yes"; then
+ mkdir -p $HOME/log
+ ln -sf $HOME/log /var/log
+ else
+ mkdir -p /var/log
+ fi
- touch /var/log/wtmp
- chmod 1777 /var/log/wtmp
+ touch /var/log/wtmp
+ chmod 1777 /var/log/wtmp
+
+ # others:
+ mkdir -p /var/lib/polkit-1
+ chmod 700 /var/lib/polkit-1
+ mkdir -p /var/lib/polkit-1/localauthority/10-vendor.d
+ mkdir -p /var/lib/polkit-1/localauthority/20-org.d
+ mkdir -p /var/lib/polkit-1/localauthority/30-site.d
+ mkdir -p /var/lib/polkit-1/localauthority/50-local.d
+ mkdir -p /var/lib/polkit-1/localauthority/90-mandatory.d
+
+ mkdir -p /var/lib/udisks
+ mkdir -p /var/lib/upower
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
-# others:
- mkdir -p /var/lib/polkit-1
- chmod 700 /var/lib/polkit-1
- mkdir -p /var/lib/polkit-1/localauthority/10-vendor.d
- mkdir -p /var/lib/polkit-1/localauthority/20-org.d
- mkdir -p /var/lib/polkit-1/localauthority/30-site.d
- mkdir -p /var/lib/polkit-1/localauthority/50-local.d
- mkdir -p /var/lib/polkit-1/localauthority/90-mandatory.d
- mkdir -p /var/lib/udisks
- mkdir -p /var/lib/upower
diff --git a/packages/sysutils/busybox/init.d/03_debugshell b/packages/sysutils/busybox/init.d/03_debugshell
index 94e5da62c6..d66a742f9a 100644
--- a/packages/sysutils/busybox/init.d/03_debugshell
+++ b/packages/sysutils/busybox/init.d/03_debugshell
@@ -25,13 +25,18 @@
TTY="3"
if [ "$DEBUG" = "yes" ]; then
+ case $RUNLEVEL in
+ boot)
+ echo "###########################################"
+ echo "## it seems we are running in Debug mode ##"
+ echo "## starting debugging shell on console $TTY ##"
+ echo "## ...... switch with ctrl-alt-f$TTY ...... ##"
+ echo "###########################################"
- echo "###########################################"
- echo "## it seems we are running in Debug mode ##"
- echo "## starting debugging shell on console $TTY ##"
- echo "## ...... switch with ctrl-alt-f$TTY ...... ##"
- echo "###########################################"
-
- openvt -w -c $TTY /bin/sh &
+ openvt -w -c $TTY /bin/sh &
+ ;;
+ poweroff|reboot)
+ ;;
+ esac
fi
diff --git a/packages/sysutils/busybox/init.d/04_systemconfig b/packages/sysutils/busybox/init.d/04_systemconfig
index 7381f7bdcb..7b8c90f0a2 100644
--- a/packages/sysutils/busybox/init.d/04_systemconfig
+++ b/packages/sysutils/busybox/init.d/04_systemconfig
@@ -25,9 +25,16 @@
OPENELEC_SETTINGS="$HOME/.xbmc/userdata/addon_data/os.openelec.settings/settings.xml"
-if [ -f "$OPENELEC_SETTINGS" ]; then
- progress "creating system settings"
+case $RUNLEVEL in
+ boot)
+ if [ -f "$OPENELEC_SETTINGS" ]; then
+ progress "creating system settings"
- mkdir -p /var/config
- cat "$OPENELEC_SETTINGS" | awk -F\" '{print $2"=\""$4"\""}' | sed '/^=/d' > /var/config/settings.conf
-fi
+ mkdir -p /var/config
+ cat "$OPENELEC_SETTINGS" | awk -F\" '{print $2"=\""$4"\""}' | sed '/^=/d' > /var/config/settings.conf
+ fi
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/sysutils/busybox/init.d/04_userconfig b/packages/sysutils/busybox/init.d/04_userconfig
index a9dc70dd55..18743854fe 100644
--- a/packages/sysutils/busybox/init.d/04_userconfig
+++ b/packages/sysutils/busybox/init.d/04_userconfig
@@ -23,23 +23,30 @@
#
# runlevels: openelec, textmode
-if [ -d /usr/config ]; then
- progress "copy userconfig and samples"
+case $RUNLEVEL in
+ boot)
+ if [ -d /usr/config ]; then
+ progress "copy userconfig and samples"
- cd /usr/config
- mkdir -p /storage/.config
+ cd /usr/config
+ mkdir -p /storage/.config
- for dir in `find . -type d`; do
- mkdir -p /storage/.config/$dir
- done
+ for dir in `find . -type d`; do
+ mkdir -p /storage/.config/$dir
+ done
- for config in `find . -type f -name "*.conf"`; do
- if [ ! -f /storage/.config/$config ]; then
- cp $config /storage/.config/$config
- fi
- done
+ for config in `find . -type f -name "*.conf"`; do
+ if [ ! -f /storage/.config/$config ]; then
+ cp $config /storage/.config/$config
+ fi
+ done
- for sample in `find . -type f -name "*.sample"`; do
- cp $sample /storage/.config/$sample
- done
-fi
+ for sample in `find . -type f -name "*.sample"`; do
+ cp $sample /storage/.config/$sample
+ done
+ fi
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/sysutils/busybox/init.d/08_syslogd b/packages/sysutils/busybox/init.d/08_syslogd
index 2bb855a3e2..5b7ad390db 100644
--- a/packages/sysutils/busybox/init.d/08_syslogd
+++ b/packages/sysutils/busybox/init.d/08_syslogd
@@ -23,10 +23,22 @@
#
# runlevels: openelec, installer, textmode
-(
- progress "Starting Syslog daemon"
- syslogd
+case $RUNLEVEL in
+ boot)
+ (
+ progress "Starting Syslog daemon"
+ syslogd
- progress "Starting Kernellog daemon"
- klogd
-)&
+ progress "Starting Kernellog daemon"
+ klogd
+ )&
+ ;;
+
+ poweroff|reboot)
+ progress "Stopping Kernellog daemon"
+ killall klogd
+
+ progress "Stopping Syslog daemon"
+ killall syslogd
+ ;;
+esac
diff --git a/packages/sysutils/busybox/init.d/10_cdrom b/packages/sysutils/busybox/init.d/10_cdrom
index 545552bd24..e24ae1fcc9 100644
--- a/packages/sysutils/busybox/init.d/10_cdrom
+++ b/packages/sysutils/busybox/init.d/10_cdrom
@@ -23,5 +23,12 @@
#
# runlevels: openelec, installer, textmode
-progress "Setup some CDROM settings"
- sysctl -w dev.cdrom.lock=0 > /dev/null 2>&1 &
+case $RUNLEVEL in
+ boot)
+ progress "Setup some CDROM settings"
+ sysctl -w dev.cdrom.lock=0 > /dev/null 2>&1 &
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/sysutils/busybox/init.d/99_shell b/packages/sysutils/busybox/init.d/99_shell
index 111fe07e08..90be4cf5b8 100644
--- a/packages/sysutils/busybox/init.d/99_shell
+++ b/packages/sysutils/busybox/init.d/99_shell
@@ -24,12 +24,19 @@
TTY="1"
-echo "###########################################"
-echo "## it seems we are running in Text mode. ##"
-echo "## .... starting shell on console $TTY .... ##"
-echo "## ...... switch with ctrl-alt-f$TTY ...... ##"
-echo "###########################################"
+case $RUNLEVEL in
+ boot)
+ echo "###########################################"
+ echo "## it seems we are running in Text mode. ##"
+ echo "## .... starting shell on console $TTY .... ##"
+ echo "## ...... switch with ctrl-alt-f$TTY ...... ##"
+ echo "###########################################"
-while true; do
- openvt -w -c $TTY /bin/sh
-done
+ while true; do
+ openvt -w -c $TTY /bin/sh
+ done
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/sysutils/busybox/meta b/packages/sysutils/busybox/meta
index 1d8c6e06db..b8c795466b 100644
--- a/packages/sysutils/busybox/meta
+++ b/packages/sysutils/busybox/meta
@@ -19,13 +19,13 @@
################################################################################
PKG_NAME="busybox"
-PKG_VERSION="1.19.1"
+PKG_VERSION="1.19.2"
PKG_REV="1"
PKG_ARCH="any"
PKG_LICENSE="GPL"
PKG_SITE="http://www.busybox.net"
PKG_URL="http://busybox.net/downloads/$PKG_NAME-$PKG_VERSION.tar.bz2"
-PKG_DEPENDS="grep hdparm speedcontrol pastebinit"
+PKG_DEPENDS="kexec-tools grep hdparm speedcontrol pastebinit"
PKG_BUILD_DEPENDS="toolchain busybox-hosttools"
PKG_PRIORITY="required"
PKG_SECTION="system"
diff --git a/packages/sysutils/busybox/patches/busybox-1.19.1-match_fstype_fix.patch b/packages/sysutils/busybox/patches/busybox-1.19.1-match_fstype_fix.patch
deleted file mode 100644
index ebdadee15e..0000000000
--- a/packages/sysutils/busybox/patches/busybox-1.19.1-match_fstype_fix.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff -Naur busybox-1.19.1/libbb/match_fstype.c busybox-1.19.1.patch/libbb/match_fstype.c
---- busybox-1.19.1/libbb/match_fstype.c 2011-08-28 12:59:56.000000000 +0200
-+++ busybox-1.19.1.patch/libbb/match_fstype.c 2011-09-03 02:10:51.480283260 +0200
-@@ -10,10 +10,10 @@
- * Licensed under GPLv2 or later, see file LICENSE in this source tree.
- */
-
--#ifdef HAVE_MNTENT_H
--
- #include "libbb.h"
-
-+#ifdef HAVE_MNTENT_H
-+
- int FAST_FUNC match_fstype(const struct mntent *mt, const char *t_fstype)
- {
- int match = 1;
diff --git a/packages/sysutils/busybox/patches/busybox-1.19.1-patch.patch b/packages/sysutils/busybox/patches/busybox-1.19.1-patch.patch
deleted file mode 100644
index 853e20fa4c..0000000000
--- a/packages/sysutils/busybox/patches/busybox-1.19.1-patch.patch
+++ /dev/null
@@ -1,31 +0,0 @@
---- busybox-1.19.1/editors/patch.c
-+++ busybox-1.19.1-patch/editors/patch.c
-@@ -70,8 +70,7 @@ struct double_list {
-
- // Free all the elements of a linked list
- // Call freeit() on each element before freeing it.
--static
--void dlist_free(struct double_list *list, void (*freeit)(void *data))
-+static void dlist_free(struct double_list *list, void (*freeit)(void *data))
- {
- while (list) {
- void *pop = list;
-@@ -83,8 +82,7 @@ void dlist_free(struct double_list *list
- }
-
- // Add an entry before "list" element in (circular) doubly linked list
--static
--struct double_list *dlist_add(struct double_list **list, char *data)
-+static struct double_list *dlist_add(struct double_list **list, char *data)
- {
- struct double_list *llist;
- struct double_list *line = xmalloc(sizeof(*line));
-@@ -232,7 +230,7 @@ static int apply_one_hunk(void)
- else matcheof = 0;
- if (PATCH_DEBUG) fdprintf(2, "HUNK:%s\n", plist->data);
- }
-- matcheof = matcheof < TT.context;
-+ matcheof = !matcheof || matcheof < TT.context;
-
- if (PATCH_DEBUG) fdprintf(2,"MATCHEOF=%c\n", matcheof ? 'Y' : 'N');
-
diff --git a/packages/sysutils/busybox/patches/busybox-1.19.1-00_halt_no_init.patch b/packages/sysutils/busybox/patches/busybox-1.19.2-00_halt_no_init.patch
similarity index 100%
rename from packages/sysutils/busybox/patches/busybox-1.19.1-00_halt_no_init.patch
rename to packages/sysutils/busybox/patches/busybox-1.19.2-00_halt_no_init.patch
diff --git a/packages/sysutils/busybox/patches/busybox-1.19.1-01_check_cc.patch b/packages/sysutils/busybox/patches/busybox-1.19.2-01_check_cc.patch
similarity index 100%
rename from packages/sysutils/busybox/patches/busybox-1.19.1-01_check_cc.patch
rename to packages/sysutils/busybox/patches/busybox-1.19.2-01_check_cc.patch
diff --git a/packages/sysutils/busybox/patches/busybox-1.19.1-02_user_modprobe.d_dir-0.1.patch b/packages/sysutils/busybox/patches/busybox-1.19.2-02_user_modprobe.d_dir-0.1.patch
similarity index 100%
rename from packages/sysutils/busybox/patches/busybox-1.19.1-02_user_modprobe.d_dir-0.1.patch
rename to packages/sysutils/busybox/patches/busybox-1.19.2-02_user_modprobe.d_dir-0.1.patch
diff --git a/packages/sysutils/busybox/profile.d/path.conf b/packages/sysutils/busybox/profile.d/path.conf
index 80d106f6c6..8922da6f75 100644
--- a/packages/sysutils/busybox/profile.d/path.conf
+++ b/packages/sysutils/busybox/profile.d/path.conf
@@ -25,9 +25,4 @@
PATH="/bin:/sbin:/usr/bin:/usr/sbin"
-# hack: add addons to $PATH
- for i in `find /storage/.xbmc/addons/* -name bin -type d`; do
- PATH="$PATH:$i"
- done
-
export PATH
diff --git a/packages/sysutils/busybox/profile.d/runlevel.conf b/packages/sysutils/busybox/profile.d/runlevel.conf
index 2a65c191a3..16d841da2e 100644
--- a/packages/sysutils/busybox/profile.d/runlevel.conf
+++ b/packages/sysutils/busybox/profile.d/runlevel.conf
@@ -24,14 +24,14 @@
################################################################################
# getting runlevel
- RUNLEVEL="openelec"
+ MODE="openelec"
if test "$TEXTMODE" = yes; then
- RUNLEVEL="textmode"
+ MODE="textmode"
fi
if test "$INSTALLER" = yes; then
- RUNLEVEL="installer"
+ MODE="installer"
fi
-export RUNLEVEL
+export MODE
diff --git a/packages/sysutils/busybox/scripts/init b/packages/sysutils/busybox/scripts/init
index e81019243c..25f8afa3b4 100755
--- a/packages/sysutils/busybox/scripts/init
+++ b/packages/sysutils/busybox/scripts/init
@@ -26,16 +26,6 @@
echo 0 > /sys/devices/virtual/graphics/fbcon/cursor_blink
- mount -n -t devtmpfs none /dev
-
- mkdir -p /dev/pts
- mount -n -t devpts -o gid=5,mode=620 none /dev/pts
-
- mkdir -p /dev/shm
- mount -n -t tmpfs none /dev/shm
-
- mount -n -t tmpfs none /run
-
# showing version
lsb_release
@@ -46,8 +36,10 @@
progress "Starting Init Scripts"
RET=0
- for script in /etc/init.d/*; do
- if grep -q -e "^# runlevels:.*$RUNLEVEL" $script; then
+ RUNLEVEL="boot"
+
+ for script in `ls -1 /etc/init.d/*`; do
+ if grep -q -e "^# runlevels:.*$MODE" $script; then
. $script
S_RET=$?
test $S_RET -ge $RET && RET=$S_RET
diff --git a/packages/sysutils/dbus/init.d/14_dbus b/packages/sysutils/dbus/init.d/14_dbus
index 6e84b9b8c7..431a595f72 100644
--- a/packages/sysutils/dbus/init.d/14_dbus
+++ b/packages/sysutils/dbus/init.d/14_dbus
@@ -23,10 +23,19 @@
#
# runlevels: openelec, textmode
-(
- progress "Starting D-BUS"
+case $RUNLEVEL in
+ boot)
+ (
+ progress "Starting D-BUS"
- mkdir -p /var/lib/dbus /var/run/dbus
- dbus-uuidgen --ensure
- dbus-daemon --system
-)&
\ No newline at end of file
+ mkdir -p /var/lib/dbus /var/run/dbus
+ dbus-uuidgen --ensure
+ dbus-daemon --system
+ )&
+ ;;
+
+ poweroff|reboot)
+ progress "Stopping D-BUS"
+ killall dbus-daemon
+ ;;
+esac
diff --git a/packages/sysutils/fuse/init.d/15_fuse b/packages/sysutils/fuse/init.d/15_fuse
index 76996f5d03..62df42dc12 100644
--- a/packages/sysutils/fuse/init.d/15_fuse
+++ b/packages/sysutils/fuse/init.d/15_fuse
@@ -23,5 +23,14 @@
#
# runlevels: openelec, textmode
-progress "Starting Fuse"
- mount -t fusectl fusectl /sys/fs/fuse/connections >/dev/null 2>&1
\ No newline at end of file
+case $RUNLEVEL in
+ boot)
+ progress "Starting Fuse"
+ mount -t fusectl fusectl /sys/fs/fuse/connections >/dev/null 2>&1
+ ;;
+
+ poweroff|reboot)
+ progress "Stopping Fuse"
+ umount /sys/fs/fuse/connections
+ ;;
+esac
diff --git a/packages/sysutils/kexec-tools/build b/packages/sysutils/kexec-tools/build
new file mode 100755
index 0000000000..5d97fbd8af
--- /dev/null
+++ b/packages/sysutils/kexec-tools/build
@@ -0,0 +1,41 @@
+#!/bin/sh
+
+################################################################################
+# This file is part of OpenELEC - http://www.openelec.tv
+# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
+#
+# This Program 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, or (at your option)
+# any later version.
+#
+# This Program 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 OpenELEC.tv; see the file COPYING. If not, write to
+# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+# http://www.gnu.org/copyleft/gpl.html
+################################################################################
+
+. config/options $1
+
+CFLAGS="-O2" # -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2"
+LDFLAGS=""
+
+cd $PKG_BUILD
+./configure --host=$TARGET_NAME \
+ --build=$HOST_NAME \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --datadir=/usr/share \
+ --libexecdir=/usr/lib/upower \
+ --localstatedir=/var \
+ --without-gamecube \
+ --with-zlib \
+ --without-lzma \
+ --without-xen \
+
+make
diff --git a/packages/sysutils/kexec-tools/install b/packages/sysutils/kexec-tools/install
new file mode 100755
index 0000000000..f82f9ed0b5
--- /dev/null
+++ b/packages/sysutils/kexec-tools/install
@@ -0,0 +1,26 @@
+#!/bin/sh
+
+################################################################################
+# This file is part of OpenELEC - http://www.openelec.tv
+# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
+#
+# This Program 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, or (at your option)
+# any later version.
+#
+# This Program 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 OpenELEC.tv; see the file COPYING. If not, write to
+# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+# http://www.gnu.org/copyleft/gpl.html
+################################################################################
+
+. config/options $1
+
+mkdir -p $INSTALL/usr/sbin
+ cp $PKG_BUILD/build/sbin/kexec $INSTALL/usr/sbin
diff --git a/packages/sysutils/kexec-tools/meta b/packages/sysutils/kexec-tools/meta
new file mode 100644
index 0000000000..3f629671b3
--- /dev/null
+++ b/packages/sysutils/kexec-tools/meta
@@ -0,0 +1,36 @@
+################################################################################
+# This file is part of OpenELEC - http://www.openelec.tv
+# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
+#
+# This Program 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, or (at your option)
+# any later version.
+#
+# This Program 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 OpenELEC.tv; see the file COPYING. If not, write to
+# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+# http://www.gnu.org/copyleft/gpl.html
+################################################################################
+
+PKG_NAME="kexec-tools"
+PKG_VERSION="2.0.2"
+PKG_REV="1"
+PKG_ARCH="any"
+PKG_LICENSE="GPL"
+PKG_SITE="http://www.kernel.org/pub/linux/kernel/people/horms/"
+PKG_URL="http://horms.net/projects/kexec/kexec-tools/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_DEPENDS="zlib"
+PKG_BUILD_DEPENDS="toolchain zlib"
+PKG_PRIORITY="optional"
+PKG_SECTION="system"
+PKG_SHORTDESC="kexec-tools: the user-space portion of kexec"
+PKG_LONGDESC="kexec-tools is the user-space portion of kexec, a tool to load another kernel from the currently executing Linux kernel."
+PKG_IS_ADDON="no"
+
+PKG_AUTORECONF="yes"
diff --git a/packages/sysutils/lcdproc/init.d/63_lcdproc b/packages/sysutils/lcdproc/init.d/63_lcdproc
index f8bcf55c73..68af96fb0d 100644
--- a/packages/sysutils/lcdproc/init.d/63_lcdproc
+++ b/packages/sysutils/lcdproc/init.d/63_lcdproc
@@ -22,28 +22,37 @@
#
# runlevels: openelec, textmode
-(
- if [ -f /var/config/settings.conf ]; then
- . /var/config/settings.conf
+case $RUNLEVEL in
+ boot)
+ (
+ if [ -f /var/config/settings.conf ]; then
+ . /var/config/settings.conf
- if [ ! "$LCD_DRIVER" = none ]; then
+ if [ ! "$LCD_DRIVER" = none ]; then
- progress "Starting LCD daemon with driver: $LCD_DRIVER"
+ progress "Starting LCD daemon with driver: $LCD_DRIVER"
- if [ -f /storage/.config/LCDd.conf ]; then
- LCD_CONFIG="/storage/.config/LCDd.conf"
- else
- LCD_CONFIG="/etc/LCDd.conf"
- fi
+ if [ -f /storage/.config/LCDd.conf ]; then
+ LCD_CONFIG="/storage/.config/LCDd.conf"
+ else
+ LCD_CONFIG="/etc/LCDd.conf"
+ fi
- # sleep 10sec. to for irserver loading
- if [ "$LCD_DRIVER" = "irtrans" ]; then
- usleep 7000000
+ # sleep 10sec. to for irserver loading
+ if [ "$LCD_DRIVER" = "irtrans" ]; then
+ usleep 7000000
+ fi
+
+ # sleep another 3sec. to for irserver loading
+ usleep 3000000
+ LCDd -c $LCD_CONFIG -d $LCD_DRIVER -s true > /dev/null 2>&1
fi
+ fi
+ )&
+ ;;
- # sleep another 3sec. to for irserver loading
- usleep 3000000
- LCDd -c $LCD_CONFIG -d $LCD_DRIVER -s true > /dev/null 2>&1
- fi
- fi
-)&
+ poweroff|reboot)
+ progress "Stopping LCD daemon"
+ killall LCDd
+ ;;
+esac
diff --git a/packages/sysutils/remote/atvclient/init.d/63_atvclient b/packages/sysutils/remote/atvclient/init.d/63_atvclient
index ae9fec59dc..a11518a7f9 100644
--- a/packages/sysutils/remote/atvclient/init.d/63_atvclient
+++ b/packages/sysutils/remote/atvclient/init.d/63_atvclient
@@ -22,8 +22,17 @@
#
# runlevels: openelec, textmode
-(
- progress "starting ATVclient"
- mkdir -p /storage/.cache
- atvclient -m > /dev/null 2>&1
-)&
\ No newline at end of file
+case $RUNLEVEL in
+ boot)
+ (
+ progress "starting ATVclient"
+ mkdir -p /storage/.cache
+ atvclient -m > /dev/null 2>&1
+ )&
+ ;;
+
+ poweroff|reboot)
+ progress "stopping ATVclient"
+ killall atvclient
+ ;;
+esac
diff --git a/packages/sysutils/remote/eventlircd/init.d/62_eventlircd b/packages/sysutils/remote/eventlircd/init.d/62_eventlircd
index 337ceaee87..7267c652b3 100644
--- a/packages/sysutils/remote/eventlircd/init.d/62_eventlircd
+++ b/packages/sysutils/remote/eventlircd/init.d/62_eventlircd
@@ -22,8 +22,17 @@
#
# runlevels: openelec, textmode
-(
- progress "starting eventlircd"
- mkdir -p /var/run/lirc
- eventlircd --evmap=/etc/eventlircd.d --socket=/var/run/lirc/lircd --release=_UP
-)&
\ No newline at end of file
+case $RUNLEVEL in
+ boot)
+ (
+ progress "starting eventlircd"
+ mkdir -p /var/run/lirc
+ eventlircd --evmap=/etc/eventlircd.d --socket=/var/run/lirc/lircd --release=_UP
+ )&
+ ;;
+
+ poweroff|reboot)
+ progress "starting eventlircd"
+ killall eventlircd
+ ;;
+esac
diff --git a/packages/sysutils/remote/irserver/init.d/61_irserver b/packages/sysutils/remote/irserver/init.d/61_irserver
index 264b3557c8..9e39b10c09 100644
--- a/packages/sysutils/remote/irserver/init.d/61_irserver
+++ b/packages/sysutils/remote/irserver/init.d/61_irserver
@@ -25,16 +25,25 @@
[ -f /storage/.config/remote.conf ] && . /storage/.config/remote.conf
[ -f /storage/.config/lcd.conf ] && . /storage/.config/lcd.conf
-if [ "$REMOTE_BACKEND" = "irtrans" -o "$LCD_DRIVER" = "irtrans" ]; then
+case $RUNLEVEL in
+ boot)
+ if [ "$REMOTE_BACKEND" = "irtrans" -o "$LCD_DRIVER" = "irtrans" ]; then
- progress "Starting IRtrans daemon"
+ progress "Starting IRtrans daemon"
- mkdir -p /var/run/lirc
+ mkdir -p /var/run/lirc
- [ "$DEBUG" = "yes" ] && \
- IRSERVER_ARG="$IRSERVER_ARG -loglevel 4" # set loglevel in debugmode
+ [ "$DEBUG" = "yes" ] && \
+ IRSERVER_ARG="$IRSERVER_ARG -loglevel 4" # set loglevel in debugmode
- irserver -logfile /var/log/irserver.log -pidfile /var/run/irserver.pid \
- $IRSERVER_ARG -daemon /dev/irtrans0 > /dev/null 2>&1
+ irserver -logfile /var/log/irserver.log -pidfile /var/run/irserver.pid \
+ $IRSERVER_ARG -daemon /dev/irtrans0 > /dev/null 2>&1
-fi
\ No newline at end of file
+ fi
+ ;;
+
+ poweroff|reboot)
+ progress "Stopping IRtrans daemon"
+ killall irserver
+ ;;
+esac
diff --git a/packages/sysutils/udev/init.d/11_udevd b/packages/sysutils/udev/init.d/11_udevd
index 7ec43042e6..95f15c296b 100644
--- a/packages/sysutils/udev/init.d/11_udevd
+++ b/packages/sysutils/udev/init.d/11_udevd
@@ -23,7 +23,16 @@
#
# runlevels: openelec, installer, textmode
-progress "starting udev daemon"
- echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug
- mkdir -p /dev/rules.d
- udevd --daemon
+case $RUNLEVEL in
+ boot)
+ progress "starting udev daemon"
+ echo -e '\000\000\000\000' > /proc/sys/kernel/hotplug
+ mkdir -p /dev/rules.d
+ udevd --daemon
+ ;;
+
+ poweroff|reboot)
+ progress "stopping udev daemon"
+ killall udevd
+ ;;
+esac
diff --git a/packages/sysutils/udev/init.d/12_udev-monitor b/packages/sysutils/udev/init.d/12_udev-monitor
index 14f8204e21..9b48ba912a 100644
--- a/packages/sysutils/udev/init.d/12_udev-monitor
+++ b/packages/sysutils/udev/init.d/12_udev-monitor
@@ -23,7 +23,14 @@
#
# runlevels: openelec, installer, textmode
-(
- progress "monitoring udev events"
- udevadm monitor -e > /dev/udev.log
-)&
+case $RUNLEVEL in
+ boot)
+ progress "monitoring udev events"
+ udevadm monitor -e > /dev/udev.log &
+ ;;
+
+ poweroff|reboot)
+ progress "Stopping udev monitor"
+ killall udevadm
+ ;;
+esac
diff --git a/packages/sysutils/udev/init.d/13_udev-trigger b/packages/sysutils/udev/init.d/13_udev-trigger
index 4a3f5eba47..ce3c6d1662 100644
--- a/packages/sysutils/udev/init.d/13_udev-trigger
+++ b/packages/sysutils/udev/init.d/13_udev-trigger
@@ -23,8 +23,15 @@
#
# runlevels: openelec, installer, textmode
-(
- progress "request udev events from the kernel"
- udevadm trigger --action=add
- udevadm settle
-)&
+case $RUNLEVEL in
+ boot)
+ (
+ progress "request udev events from the kernel"
+ udevadm trigger --action=add
+ udevadm settle
+ )&
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/sysutils/util-linux/init.d/32_swapfile b/packages/sysutils/util-linux/init.d/32_swapfile
index 80cb8be661..4f30fb20b4 100644
--- a/packages/sysutils/util-linux/init.d/32_swapfile
+++ b/packages/sysutils/util-linux/init.d/32_swapfile
@@ -23,29 +23,36 @@
#
# runlevels: openelec, textmode
-(
- INSTALLED_MEMORY=`cat /proc/meminfo | grep 'MemTotal:' | awk '{print $2}'`
- SWAP=`blkid -t TYPE="swap" -o device`
- SWAPFILE="$HOME/.cache/swapfile"
+case $RUNLEVEL in
+ boot)
+ (
+ INSTALLED_MEMORY=`cat /proc/meminfo | grep 'MemTotal:' | awk '{print $2}'`
+ SWAP=`blkid -t TYPE="swap" -o device`
+ SWAPFILE="$HOME/.cache/swapfile"
- if [ "$INSTALLED_MEMORY" -le "500000" ]; then
- if [ -z "$SWAP" -a ! -f "$SWAPFILE" ]; then
- progress "creating swapfile"
- mkdir -p $HOME/.cache
- dd if=/dev/zero of=$SWAPFILE bs=1024 count=262144 2>&1 > /dev/null
- mkswap $SWAPFILE 2>&1 > /dev/null
- fi
+ if [ "$INSTALLED_MEMORY" -le "500000" ]; then
+ if [ -z "$SWAP" -a ! -f "$SWAPFILE" ]; then
+ progress "creating swapfile"
+ mkdir -p $HOME/.cache
+ dd if=/dev/zero of=$SWAPFILE bs=1024 count=262144 2>&1 > /dev/null
+ mkswap $SWAPFILE 2>&1 > /dev/null
+ fi
- progress "enable swap"
- [ -z "$SWAP" -a -f "$SWAPFILE" ] && SWAP=$SWAPFILE
- for i in $SWAP; do
- swapon -p 10000 $SWAP 2>&1 > /dev/null
- done
+ progress "enable swap"
+ [ -z "$SWAP" -a -f "$SWAPFILE" ] && SWAP=$SWAPFILE
+ for i in $SWAP; do
+ swapon -p 10000 $SWAP 2>&1 > /dev/null
+ done
- if [ "$INSTALLED_MEMORY" -le "260000" ]; then
- sysctl -w vm.swappiness=100 2>&1 > /dev/null
- else
- sysctl -w vm.swappiness=60 2>&1 > /dev/null
- fi
- fi
-)&
\ No newline at end of file
+ if [ "$INSTALLED_MEMORY" -le "260000" ]; then
+ sysctl -w vm.swappiness=100 2>&1 > /dev/null
+ else
+ sysctl -w vm.swappiness=60 2>&1 > /dev/null
+ fi
+ fi
+ )&
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/tools/autoupdate/scripts/autoupdate.devel b/packages/tools/autoupdate/scripts/autoupdate.devel
index 2873fdfcc9..a30bc9f715 100755
--- a/packages/tools/autoupdate/scripts/autoupdate.devel
+++ b/packages/tools/autoupdate/scripts/autoupdate.devel
@@ -43,7 +43,7 @@ fi
download () {
case "$DL_METHOD" in
wget)
- wget -c $1 -P $TMP_DIR
+ wget -c $1 -P $TMP_DIR > /dev/null 2>&1
;;
scp)
scp $SCP_ARG "$1" $TMP_DIR
diff --git a/packages/tools/autoupdate/scripts/autoupdate.release b/packages/tools/autoupdate/scripts/autoupdate.release
index 2e67e1fcb5..5e716f0e7f 100755
--- a/packages/tools/autoupdate/scripts/autoupdate.release
+++ b/packages/tools/autoupdate/scripts/autoupdate.release
@@ -43,7 +43,7 @@ fi
download () {
case "$DL_METHOD" in
wget)
- wget -c $1 -P $TMP_DIR
+ wget -c $1 -P $TMP_DIR > /dev/null 2>&1
;;
scp)
scp $SCP_ARG "$1" $TMP_DIR
diff --git a/packages/x11/app/setxkbmap/init.d/72_keyboard b/packages/x11/app/setxkbmap/init.d/72_keyboard
index 351f8875e0..c9887eede6 100644
--- a/packages/x11/app/setxkbmap/init.d/72_keyboard
+++ b/packages/x11/app/setxkbmap/init.d/72_keyboard
@@ -22,24 +22,31 @@
#
# runlevels: openelec
-(
- if [ -f /var/config/settings.conf ]; then
- . /var/config/settings.conf
+case $RUNLEVEL in
+ boot)
+ (
+ if [ -f /var/config/settings.conf ]; then
+ . /var/config/settings.conf
- progress "setup keyboard layout"
+ progress "setup keyboard layout"
- if [ -z $X11_KEYMAP ]; then
- X11_KEYMAP="us"
- fi
+ if [ -z $X11_KEYMAP ]; then
+ X11_KEYMAP="us"
+ fi
- # waiting for Xorg to start
- wait_for_xorg
+ # waiting for Xorg to start
+ wait_for_xorg
- # setup keymap
- if [ -z $X11_KEYMAP2 ]; then
- setxkbmap -display $DISPLAY $X11_KEYMAP;
- else
- setxkbmap -display $DISPLAY -layout "$X11_KEYMAP,$X11_KEYMAP2" -option "grp:alt_shift_toggle";
+ # setup keymap
+ if [ -z $X11_KEYMAP2 ]; then
+ setxkbmap -display $DISPLAY $X11_KEYMAP;
+ else
+ setxkbmap -display $DISPLAY -layout "$X11_KEYMAP,$X11_KEYMAP2" -option "grp:alt_shift_toggle";
+ fi
fi
- fi
-)&
+ )&
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/x11/driver/xf86-video-intel/build b/packages/x11/driver/xf86-video-intel/build
index 844a791b50..b507285305 100755
--- a/packages/x11/driver/xf86-video-intel/build
+++ b/packages/x11/driver/xf86-video-intel/build
@@ -34,7 +34,7 @@ cd $PKG_BUILD
--enable-dri \
--enable-kms-only \
--disable-xvmc \
- --enable-sna \
+ --disable-sna \
--with-xorg-module-dir=$XORG_PATH_MODULES
make
diff --git a/packages/x11/other/ratpoison/init.d/73_ratpoison b/packages/x11/other/ratpoison/init.d/73_ratpoison
index 1e3fa9a4cc..213997cdc0 100644
--- a/packages/x11/other/ratpoison/init.d/73_ratpoison
+++ b/packages/x11/other/ratpoison/init.d/73_ratpoison
@@ -22,12 +22,19 @@
#
# runlevels: openelec
-(
- progress "starting Windowmanager"
+case $RUNLEVEL in
+ boot)
+ (
+ progress "starting Windowmanager"
- # waiting for Xorg to start
- wait_for_xorg
+ # waiting for Xorg to start
+ wait_for_xorg
- # starting ratpoison
- DISPLAY=:0.0 ratpoison > /dev/null 2>&1
-)&
+ # starting ratpoison
+ DISPLAY=:0.0 ratpoison > /dev/null 2>&1
+ )&
+ ;;
+
+ poweroff|reboot)
+ ;;
+esac
diff --git a/packages/x11/xserver/xorg-server/init.d/70_xorg b/packages/x11/xserver/xorg-server/init.d/70_xorg
new file mode 100644
index 0000000000..9e61e7ca92
--- /dev/null
+++ b/packages/x11/xserver/xorg-server/init.d/70_xorg
@@ -0,0 +1,34 @@
+################################################################################
+# This file is part of OpenELEC - http://www.openelec.tv
+# Copyright (C) 2009-2011 Stephan Raue (stephan@openelec.tv)
+#
+# This Program 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, or (at your option)
+# any later version.
+#
+# This Program 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 OpenELEC.tv; see the file COPYING. If not, write to
+# the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
+# http://www.gnu.org/copyleft/gpl.html
+################################################################################
+
+#
+# mounting needed filesystems
+#
+# runlevels: openelec, installer, textmode
+
+case $RUNLEVEL in
+ boot)
+ # dont do anything here, we start xorg per udev
+ ;;
+ poweroff|reboot)
+ progress "stopping Xorg"
+ killall Xorg
+ ;;
+esac
diff --git a/packages/x11/xserver/xorg-server/scripts/xorg_start b/packages/x11/xserver/xorg-server/scripts/xorg_start
index c971eec77c..e31c9a5c9d 100755
--- a/packages/x11/xserver/xorg-server/scripts/xorg_start
+++ b/packages/x11/xserver/xorg-server/scripts/xorg_start
@@ -22,7 +22,7 @@
. /etc/profile
-if [ "$RUNLEVEL" = openelec ]; then
+if [ "$MODE" = openelec ]; then
logger -t Xorg "### starting Xorg with driver ${xorg_driver} ###"
diff --git a/projects/ATV/linux/linux.i386.conf b/projects/ATV/linux/linux.i386.conf
index 3b429d4020..bf3c8c3a5d 100644
--- a/projects/ATV/linux/linux.i386.conf
+++ b/projects/ATV/linux/linux.i386.conf
@@ -181,7 +181,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
-# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
@@ -363,11 +362,6 @@ CONFIG_X86_CPUID=y
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
-# CONFIG_VMSPLIT_3G is not set
-# CONFIG_VMSPLIT_3G_OPT is not set
-# CONFIG_VMSPLIT_2G is not set
-# CONFIG_VMSPLIT_2G_OPT is not set
-# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0xC0000000
# CONFIG_X86_PAE is not set
# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
@@ -417,7 +411,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
CONFIG_PHYSICAL_ALIGN=0x1000000
@@ -465,7 +459,6 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_STAT is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
diff --git a/projects/Fusion/linux/linux.i386.conf b/projects/Fusion/linux/linux.i386.conf
index 6696ae97d9..334df874ca 100644
--- a/projects/Fusion/linux/linux.i386.conf
+++ b/projects/Fusion/linux/linux.i386.conf
@@ -405,7 +405,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
@@ -2128,7 +2128,7 @@ CONFIG_SND_HDA_CODEC_REALTEK=y
CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS=y
# CONFIG_SND_HDA_CODEC_ANALOG is not set
CONFIG_SND_HDA_CODEC_SIGMATEL=y
-# CONFIG_SND_HDA_CODEC_VIA is not set
+CONFIG_SND_HDA_CODEC_VIA=y
CONFIG_SND_HDA_CODEC_HDMI=y
# CONFIG_SND_HDA_CODEC_CIRRUS is not set
# CONFIG_SND_HDA_CODEC_CONEXANT is not set
diff --git a/projects/Generic/linux/linux.i386.conf b/projects/Generic/linux/linux.i386.conf
index 78f9dac396..d9c75b79a9 100644
--- a/projects/Generic/linux/linux.i386.conf
+++ b/projects/Generic/linux/linux.i386.conf
@@ -183,7 +183,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
-# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
@@ -360,11 +359,6 @@ CONFIG_X86_CPUID=y
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
-# CONFIG_VMSPLIT_3G is not set
-# CONFIG_VMSPLIT_3G_OPT is not set
-# CONFIG_VMSPLIT_2G is not set
-# CONFIG_VMSPLIT_2G_OPT is not set
-# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
@@ -413,7 +407,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
@@ -470,7 +464,6 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_STAT is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -1177,11 +1170,13 @@ CONFIG_HOSTAP_FIRMWARE=y
CONFIG_HOSTAP_PLX=m
CONFIG_HOSTAP_PCI=m
CONFIG_IPW2100=m
-# CONFIG_IPW2100_MONITOR is not set
+CONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not set
CONFIG_IPW2200=m
-# CONFIG_IPW2200_MONITOR is not set
-# CONFIG_IPW2200_QOS is not set
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
# CONFIG_IPW2200_DEBUG is not set
CONFIG_LIBIPW=m
# CONFIG_LIBIPW_DEBUG is not set
@@ -2272,6 +2267,7 @@ CONFIG_SND_DMA_SGBUF=y
# CONFIG_SND_OPL4_LIB_SEQ is not set
# CONFIG_SND_SBAWE_SEQ is not set
# CONFIG_SND_EMU10K1_SEQ is not set
+CONFIG_SND_MPU401_UART=m
CONFIG_SND_AC97_CODEC=m
# CONFIG_SND_DRIVERS is not set
CONFIG_SND_PCI=y
@@ -2290,7 +2286,8 @@ CONFIG_SND_PCI=y
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS5530 is not set
diff --git a/projects/Generic_OSS/linux/linux.i386.conf b/projects/Generic_OSS/linux/linux.i386.conf
index 394dc359b6..24cedd6361 100644
--- a/projects/Generic_OSS/linux/linux.i386.conf
+++ b/projects/Generic_OSS/linux/linux.i386.conf
@@ -183,7 +183,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
-# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
@@ -360,11 +359,6 @@ CONFIG_X86_CPUID=y
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
-# CONFIG_VMSPLIT_3G is not set
-# CONFIG_VMSPLIT_3G_OPT is not set
-# CONFIG_VMSPLIT_2G is not set
-# CONFIG_VMSPLIT_2G_OPT is not set
-# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
@@ -413,7 +407,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
@@ -470,7 +464,6 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_STAT is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -1174,11 +1167,13 @@ CONFIG_HOSTAP_FIRMWARE=y
CONFIG_HOSTAP_PLX=m
CONFIG_HOSTAP_PCI=m
CONFIG_IPW2100=m
-# CONFIG_IPW2100_MONITOR is not set
+CONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not set
CONFIG_IPW2200=m
-# CONFIG_IPW2200_MONITOR is not set
-# CONFIG_IPW2200_QOS is not set
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
# CONFIG_IPW2200_DEBUG is not set
CONFIG_LIBIPW=m
# CONFIG_LIBIPW_DEBUG is not set
@@ -2270,6 +2265,7 @@ CONFIG_SND_DMA_SGBUF=y
# CONFIG_SND_OPL4_LIB_SEQ is not set
# CONFIG_SND_SBAWE_SEQ is not set
# CONFIG_SND_EMU10K1_SEQ is not set
+CONFIG_SND_MPU401_UART=m
CONFIG_SND_AC97_CODEC=m
# CONFIG_SND_DRIVERS is not set
CONFIG_SND_PCI=y
@@ -2288,7 +2284,8 @@ CONFIG_SND_PCI=y
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS5530 is not set
diff --git a/projects/ION/linux/linux.i386.conf b/projects/ION/linux/linux.i386.conf
index 584f056fc9..e75e75f2c1 100644
--- a/projects/ION/linux/linux.i386.conf
+++ b/projects/ION/linux/linux.i386.conf
@@ -183,7 +183,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
-# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
@@ -355,11 +354,6 @@ CONFIG_X86_CPUID=y
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
-# CONFIG_VMSPLIT_3G is not set
-# CONFIG_VMSPLIT_3G_OPT is not set
-# CONFIG_VMSPLIT_2G is not set
-# CONFIG_VMSPLIT_2G_OPT is not set
-# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
@@ -408,7 +402,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
@@ -464,7 +458,6 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_STAT is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -2129,6 +2122,7 @@ CONFIG_SND_DMA_SGBUF=y
# CONFIG_SND_OPL4_LIB_SEQ is not set
# CONFIG_SND_SBAWE_SEQ is not set
# CONFIG_SND_EMU10K1_SEQ is not set
+CONFIG_SND_MPU401_UART=m
# CONFIG_SND_DRIVERS is not set
CONFIG_SND_PCI=y
# CONFIG_SND_AD1889 is not set
@@ -2146,7 +2140,8 @@ CONFIG_SND_PCI=y
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS5530 is not set
diff --git a/projects/ION/linux/linux.x86_64.conf b/projects/ION/linux/linux.x86_64.conf
index 45f61821fb..31622d22c5 100644
--- a/projects/ION/linux/linux.x86_64.conf
+++ b/projects/ION/linux/linux.x86_64.conf
@@ -184,7 +184,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
-# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
@@ -373,7 +372,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
@@ -427,7 +426,6 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_STAT is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -2067,6 +2065,7 @@ CONFIG_SND_DMA_SGBUF=y
# CONFIG_SND_OPL4_LIB_SEQ is not set
# CONFIG_SND_SBAWE_SEQ is not set
# CONFIG_SND_EMU10K1_SEQ is not set
+CONFIG_SND_MPU401_UART=m
# CONFIG_SND_DRIVERS is not set
CONFIG_SND_PCI=y
# CONFIG_SND_AD1889 is not set
@@ -2084,7 +2083,8 @@ CONFIG_SND_PCI=y
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS5530 is not set
diff --git a/projects/Intel/linux/linux.i386.conf b/projects/Intel/linux/linux.i386.conf
index 38652d769b..4e687d7249 100644
--- a/projects/Intel/linux/linux.i386.conf
+++ b/projects/Intel/linux/linux.i386.conf
@@ -183,7 +183,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
-# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
@@ -356,11 +355,6 @@ CONFIG_X86_CPUID=y
# CONFIG_NOHIGHMEM is not set
CONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not set
-# CONFIG_VMSPLIT_3G is not set
-# CONFIG_VMSPLIT_3G_OPT is not set
-# CONFIG_VMSPLIT_2G is not set
-# CONFIG_VMSPLIT_2G_OPT is not set
-# CONFIG_VMSPLIT_1G is not set
CONFIG_PAGE_OFFSET=0xC0000000
CONFIG_HIGHMEM=y
# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set
@@ -409,7 +403,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
@@ -466,7 +460,6 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_STAT is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -1135,8 +1128,17 @@ CONFIG_HOSTAP=m
# CONFIG_HOSTAP_FIRMWARE is not set
# CONFIG_HOSTAP_PLX is not set
# CONFIG_HOSTAP_PCI is not set
-# CONFIG_IPW2100 is not set
-# CONFIG_IPW2200 is not set
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+# CONFIG_IPW2100_DEBUG is not set
+CONFIG_IPW2200=m
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
+# CONFIG_IPW2200_DEBUG is not set
+CONFIG_LIBIPW=m
+# CONFIG_LIBIPW_DEBUG is not set
CONFIG_IWLAGN=m
#
@@ -2179,6 +2181,7 @@ CONFIG_SND_DMA_SGBUF=y
# CONFIG_SND_OPL4_LIB_SEQ is not set
# CONFIG_SND_SBAWE_SEQ is not set
# CONFIG_SND_EMU10K1_SEQ is not set
+CONFIG_SND_MPU401_UART=m
# CONFIG_SND_DRIVERS is not set
CONFIG_SND_PCI=y
# CONFIG_SND_AD1889 is not set
@@ -2196,7 +2199,8 @@ CONFIG_SND_PCI=y
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS5530 is not set
@@ -2234,15 +2238,15 @@ CONFIG_SND_HDA_PATCH_LOADER=y
CONFIG_SND_HDA_CODEC_REALTEK=y
CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS=y
CONFIG_SND_HDA_CODEC_ANALOG=y
-# CONFIG_SND_HDA_CODEC_SIGMATEL is not set
+CONFIG_SND_HDA_CODEC_SIGMATEL=y
CONFIG_SND_HDA_CODEC_VIA=y
CONFIG_SND_HDA_CODEC_HDMI=y
-# CONFIG_SND_HDA_CODEC_CIRRUS is not set
+CONFIG_SND_HDA_CODEC_CIRRUS=y
CONFIG_SND_HDA_CODEC_CONEXANT=y
-# CONFIG_SND_HDA_CODEC_CA0110 is not set
+CONFIG_SND_HDA_CODEC_CA0110=y
CONFIG_SND_HDA_CODEC_CA0132=y
-# CONFIG_SND_HDA_CODEC_CMEDIA is not set
-# CONFIG_SND_HDA_CODEC_SI3054 is not set
+CONFIG_SND_HDA_CODEC_CMEDIA=y
+CONFIG_SND_HDA_CODEC_SI3054=y
CONFIG_SND_HDA_GENERIC=y
# CONFIG_SND_HDA_POWER_SAVE is not set
# CONFIG_SND_HDSP is not set
diff --git a/projects/Intel/linux/linux.x86_64.conf b/projects/Intel/linux/linux.x86_64.conf
index a6b5a4d09b..01eb853ebb 100644
--- a/projects/Intel/linux/linux.x86_64.conf
+++ b/projects/Intel/linux/linux.x86_64.conf
@@ -184,7 +184,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
-# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
@@ -375,7 +374,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
@@ -430,7 +429,6 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_STAT is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set
@@ -1087,8 +1085,17 @@ CONFIG_HOSTAP=m
# CONFIG_HOSTAP_FIRMWARE is not set
# CONFIG_HOSTAP_PLX is not set
# CONFIG_HOSTAP_PCI is not set
-# CONFIG_IPW2100 is not set
-# CONFIG_IPW2200 is not set
+CONFIG_IPW2100=m
+CONFIG_IPW2100_MONITOR=y
+# CONFIG_IPW2100_DEBUG is not set
+CONFIG_IPW2200=m
+CONFIG_IPW2200_MONITOR=y
+CONFIG_IPW2200_RADIOTAP=y
+CONFIG_IPW2200_PROMISCUOUS=y
+CONFIG_IPW2200_QOS=y
+# CONFIG_IPW2200_DEBUG is not set
+CONFIG_LIBIPW=m
+# CONFIG_LIBIPW_DEBUG is not set
CONFIG_IWLAGN=m
#
@@ -2122,6 +2129,7 @@ CONFIG_SND_DMA_SGBUF=y
# CONFIG_SND_OPL4_LIB_SEQ is not set
# CONFIG_SND_SBAWE_SEQ is not set
# CONFIG_SND_EMU10K1_SEQ is not set
+CONFIG_SND_MPU401_UART=m
# CONFIG_SND_DRIVERS is not set
CONFIG_SND_PCI=y
# CONFIG_SND_AD1889 is not set
@@ -2139,7 +2147,8 @@ CONFIG_SND_PCI=y
# CONFIG_SND_BT87X is not set
# CONFIG_SND_CA0106 is not set
# CONFIG_SND_CMIPCI is not set
-# CONFIG_SND_OXYGEN is not set
+CONFIG_SND_OXYGEN_LIB=m
+CONFIG_SND_OXYGEN=m
# CONFIG_SND_CS4281 is not set
# CONFIG_SND_CS46XX is not set
# CONFIG_SND_CS5530 is not set
@@ -2177,15 +2186,15 @@ CONFIG_SND_HDA_PATCH_LOADER=y
CONFIG_SND_HDA_CODEC_REALTEK=y
CONFIG_SND_HDA_ENABLE_REALTEK_QUIRKS=y
CONFIG_SND_HDA_CODEC_ANALOG=y
-# CONFIG_SND_HDA_CODEC_SIGMATEL is not set
+CONFIG_SND_HDA_CODEC_SIGMATEL=y
CONFIG_SND_HDA_CODEC_VIA=y
CONFIG_SND_HDA_CODEC_HDMI=y
-# CONFIG_SND_HDA_CODEC_CIRRUS is not set
+CONFIG_SND_HDA_CODEC_CIRRUS=y
CONFIG_SND_HDA_CODEC_CONEXANT=y
-# CONFIG_SND_HDA_CODEC_CA0110 is not set
+CONFIG_SND_HDA_CODEC_CA0110=y
CONFIG_SND_HDA_CODEC_CA0132=y
-# CONFIG_SND_HDA_CODEC_CMEDIA is not set
-# CONFIG_SND_HDA_CODEC_SI3054 is not set
+CONFIG_SND_HDA_CODEC_CMEDIA=y
+CONFIG_SND_HDA_CODEC_SI3054=y
CONFIG_SND_HDA_GENERIC=y
# CONFIG_SND_HDA_POWER_SAVE is not set
# CONFIG_SND_HDSP is not set
diff --git a/projects/Ultra/linux/linux.x86_64.conf b/projects/Ultra/linux/linux.x86_64.conf
index 0dfa3e28b7..ef80a35608 100644
--- a/projects/Ultra/linux/linux.x86_64.conf
+++ b/projects/Ultra/linux/linux.x86_64.conf
@@ -184,7 +184,6 @@ CONFIG_SLUB_DEBUG=y
# CONFIG_COMPAT_BRK is not set
# CONFIG_SLAB is not set
CONFIG_SLUB=y
-# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
CONFIG_HAVE_OPROFILE=y
# CONFIG_KPROBES is not set
@@ -373,7 +372,7 @@ CONFIG_HZ_300=y
# CONFIG_HZ_1000 is not set
CONFIG_HZ=300
CONFIG_SCHED_HRTICK=y
-# CONFIG_KEXEC is not set
+CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not set
CONFIG_PHYSICAL_START=0x1000000
# CONFIG_RELOCATABLE is not set
@@ -427,7 +426,6 @@ CONFIG_CPU_FREQ=y
CONFIG_CPU_FREQ_TABLE=y
# CONFIG_CPU_FREQ_STAT is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set
-# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set
# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set
CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set