diff options
author | Nicola Hinssen | 2017-10-22 19:04:16 +0200 |
---|---|---|
committer | Nicola Hinssen | 2017-10-22 19:04:16 +0200 |
commit | bc1beb3844c63c455d7853609c321cbbb61aeec9 (patch) | |
tree | bce9b361d3e3ddd63de0dba72e35d11861c4012d /emby-migrate-database | |
download | aur-bc1beb3844c63c455d7853609c321cbbb61aeec9.tar.gz |
Initial
Diffstat (limited to 'emby-migrate-database')
-rw-r--r-- | emby-migrate-database | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/emby-migrate-database b/emby-migrate-database new file mode 100644 index 000000000000..3e102124a9c2 --- /dev/null +++ b/emby-migrate-database @@ -0,0 +1,56 @@ +#!/bin/sh + +USER='emby' +GROUP='emby' + +usage() { + echo 'Usage: emby-migrate-database {-u user} {-g group} old_path_full new_path_full' + echo 'Default user: emby' + echo 'Default group: emby' +} + +migrate() { + if [[ $1 && $2 ]]; then + if [[ -f $1/data/library.db ]]; then + if [[ ! -e $2 ]]; then + mkdir -p $2 + fi + if [[ -d $2 ]]; then + if [[ -z $(ls $2) ]]; then + cp -r $1/* $2/ + sqlite3 $2/data/library.db "UPDATE TypedBaseItems SET data = CAST(REPLACE(CAST(data AS TEXT), '$1', '$2') AS BLOB);" + chown $USER:$GROUP -R $2 + echo "Migration complete. You can now delete $1." + else + echo "$2 is not empty. Aborting." + fi + else + echo "$2 is not a directory. Aborting." + fi + else + echo "$1 does not contain an emby database. Aborting." + fi + else + usage + fi +} + +if [[ $1 == '--help' ]]; then + usage +else + while getopts 'u:g:' opt; do + case $opt in + u) + USER=$OPTARG + ;; + g) + GROUP=$OPTARG + ;; + \?) + usage + ;; + esac + done + shift $((OPTIND-1)) + migrate $@ +fi |