about summary refs log tree commit diff stats
path: root/pkgs/by-name/sp/spodi/spodi.sh
blob: 475fd48a6acf49952aef750d25a5ca074a365b2f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#!/usr/bin/env dash

# shellcheck source=/dev/null
SHELL_LIBRARY_VERSION="2.1.2" . %SHELL_LIBRARY_PATH

# these are used in version()
# shellcheck disable=2034
AUTHORS="Soispha"
# shellcheck disable=2034
YEARS="2023"

# load dependencies
. ./sh/update.sh
. ./sh/download.sh

help() {
    cat <<EOF
This is a small wrapper around downloading things from spotify

USAGE:
    $NAME [OPTIONS] COMMAND

OPTIONS:
    --help      | -h
                            Display this help and exit.

    --version   | -v
                            Display version and copyright information and exit.
COMMANDS:
    update
                            Read the artist.conf file and download all newly released things

    download URL
                            Download a specific url to the DOWNLOAD_DIRECTORY
EOF
}

for arg in "$@"; do
    case "$arg" in
    "--help" | "-h")
        help
        exit 0
        ;;
    "--version" | "-v")
        version
        exit 0
        ;;
    esac
done

case "$1" in
"update")
    shift 1
    update
    exit 0
    ;;
"download")
    shift 1
    download_url="$1"
    [ -z "$download_url" ] && die "You need to provide a download url"
    download_to_down "$download_url"
    exit 0
    ;;
*)
    die "Command '$1' is not know"
    help
    exit 1
    ;;
esac

# vim: ft=sh