Read the statement by Michael Teeuw here.
How to update.
-
@wjdw87 The readme.md is also downloaded with the MirrorMirror code when you run the installation command. You’ll find it on your Pi at
~/MagicMirror/README.md
. -
@bhepler said in How to update.:
@wjdw87 The readme.md is also downloaded with the MirrorMirror code when you run the installation command. You’ll find it on your Pi at
~/MagicMirror/README.md
.thanks
-
But is there a way (a sh-script) to update MM and all (!) of the installed (different) modules in a batch. I now do have to go through all the directories recursively. That takes lots of time and is quite annoying. Any idea?
Thx Jimmy -
I use this script, which comes with no guarantee:
#!/usr/bin/env bash cd /home/pi/MagicMirror echo "######### CHECKING MAGIC MIRROR ##########" git fetch if [ $(git rev-parse HEAD) != $(git rev-parse @{u}) ] then echo "######### UPGRADING MAGIC MIRROR #########" git pull npm install else echo "######## NO UPGRADE REQUIRED #########" fi echo "" cd modules for directory in *; do if [[ -d ${directory} && ${directory} != "node_modules" && ${directory} != "default" ]]; then echo "######### CHECKING ${directory} ##########" cd ${directory} git fetch if [ $(git rev-parse HEAD) != $(git rev-parse @{u}) ]; then echo "######### UPGRADING ${directory} #########" git pull if [[ -e "package.json" && -f "package.json" ]]; then npm install fi else echo "######## NO UPGRADE REQUIRED #########" fi echo "" cd .. fi done
-
@izanbard Thank you for this! :)
-
Thank You, awesome !
-
This post is deleted! -
@izanbard Hello, added a restart of the mirror (via pm2) if an npm install has been done and also added “–production” to the npm install command. Sometimes the module-developer have lot’s of extra stuff added in the package list just for developing. :)
I’m currently now running this script via CRON every night. :)#!/usr/bin/env bash updated=false cd /home/pi/MagicMirror echo "Checking for MagicMirror updates." git fetch if [ $(git rev-parse HEAD) != $(git rev-parse @{u}) ] then echo "Found, updating..." git pull npm install updated=true echo "Update done." else echo "No update needed." fi echo "" cd modules for directory in *; do if [[ -d ${directory} && ${directory} != "node_modules" && ${directory} != "default" ]]; then echo "Checking for ${directory} updates." cd ${directory} git fetch if [ $(git rev-parse HEAD) != $(git rev-parse @{u}) ]; then echo "Found, updating ${directory}..." git pull if [[ -e "package.json" && -f "package.json" ]]; then echo "package.joson changed for ${directory}, installing..." npm install --production updated=true echo "Update done." fi else echo "No update needed." fi echo "" cd .. fi done if $updated; then echo "Restart of MM needed, restarting now." pm2 restart mm fi echo "All done. :)"
-
@izanbard Thank you!!
-
thank u!