diff options
Diffstat (limited to 'templates/srv/radio/create-playlist.sh.j2')
-rw-r--r-- | templates/srv/radio/create-playlist.sh.j2 | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/templates/srv/radio/create-playlist.sh.j2 b/templates/srv/radio/create-playlist.sh.j2 new file mode 100644 index 0000000..d596e8a --- /dev/null +++ b/templates/srv/radio/create-playlist.sh.j2 @@ -0,0 +1,22 @@ +#!/bin/bash + +DIR="{{ radio_music_dir }}" + +> "${DIR}/playlist.txt" +for i in "${DIR}"/tracks/*.mp3; do + title="$(basename "${i}" .mp3)" + printf "%s\n" "annotate:title=\"${title}\":${i}" >> "${DIR}/playlist.txt" +done + +if id -u icecast2 >/dev/null 2>&1 && getent group icecast >/dev/null 2>&1; then + chown -R icecast2:icecast "${DIR}" + printf "%s\n" "[inf] chowned ${DIR} with icecast2:icecast" +else + printf "%s\n" "[err] user or group icecast2:icecast does not exist, skipping chown" +fi + +if systemctl is-active liquidsoap-radio.service; then + systemctl restart liquidsoap-radio.service +else + printf "%s\n" "[err] liquidsoap-radio.service is not active, skipping restart" +fi |