diff options
author | Daniel Drake <dsd@laptop.org> | 2012-07-22 12:40:25 (GMT) |
---|---|---|
committer | Daniel Drake <dsd@laptop.org> | 2012-07-22 12:40:25 (GMT) |
commit | 03e00e5c1f6bffa5c111489fc64c72cf2fe5affa (patch) | |
tree | 37c991fd175e0af96fa8117b8b557fb05cacdc40 | |
parent | d7f33a794b02055adaa8692f8504623f75ce41c3 (diff) |
custom_packages: fix package list generation
Fix some copy/paste errors in the last commit, and fix for the
case when newlines are present in the option value.
-rw-r--r-- | modules/custom_packages/kspkglist.70.extras.sh | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/modules/custom_packages/kspkglist.70.extras.sh b/modules/custom_packages/kspkglist.70.extras.sh index 921fc1f..03be524 100644 --- a/modules/custom_packages/kspkglist.70.extras.sh +++ b/modules/custom_packages/kspkglist.70.extras.sh @@ -3,26 +3,24 @@ . $OOB__shlib -oIFS=$IFS -IFS=$'\n' -for line in $(env); do - [[ "${line:0:34}" == "CFG_custom_packages__add_packages_" || "${line}" == "CFG_custom_packages__add_packages" ]] || continue +while IFS= read -r -d '' line; do + [[ "${line:0:34}" == "CFG_custom_packages__add_packages_" || "${line:0:34}" == "CFG_custom_packages__add_packages=" ]] || continue pkgs=${line#*=} - oIFS2=$IFS + oIFS=$IFS IFS=$'\n\t, ' for pkg in $pkgs; do echo "$pkg" done - IFS=$oIFS2 -done + IFS=$oIFS +done < <(env --null) -for line in $(env); do - [[ "${line:0:34}" == "CFG_custom_packages__add_packages_" || "${line}" == "CFG_custom_packages__add_packages" ]] || continue +while IFS= read -r -d '' line; do + [[ "${line:0:34}" == "CFG_custom_packages__del_packages_" || "${line:0:34}" == "CFG_custom_packages__del_packages=" ]] || continue pkgs=${line#*=} - oIFS2=$IFS + oIFS=$IFS IFS=$'\n\t, ' for pkg in $pkgs; do - echo "$pkg" + echo "-$pkg" done - IFS=$oIFS2 -done + IFS=$oIFS +done < <(env --null) |