diff options
author | William Hubbs <w.d.hubbs@gmail.com> | 2018-03-16 14:33:01 -0500 |
---|---|---|
committer | William Hubbs <w.d.hubbs@gmail.com> | 2018-03-16 14:33:01 -0500 |
commit | 6b475ab26992f1dd8815700828df46abc4b71d27 (patch) | |
tree | ce45102397dea102c222b3d0381d002d3e51a7e9 /init.d/modules-load.in | |
parent | b302b0c094c2c99b810aec9c8877adcd1effabac (diff) |
init.d/modules: add code from modules-load service
There is no reason for these to be separate services. I did add a
provide so that we don't break backward compatibility.
Diffstat (limited to 'init.d/modules-load.in')
-rw-r--r-- | init.d/modules-load.in | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/init.d/modules-load.in b/init.d/modules-load.in deleted file mode 100644 index f71f704d..00000000 --- a/init.d/modules-load.in +++ /dev/null @@ -1,72 +0,0 @@ -#!@SBINDIR@/openrc-run -# Copyright (c) 2016 The OpenRC Authors. -# See the Authors file at the top-level directory of this distribution and -# https://github.com/OpenRC/openrc/blob/master/AUTHORS -# -# This file is part of OpenRC. It is subject to the license terms in -# the LICENSE file found in the top-level directory of this -# distribution and at https://github.com/OpenRC/openrc/blob/master/LICENSE -# This file may not be copied, modified, propagated, or distributed -# except according to the terms contained in the LICENSE file. - -description="Loads a list of modules from systemd-compatible locations." - -depend() -{ - keyword -docker -lxc -openvz -prefix -systemd-nspawn -vserver -} - -find_modfiles() -{ - local dirs="/usr/lib/modules-load.d /run/modules-load.d /etc/modules-load.d" - local basenames files fn x y - for x in $dirs; do - [ ! -d $x ] && continue - for y in $x/*.conf; do - [ -f $y ] && basenames="${basenames}\n${y##*/}" - done - done - basenames=$(printf "$basenames" | sort -u) - for x in $basenames; do - for y in $dirs; do - [ -r $y/$x ] && - fn=$y/$x - done - files="$files $fn" - done - echo $files -} - -load_modules() -{ - local file m modules rc x - file=$1 - [ -z "$file" ] && return 0 - while read m x; do - case $m in - \;*) continue ;; - \#*) continue ;; - *) modules="$modules $m" - ;; - esac - done < $file - for x in $modules; do - ebegin "Loading module $x" - case "$RC_UNAME" in - FreeBSD) kldload "$x"; rc=$? ;; - Linux) modprobe --use-blacklist -q "$x"; rc=$? ;; - *) ;; - esac - eend $rc "Failed to load $x" - done -} - -start() -{ - local x - files=$(find_modfiles) - for x in $files; do - load_modules $x - done - return 0 -} |