diff options
Diffstat (limited to 'sh')
| -rw-r--r-- | sh/Makefile | 2 | ||||
| -rw-r--r-- | sh/functions.sh | 6 | ||||
| -rwxr-xr-x | sh/rc-functions.sh | 17 | 
3 files changed, 15 insertions, 10 deletions
diff --git a/sh/Makefile b/sh/Makefile index ac50fa90..aa9a4b45 100644 --- a/sh/Makefile +++ b/sh/Makefile @@ -1,4 +1,4 @@ -DIR   = /$(LIB)/rcscripts/sh +DIR   = $(RC_LIB)/sh  FILES = functions.sh init-functions.sh init-common-post.sh \  	rc-functions.sh rc-mount.sh  EXES  = gendepends.sh net.sh rc-mount.sh rc-help.sh runscript.sh diff --git a/sh/functions.sh b/sh/functions.sh index 5b4f8d91..495f2bd1 100644 --- a/sh/functions.sh +++ b/sh/functions.sh @@ -113,9 +113,9 @@ fi  # This should solve both /sbin and /usr/sbin not present when  # doing 'su -c foo', or for something like:  PATH= rcscript start  case "${PATH}" in -	/lib/rcscripts/bin:/bin:/sbin:/usr/bin:/usr/sbin) ;; -	/lib/rcscripts/bin:/bin:/sbin:/usr/bin:/usr/sbin:*) ;; -	*) export PATH="/lib/rcscripts/bin:/bin:/sbin:/usr/bin:/usr/sbin:${PATH}" ;; +	/lib/rc/bin:/bin:/sbin:/usr/bin:/usr/sbin) ;; +	/lib/rc/bin:/bin:/sbin:/usr/bin:/usr/sbin:*) ;; +	*) export PATH="/lib/rc/bin:/bin:/sbin:/usr/bin:/usr/sbin:${PATH}" ;;  esac  for arg in "$@" ; do diff --git a/sh/rc-functions.sh b/sh/rc-functions.sh index a1a7644b..79f479fc 100755 --- a/sh/rc-functions.sh +++ b/sh/rc-functions.sh @@ -2,12 +2,17 @@  # Distributed under the terms of the GNU General Public License v2  has_addon() { -	[ -e "${RC_LIBDIR}/addons/$1.sh" ] +	[ -e "${RC_LIBDIR}/addons/$1.sh" ] || [ -e /lib/rcscripts/addons/"$1".sh ]  }  import_addon() { -	has_addon "$1" || return 1 -	. "${RC_LIBDIR}/addons/$1.sh" +	if [ -e "${RC_LIBDIR}/addons/$1.sh" ]; then +		. "${RC_LIBDIR}/addons/$1.sh" +	elif [ -e /lib/rcscripts/addons/"$1".sh ]; then +		. /lib/rcscripts/addons/"$1".sh +	else +		return 1 +	fi  }  start_addon() { @@ -22,7 +27,7 @@ is_net_fs() {  	[ -z "$1" ] && return 1  	local t=$(mountinfo --fstype "$1") -	for x in ${RC_NET_FS_LIST} ; do +	for x in ${RC_NET_FS_LIST}; do  		[ "${x}" = "${t}" ] && return 0  	done  	return 1 @@ -38,12 +43,12 @@ get_bootparam() {  	[ -z "${match}" -o ! -r /proc/cmdline ] && return 1  	set -- $(cat /proc/cmdline) -	while [ -n "$1" ] ; do +	while [ -n "$1" ]; do  		case "$1" in  			gentoo=*)  				local params="${1##*=}"  				local IFS=, x= -				for x in ${params} ; do +				for x in ${params}; do  					[ "${x}" = "${match}" ] && return 0  				done  				;;  | 
