mirror of
https://github.com/Dummi26/musicdb.git
synced 2025-03-10 14:13:53 +01:00
70 lines
2.2 KiB
Bash
70 lines
2.2 KiB
Bash
![]() |
#!/usr/bin/sh
|
||
|
DBDIR=$1
|
||
|
MUSICDIR=$2
|
||
|
|
||
|
if [ ! -z "$VISUAL" ]; then
|
||
|
EDITOR="$VISUAL"
|
||
|
fi
|
||
|
|
||
|
echo "usage: ./setup.sh dbdir music-dir"
|
||
|
|
||
|
if [ ! -z "$DBDIR" ]; then
|
||
|
echo "dbdir: $DBDIR"
|
||
|
if [ ! -z "$MUSICDIR" ]; then
|
||
|
echo "music-dir: $MUSICDIR"
|
||
|
|
||
|
# set commands for filldb/server/client
|
||
|
if [ ! -f "$CMD_FILLDB" ]; then
|
||
|
CMD_FILLDB="musicdb-filldb/target/release/musicdb-filldb"
|
||
|
if [ ! -f "$CMD_FILLDB" ]; then
|
||
|
CMD_FILLDB="bin/musicdb-filldb"
|
||
|
if [ ! -f "$CMD_FILLDB" ]; then
|
||
|
echo "No command for filldb found, set CMD_FILLDB env var to the executable file or run \`cargo build --release\` in \`./musicdb-filldb\`."
|
||
|
return
|
||
|
fi
|
||
|
fi
|
||
|
fi
|
||
|
if [ ! -f "$CMD_SERVER" ]; then
|
||
|
CMD_SERVER="musicdb-server/target/release/musicdb-server"
|
||
|
if [ ! -f "$CMD_SERVER" ]; then
|
||
|
CMD_SERVER="bin/musicdb-server"
|
||
|
if [ ! -f "$CMD_SERVER" ]; then
|
||
|
echo "No command for server found, set CMD_SERVER env var to the executable file or run \`cargo build --release\` in \`./musicdb-server\`."
|
||
|
return
|
||
|
fi
|
||
|
fi
|
||
|
fi
|
||
|
if [ ! -f "$CMD_CLIENT" ]; then
|
||
|
CMD_CLIENT="musicdb-client/target/release/musicdb-client"
|
||
|
if [ ! -f "$CMD_CLIENT" ]; then
|
||
|
CMD_CLIENT="bin/musicdb-client"
|
||
|
if [ ! -f "$CMD_CLIENT" ]; then
|
||
|
echo "No command for client found, set CMD_CLIENT env var to the executable file or run \`cargo build --release\` in \`./musicdb-client\`."
|
||
|
return
|
||
|
fi
|
||
|
fi
|
||
|
fi
|
||
|
echo "CMD_FILLDB: $CMD_FILLDB (set CMD_FILLDB env var to override)"
|
||
|
echo "CMD_SERVER: $CMD_SERVER (set CMD_SERVER env var to override)"
|
||
|
echo "CMD_CLIENT: $CMD_CLIENT (set CMD_CLIENT env var to override)"
|
||
|
echo "EDITOR: $EDITOR (set EDITOR or VISUAL env var to override)"
|
||
|
|
||
|
# create DBDIR
|
||
|
mkdir "$DBDIR"
|
||
|
|
||
|
# create DBDIR/dbfile
|
||
|
echo
|
||
|
"$CMD_FILLDB" "$MUSICDIR" || return
|
||
|
mv "dbfile" "$DBDIR" || return
|
||
|
|
||
|
# start server
|
||
|
"$CMD_SERVER" "$DBDIR" "$MUSICDIR" --tcp 0.0.0.0:26002 &
|
||
|
sleep 1
|
||
|
|
||
|
# start client
|
||
|
# if starting fails once, prompt user to provide a font, then try again
|
||
|
"$CMD_CLIENT" 0.0.0.0:26002 gui || ("$EDITOR" "~/.config/musicdb-client/config_gui.toml"; "$CMD_CLIENT" 0.0.0.0:26002 gui) || return
|
||
|
|
||
|
fi
|
||
|
fi
|