#!/bin/sh
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
# ex: ts=8 sw=4 sts=4 et filetype=sh
#
# Licensed under the GPLv2+
#
# Copyright 2008-2010, Red Hat, Inc.
# Harald Hoyer <harald@redhat.com>

type getarg >/dev/null 2>&1 || . /lib/dracut-lib.sh

while [ $# -gt 0 ]; do
    case "$1" in
        --onetime)
            onetime="yes";;
        --settled)
            settled="/settled";;
        --unique)
            unique="yes";;
        --name)
            name="$2";shift;;
        *)
            break;;
    esac
    shift
done

if [ -z "$unique" ]; then
    job="${name}$$"
else
    job="${name:-$1}"
    job=${job##*/}
fi


if [ -n "$onetime" ]; then
    { 
        echo '[ -e "$job" ] && rm "$job"'
        echo "$@" 
    } > "/tmp/$$-${job}.sh"
else
    echo "$@" > "/tmp/$$-${job}.sh"
fi

mv -f "/tmp/$$-${job}.sh" "$hookdir/initqueue${settled}/${job}.sh"
[ -z "$settled" ] && >> $hookdir/initqueue/work

