From 0b34e934c5ee509c197b159a51b14e9424f24470 Mon Sep 17 00:00:00 2001 From: Natanael Copa Date: Thu, 14 May 2015 09:11:39 +0000 Subject: main/openrc: add support for /etc/modules-load.d/*.conf This makes it convenient for scripts to generate module lists to load at boot, for example lm_sensors. (ref #4186) We also get some systemd compatibility: http://www.freedesktop.org/software/systemd/man/modules-load.d.html --- main/openrc/APKBUILD | 8 ++++---- main/openrc/modules.initd | 21 +++++++++++++-------- 2 files changed, 17 insertions(+), 12 deletions(-) (limited to 'main/openrc') diff --git a/main/openrc/APKBUILD b/main/openrc/APKBUILD index 642a09c295..68b239d200 100644 --- a/main/openrc/APKBUILD +++ b/main/openrc/APKBUILD @@ -2,7 +2,7 @@ pkgname=openrc pkgver=0.15.1 _ver=${pkgver/_git*/} -pkgrel=0 +pkgrel=1 pkgdesc="OpenRC manages the services, startup and shutdown of a host" url="http://git.overlays.gentoo.org/gitweb/?p=proj/openrc.git" arch="all" @@ -75,7 +75,7 @@ c2af5e52da614a6cef02d1e4d537e360 swap-umount-tmpfs.patch 2c9cf86959b9e51e662036b4e716617e hostname.initd 887eba592d487d6ffe2b42cfcd2813df hwdrivers.initd 41974f5408fd2e92892f891b58f2e49f keymaps.initd -0fe1b117960c2d6cee3b3fe40e5d2c76 modules.initd +0ece77eff8f163b36f6f0e7a6d422866 modules.initd a76e20fe5abea4449ed4e560a11334a4 modloop.initd 27c22aa4e5cdba499ac9a0b6b9385f7d networking.initd c1ec888202d868710b5749f7b217d1e3 modloop.confd" @@ -89,7 +89,7 @@ e869e2076c10a7134f5d9e4ae4a5d09ca35c6333d400556f1e329170d2e58066 0001-Force-roo e23db45e9399dab96d6c922af6c0cd6c243bbcc43756c845b70a9c7222a96313 hostname.initd 6cb4d9ea3ad562bcf2697f61f5a76a10481d23f5dead570f82eff576eaca5236 hwdrivers.initd 32562d39ade4092df8163c2e8cf0b31eeec06aa5713d343e1c487bfa6d9f7c84 keymaps.initd -74de22fda1386a3df5ac7112e26d347aa2d2eb213308116d9ea778a808e44e96 modules.initd +a145636e84547d76b8a188a94c0a76fcc266cd0f486be6cf24d2d74f03038118 modules.initd 61fb9e41c28f3632cc47e4ebd12fa856d0f80803aca1cd3446de3522829f308f modloop.initd 66151b5cc199485ddd188528a0f22f081994721f04c15b33df38f41a5d08ea78 networking.initd a5a0316cd59f5401b1d789bb466c98186201277ba6f014017b14965fcc10c254 modloop.confd" @@ -103,7 +103,7 @@ c5b8806c693b0ea48ff87e0e3669304f5c2f95954ad54814889047a933f367081a8c8d3bb771dd1e a6e2b44dd548a2470971a44b61ddaaec037438050fe3411b4ea3fe5d36e9ad4cf5b5e226f8d4aacb8f3a4535bb3f2090608275abd76a30de33eb3fadaefad5fd hostname.initd b51d95df7b692aaea3e14ed009d99b46b82500d505e2eeecb6a20136cee140aea4a7377a65ccc5c51fff64be7a50666be48616d179888eaeff9d35178a7a772b hwdrivers.initd 584ecbbcecb284527d7616790b6e337ace610e4b3cedf2993eca294bfbef54674aeaee3078b6c17d746a0c48b5a64a813c3534136915947e6f62a6fa206cd3ca keymaps.initd -d70fb144b6d4c60d7f977392be73929c3d4f24b5ee5f09340f15ce339523b6a8d87132b5e2a9c1f579c0bedbba96d407222fbb37776b1737863a00134e1d1106 modules.initd +7702e2704e4bcfad7c0736eec4cb0e8b20a685851afb5bd9022c5056ea78b8598a9402bae9644ae3268e2ff1c566e147cbb8d00e143491841682e4125fde2a75 modules.initd 992fbeded59679963a8d0154415c44949c7cd9719d85190ff57b3cf9db00c1daac090e1f45580cbf446e4d8fb65d21209d529e5709eb27ea2ecc31d75245f969 modloop.initd 9aeba2c5cae539f16185b82c6e6e84c1b044e838749b92e8994172296d86ec3f1c674d62d54db1e08a8191e513ddb0ab3509f50ccae6cb5d7ba5ff5a5b6abb46 networking.initd aa702a7da8e6c0e5d8738febaf6b4e4cb021b30ce5c1809b530abf2b36739079446b16fc054740da8d86ed099942cf5deed6597cedb64c058f3def587a8b4689 modloop.confd" diff --git a/main/openrc/modules.initd b/main/openrc/modules.initd index 7c85eec9aa..a9829f4bc5 100644 --- a/main/openrc/modules.initd +++ b/main/openrc/modules.initd @@ -8,16 +8,21 @@ depend() keyword -openvz -prefix -vserver -lxc } - start() { - if [ -f /etc/modules ] ; then - ebegin "Loading modules" - sed 's/\#.*//g' < /etc/modules | - while read module args - do + ebegin "Loading modules" + for f in /etc/modules \ + /etc/modules-load.d/*.conf \ + /run/modules-load.d/*.conf \ + /usr/lib/modules-load.d/*.conf \ + /lib/modules-load.d/*.conf; do + if ! [ -f "$f" ]; then + continue + fi + + sed 's/\#.*//g' < "$f" | while read module args; do modprobe -q $module $args done - eend $? - fi + done + eend $? } -- cgit v1.2.3