scripts/lib.sh
author Tero Marttila <terom@fixme.fi>
Thu, 05 Jan 2012 14:28:31 +0200
changeset 7 ab661ceed4dc
parent 1 51b1db97f448
child 8 ba98eb53344a
permissions -rw-r--r--
pkvlm-create: logging and command-line options
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     1
## library functions
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
     2
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
     3
LOG_DEBUG=
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
     4
LOG_CMD=y
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
     5
LOG_INFO=y
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
     6
LOG_WARN=y
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
     7
LOG_ERROR=y
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
     8
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
     9
function log_debug () {
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    10
    [ $LOG_DEBUG ] && echo "... $@" >&2
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    11
}
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    12
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    13
function log_info () {
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    14
    [ $LOG_INFO ] && echo "--- $@" >&2
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    15
}
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    16
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    17
function log_cmd () {
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    18
    [ $LOG_CMD ] && echo ">>> $@" >&2
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    19
}
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    20
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    21
function log_warn () {
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    22
    [ $LOG_WARN ] && echo "XXX $@" >&2
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    23
}
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    24
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    25
function log_error () {
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    26
    [ $LOG_ERROR ] && echo "!!! $@" >&2
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    27
}
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    28
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    29
function die () {
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    30
    log_error "$@"
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    31
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    32
    exit 1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    33
}
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    34
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    35
# Execute command verbosely, and exit on failure
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    36
CMD_MOCK=
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    37
CMD_PROMPT=y
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    38
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    39
function cmd () {
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    40
    log_cmd "$@"
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    41
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    42
    [ $CMD_MOCK ] && return 0
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    43
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    44
    eval "$@" # return $?
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    45
}
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    46
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    47
function cmd_confirm () {
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    48
    [ $CMD_PROMPT ] && read -p "Confirm: $1"
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    49
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    50
    cmd "$@"
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    51
}
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
    52
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    53
function expand_MB () {
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    54
    local size=${1^}
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    55
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    56
    case ${size: -1} in 
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    57
        G)
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    58
            size=$(( ${size%G} * 1024))
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    59
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    60
            ;;
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    61
    esac
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    62
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    63
    echo $size
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    64
}
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    65
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    66
function extract_iso () {
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    67
    iso=$1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    68
    dst=$2
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    69
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    70
    [ ! -r "$iso" ] && die "Given .iso is not readable: $iso"
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    71
    [ -z "$dst" ] && die "Must give destination: $dst"
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    72
    [ -e "$dst" ] && die "Given destination already exists: $dst"
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    73
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    74
    # temporary mount
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    75
    mnt=$(mktemp -d mnt.XXXX)
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    76
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    77
    # clean on exit
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    78
    function cleanup () {
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    79
        if mountpoint -q $mnt; then
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    80
           sudo umount $mnt
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    81
        fi
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    82
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    83
        [ -d $mnt ] && rmdir $mnt
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    84
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    85
        return $1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    86
    }
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    87
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    88
    # loop-mount
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    89
    cmd sudo mount -o loop $iso $mnt || cleanup 1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    90
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    91
    # copy
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    92
    cmd cp -r $mnt $dst || cleanup 1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    93
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    94
    # done, cleanup
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    95
    cleanup 0
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    96
}
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    97
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    98
function my_md5sum () {
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
    99
    /usr/bin/md5sum $1 | (
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   100
        read md5sum path
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   101
        echo $md5sum
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   102
    )
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   103
}
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   104
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   105
function expand_line () {
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   106
    local line=$1
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   107
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   108
    # evaluate {...} expressions
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   109
    # a slight hack, but it works \o/
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   110
    # http://stackoverflow.com/questions/415677/how-to-replace-placeholders-in-a-text-file/7633579#7633579
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   111
    line="${line//\\/\\\\}"
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   112
    line="${line//\"/\\\"}"
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   113
    line="${line//\`/\\\`}"
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   114
    line="${line//\$/\\\$}"
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   115
    line="${line//{/\${}"   # This is just for vim: } "
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   116
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   117
    # log_debug "($line)" >&2
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   118
    eval "echo \"$line\""
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   119
}
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   120
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   121
function expand_template () {
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   122
    local tpl=$1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   123
    local out=$2
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   124
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   125
    local linecount=0
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   126
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   127
    # read in each line at a time
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   128
    while IFS='' read -r line; do
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   129
        linecount=$((linecount + 1))
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   130
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   131
        if [ "${line:0:1}" == "#" ]; then
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   132
            # ignore comments; pass through as-is
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   133
            echo "$line"
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   134
        
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   135
        else
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   136
            expand_line "$line" || die "Error at $tpl:$linecount: $line"
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   137
        fi
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   138
 
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   139
    done < $tpl > $out
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   140
}
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   141
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   142
# Recursive expand_template files from src -> dst
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   143
# XXX: not used
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   144
function expand_tree () {
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   145
    local src=$1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   146
    local dst=$2
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   147
    local filter=${3:-'*'}
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   148
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   149
    for path in ${src}/${filter}; do
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   150
        local name=$(basename $path)
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   151
        local target=$dst/$name
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   152
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   153
        if [ -d $path ]; then
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   154
            log_debug "expand_tree: $path -> $target"
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   155
            expand_tree $path $target $filter
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   156
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   157
        elif [ -f $path ]; then
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   158
            log_debug "expand_file: $path -> $target"
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   159
            expand_file $path $target
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   160
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   161
        else
7
ab661ceed4dc pkvlm-create: logging and command-line options
Tero Marttila <terom@fixme.fi>
parents: 1
diff changeset
   162
            log_warn "ignore weird file: $path"
1
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   163
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   164
        fi
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   165
    done
51b1db97f448 yay customized preseeds + functional pkvlm-create
Tero Marttila <terom@fixme.fi>
parents:
diff changeset
   166
}