Browse Source

dracut-functions: new function: inst_any [-d dest] f1 [f2 [f3 ...]]

master
Amadeusz Żołnowski 14 years ago committed by Harald Hoyer
parent
commit
3378a54f15
  1. 28
      dracut-functions

28
dracut-functions

@ -537,6 +537,34 @@ inst_hook() { @@ -537,6 +537,34 @@ inst_hook() {
inst_simple "$3" "/lib/dracut/hooks/${1}/${2}${3##*/}"
}

# install any of listed files
#
# If first argument is '-d' and second some destination path, first accessible
# source is installed into this path, otherwise it will installed in the same
# path as source. If none of listed files was installed, function return 1.
# On first successful installation it returns with 0 status.
#
# Example:
#
# inst_any -d /bin/foo /bin/bar /bin/baz
#
# Lets assume that /bin/baz exists, so it will be installed as /bin/foo in
# initramfs.
inst_any() {
local to f

[[ $1 = '-d' ]] && to="$2" && shift 2

for f in "$@"; do
if [[ -e $f ]]; then
[[ $to ]] && inst "$f" "$to" && return 0
inst "$f" && return 0
fi
done

return 1
}

dracut_install() {
local _optional=no
if [[ $1 = '-o' ]]; then

Loading…
Cancel
Save