Christian Knorr schrieb: > Am Samstag 05 Juni 2010 15:15:07 schrieb Florian Gross: > > >> Christian Knorr glaubte zu wissen: >> >>> Mach doch mal ein JOSM Update. Wenn Du das komfortabel aus der Konsole >>> heraus machen willst empfehle ich Dir ein Script was ich geschrieben >>> habe: >>> >>> cat /usr/bin/josmupdate >>> >> Schönes Script. >> >> Wenn ich mir ein paar Anmerkungen erlauben darf: >> > Klar, konstruktive Kritik immer erwünscht :) > > >>> #!/bin/bash >>> >>> link="http://josm.openstreetmap.de/" >>> # josmdownload="http://josm.openstreetmap.de/josm-tested.jar" >>> josmdownload="http://josm.openstreetmap.de/josm-latest.jar" >>> tmpfile="/tmp/josmnew.html" >>> rm -f $tmpfile >>> actual=`josm --help |grep "Last Changed Rev: " |cut -d" " -f4` >>> wget $link -qO $tmpfile >>> # newest=`cat $tmpfile | grep "tested JOSM" |cut -d" " -f7` >>> newest=`cat $tmpfile | grep "latest JOSM" |cut -d" " -f7` >>> >> Die aktuellen Versionen sind unter http://josm.openstreetmap.de/version >> verzeichnet: >> >> flor...@florian:~> lynx -dump http://josm.openstreetmap.de/version >> josm-tested.jar: 3208 >> josm-latest.jar: 3312 >> > Gut, das kannte ich noch nicht. Gefällt mir, weil ich erst eben -f8 in -f7 > ändern musste. Das dürfte mit Deiner Lösung besser gehen. > > >>> if [ $actual != $newest ]; then >>> echo "Es gibt eine neue Version. Alt=$actual, Neu=$newest. Es >>> wird upgedatet." sudo mv "/usr/share/josm/josm-latest.jar" >>> "/usr/share/josm/josm-"$actual".jar" sudo wget $josmdownload -O >>> "/usr/share/josm/josm-latest.jar" >>> >> Bei nur einem Benutzer auf dem Rechner würde ich nach ~/josm o.ä. >> herunterladen und mir die sudo- Aufrufe komlett sparen. >> > Das wiederum gefällt mir nicht, da ich dann die bin-Datei (die ja nur ein > java -jar usw. Aufruf ist) ändern. Das erspar' ich mir, da die Datei im > gleichen Ordner ist wo auch die Originale ist, aus dem deb-Paket. > >> Ich hab mir ein Startscript ~/bin/josmlatest.sh angelegt: >> > Den Ordner ~/bin gibts nicht, auch nicht den $PATH dorthin. Bevor ich mir das > einbaue habe ich das so gemacht. > Wenn ihr Linux konform gehen wollt gehört sowas unter /usr/local/ oder /opt/ , wobei /usr/local/bin bzw /opt/bin im Suchpfad Eurer shell stehen sollte. /usr/local/ bzw /opt können auch auf eine eigene Partition. Dann noch eine User-Gruppe: josm-update anlegen und der schreibrechte auf /usr/local/share/josm/ geben bzw das sticky-bit setzen. Somit können aller Benuter der Gruppe updaten und man braucht kein sudo.
Unter /bin gehört JOSM ganz bestimmt nicht. Ich habe sowohl latest wie auch tested unter /usr/local/share/josm/ liegen und das debian start-script habe ich kopiert und unter /usr/local/bin/ jeweils josm-latest bzw -tested genannt und auf das entsprechende .jar unter /usr/local/share/josm/ gelenkt. >> #!/bin/sh >> java -Xmx10G -d64 -jar /home/florian/bin/josm-latest.jar 2>&1 | tee >> /home/florian/bin/log/josm-`date -u +%F`.log >> > Jaja, einen auf dicke Hose machen, was? :D :D > Ich dümpel hier mir 1GB + 256MB rum und muss mir hin und wieder mal den SWAP > freischaufeln ;) kenne das Problem: exec $JAVACMD $JAVA_OPTS -Xmx250m -jar -Djosm.home=$HOME/.josm-tested /usr/local/share/josm/josm-tested.jar --maximize "$@" bzw noch den Schwanz: 2>&1 | tee $HOME/.josm-latest/log/josm-latest-`date -u +%F`.log oder gleich den log-daemon verwenden. Grüße Colliar _______________________________________________ Talk-de mailing list [email protected] http://lists.openstreetmap.org/listinfo/talk-de

