Browse Source

Merge branch 'master' into dev

bryan 2 years ago
parent
commit
a3d23a1d81
2 changed files with 6 additions and 5 deletions
  1. 1 1
      README.md
  2. 5 4
      installJRMC

+ 1 - 1
README.md

@@ -8,7 +8,7 @@ This program will install [JRiver Media Center](https://www.jriver.com/) (JRMC)
 
 Running `installJRMC` without any options will install the latest version of JRiver Media Center from the official JRiver repository (Ubuntu/Debian) or my [unofficial repository](https://repos.bryanroessler.com/jriver/) (Fedora/CentOS) using the system package manager (`--install repo`). If any other option is specified, then the default install method (i.e. `--install repo` or `--install local`) will need to be explicitly specified. This makes it possible to install services and containers independent of MC.
 
-**Note**: `installJRMC` does not perform library migrations. Before moving to a new major version (i.e. v28->v29), you should first [perform a library backup](https://wiki.jriver.com/index.php/Library_Backup), install the new major version, and then [restore the library](https://wiki.jriver.com/index.php/Restore_a_library).
+**Note**: As of 1.0b14 major version library migrations are performed if the destination config directory `$HOME/.jriver/Media Center XX` is missing for major release `XX`. However, it is still a good idea to create a manual library backup before migrating major versions.
 
 ## Options
 

+ 5 - 4
installJRMC

@@ -18,7 +18,7 @@
 
 shopt -s extglob
 
-declare -g SCRIPTVERSION="1.0b13"
+declare -g SCRIPTVERSION="1.0b15"
 declare -g OUTPUTDIR="$PWD/output"
 declare -g CREATEREPO_WEBROOT="/var/www/jriver"
 declare -g USER="${SUDO_USER:-$USER}"
@@ -1393,6 +1393,7 @@ disableCoW() {
     declare mc_user_path="$HOME/.jriver"
 
     for dir in "$mc_system_path" "$mc_user_path"; do
+        ! [[ -d "$dir" ]] && return
         if [[ $(stat -f -c %T "$dir") == "btrfs" ]] &&
         ! lsattr -d "$dir" | cut -f1 -d" " | grep -q C; then
             echo "Disabling CoW for $dir"
@@ -1409,14 +1410,14 @@ migrateLibrary() {
     debug "Running: ${FUNCNAME[0]}"
 
     declare mc_user_path="$HOME/.jriver"
-
     declare current_config_path="$mc_user_path/Media Center $MVERSION"
     declare previous_config_path="$mc_user_path/Media Center $(( MVERSION - 1 ))"
 
     if [[ ! -d "$current_config_path" ]] &&
-    [[ -d "$previous_config_path" ]]; then
+    [[ -d "$previous_config_path" ]] &&
+    mkdir -p "$current_config_path"; then
         echo "Migrating $previous_config_path to $current_config_path"
-        rsync -a "$previous_config_path" "$current_config_path" &>/dev/null
+        cp -a "$previous_config_path"/* "$current_config_path" &>/dev/null
     fi
 }