summaryrefslogtreecommitdiffstats
path: root/install
diff options
context:
space:
mode:
authorThomas Bächler <thomas@archlinux.org>2011-07-03 14:11:09 +0200
committerThomas Bächler <thomas@archlinux.org>2011-07-03 14:11:09 +0200
commit179d4d5db40ec89144fbb11b0ef2e23105466890 (patch)
tree88ad0ffb4c48f422eed5661c834548aec5cac1ff /install
parent320ef8bdebf867f18cf475bcf46dd578c6295fd7 (diff)
parenta079f4f2b3607ae4fcfe72dba913d6589fa35f4c (diff)
downloadmkinitcpio-179d4d5db40ec89144fbb11b0ef2e23105466890.tar.gz
mkinitcpio-179d4d5db40ec89144fbb11b0ef2e23105466890.tar.xz
Merge branch 'working' of https://github.com/falconindy/mkinitcpio into working
Diffstat (limited to 'install')
-rw-r--r--install/base17
1 files changed, 15 insertions, 2 deletions
diff --git a/install/base b/install/base
index 446167c..64ef39a 100644
--- a/install/base
+++ b/install/base
@@ -13,8 +13,21 @@ build() {
add_file "/lib/initcpio/init" "/init"
add_file "/etc/modprobe.d/usb-load-ehci-first.conf"
- # private API call is required here
- _add_file "/config" "$CONFIG" 644
+ # write a new config file. re-source the config as we can't guarantee the
+ # environment hasn't been modified, but subshell it so it doesn't disturb
+ # anyone else.
+ (
+ . "$CONFIG"
+
+ # sanitize of any extra whitespace
+ read -r -a modules <<< "$MODULES"
+ read -r -a hooks <<< "$HOOKS"
+
+ {
+ (( ${#modules[*]} )) && printf 'MODULES="%s"\n' "${modules[*]}"
+ (( ${#hooks[*]} )) && printf 'HOOKS="%s"\n' "${hooks[*]}"
+ } >"$BUILDROOT/config"
+ )
}
help() {