Annotation of plm/genpl, revision 1.1.1.1
1.1 snw 1: #!/usr/bin/env bash
2:
3:
4: if [[ $# != 1 ]]
5: then
6: echo "genpl: must specify specfile"
7: exit 1
8: fi
9:
10: LISTNAME="$1"
11: SPECFILE="${HOME}/.config/genpl/${LISTNAME}"
12:
13: if [[ ! -f "${SPECFILE}" ]]
14: then
15: echo "genpl: ${SPECFILE} not found"
16: exit 2
17: fi
18:
19: BASEDIR=$(cat "${SPECFILE}" | grep -E "^BASEDIR:" | cut -d: -f2)
20: BASELIST="BASE${LISTNAME}"
21: INLISTS=$(cat "${SPECFILE}" | grep -E "^LISTS:" | cut -d: -f2)
22:
23: if [[ -f "${BASELIST}" ]]
24: then
25: LISTS="${BASELIST},${INLISTS}"
26: else
27: LISTS="${INLISTS}"
28: fi
29:
30: IFS=","
31: for LIST in $LISTS
32: do
33: OLIST="${OLIST} ${LIST}.m3u"
34: done
35: unset IFS
36:
37: OLIST=$(echo "${OLIST}" | tr ' ' ',')
38: LISTS="${OLIST:1}"
39:
40: if [[ ! -d "${BASEDIR}" ]]
41: then
42: echo "genpl: ${BASEDIR} base directory not found"
43: exit 3
44: fi
45:
46: pushd "${BASEDIR}" &> /dev/null
47:
48: echo
49: echo "Creating playlist ${LISTNAME} from:"
50: for LIST in $(echo ${OLIST} | tr ',' ' ')
51: do
52: echo " * ${LIST}"
53: done
54:
55: pl --merge --input="${LISTS}" --output="${LISTNAME}.m3u" --overwrite
56:
57: popd &> /dev/null
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>