[[Vorlage(Ausbaufähig, "Installation nach '''/opt''' und Skripte sind noch nicht ausgereift.")]]
[[Vorlage(Getestet, bionic)]]
{{{#!vorlage Wissen
[:Pakete installieren: Installation von Programmen]
[:Packprogramme: Eine Archivdatei entpacken]
[:opt: Programme systemweit unter /opt installieren]
[:Terminal: Ein Terminal öffnen]
[:mit Root-Rechten arbeiten:]
[:Rechte: Rechte für Dateien und Ordner ändern]
}}}
[[Inhaltsverzeichnis()]]
[[Bild(Logo.png, 64, left)]]
[http://cachewolf.aldos.de/ CacheWolf] {de} ist ein Hilfsprogramm für das sog. [wikipedia:Geocaching:]. Es ermöglicht komfortabel das Verwalten von Caches der Seiten [https://www.geocaching.com/ geocaching.com] {en} und [https://www.opencaching.de/ opencaching.de] {de}. Um das Programm zu nutzen, ist es notwendig, auf mindestens einer dieser Seiten ein Benutzerkonto zu haben.
CacheWolf verfügt u.a. über folgende Merkmale:
* Import von GPX Dateien
* Download von Karten
* Konfigurierbare und sortierbare Listenansicht
* Radaranzeige
* Verschiedene Filter
Eine vollständige Liste der Funktionen findet sich auf der Homepage.
{{{#!vorlage Tabelle
<:>[[Bild(Liste.png, x220)]]
<:>[[Bild(Radar.png, x220)]]
+++
<:>Liste
<:>Radar
}}}
= Voraussetzungen =
Das Programm basiert auf [:Java:]. Die Installation einer [:Java/Installation:Laufzeit-Umgebung] (JRE) in der Version 6 oder höher ist daher zwingend Voraussetzung zur Nutzung des Programms.
Möchte man komfortabel mit dem Programm arbeiten und auch Daten mit einem GPS-Gerät austauschen, so ist die Installation von [:GPSBabel:] notwendig.
{{{#!vorlage Paketinstallation
gpsbabel, universe, siehe [:GPSBabel:]
}}}
= Installation =
[http://cachewolf.aldos.de CacheWolf] {de} ist nicht in den Paketquellen vorhanden. Man muss das Programm daher manuell installieren.
Das jeweils aktuelle Release kann von [http://cachewolf.aldos.de/nb/ cachewolf.aldos.de/nb/] {de} {dl} als Archivdatei heruntergeladen werden. Der Dateiname lautet '''CacheWolf-Java.zip'''. Im Downloadverzeichnis immer die Version mit der höchsten '''r'''Nummer wählen.
[[Vorlage(Fremd, Software)]]
== Manuelle Installation ins Homeverzeichnis ==
Die heruntergeladene Datei '''CacheWolf-Java.zip''' vom Downloadverzeichnis ins Homeverzeichnis verschieben und dort entpacken [2] (Rechtsklick "Hier entpacken" wählen). Nun wechselt man in das Verzeichnis '''CacheWolf-Java''' und macht dort das Skript '''CacheWolf.sh''' ausführbar [6].
{{{#!vorlage Befehl
chmod +x ./CacheWolf-Java/CacheWolf.sh
}}}
Jetzt kann das Programm mit
{{{#!vorlage Befehl
./CacheWolf-Java/CacheWolf.sh
}}}
gestartet werden.
== Manuelle Installation nach /opt ==
{{{#!vorlage Hinweis
Die Installation nach '''/opt''' auf Mehrbenutzersystemen ist derzeit nicht optimal. Das Programm legt im Installationsverzeichnis Daten ab. Insbesondere im Mehrbenutzer-Betrieb kann es je nach Nutzung zu Rechteproblemen kommen. Die Übertragung zum GPS hängt, falls die Daten des Vornutzers nicht überschrieben werden können.
}}}
Eine Installation nach '''/opt''' [3] hat den Vorteil, dass Programm und Daten sauber getrennt sind und auch mehrere User das Programm nutzen können. CacheWolf erfährt sehr häufig Updates, daher wird die manuelle Installation - auch wenn sie sehr einfach ist - schnell lästig, weil man selbst auf die Programm/Datentrennung achten muss.
=== Programmverzeichnis anlegen ===
folgende Befehle sind als root bzw. mit vorangestelltem `sudo` ausführen. Die Datei '''CacheWolf-Java.zip''' sollte sich dazu bereits im Downloadverzeichnis befinden.
{{{#!vorlage Befehl
unzip -o -d /opt/CacheWolf-Java ./CacheWolf-Java.zip # CacheWolf ins Verzeichnis /opt/CacheWolf-Java entpacken
ln -s /tmp/CacheWolf.log /opt/CacheWolf-Java/log.txt # Logdatei per Symlink nach /tmp verlegen
chmod 666 /opt/CacheWolf-Java/log.txt # Logdatei beschreibbar machen
ln -s /tmp/CacheWolf.loc /opt/CacheWolf-Java/temp.loc # Loc-Datei per Symlink nach /tmp verlegen (wird erst verwendet bei Datenaustausch zum GPS)
chmod 666 /opt/CacheWolf-Java/temp.loc # Loc-Datei beschreibbar machen
}}}
=== Datenverzeichnis anlegen (ohne sudo) ===
{{{#!vorlage Befehl
mkdir -p ~/.CacheWolf/Profile
}}}
=== Startskript /usr/local/bin/cachewolf anlegen ===
Mit root-Rechten legt man die Datei '''/usr/local/bin/cachewolf''' mit folgenden Inhalt an:
{{{#!code bash
#!/bin/sh
cd /opt/CacheWolf-Java
java -Xms512M -Xmx1024M -cp CacheWolf.jar ewe.applet.Applet CacheWolf.CacheWolf -c ~/.CacheWolf/pref.xml &
}}}
=== Minimale Einstellungsdatei ~/.CacheWolf/pref.xml erstellen ===
nun erzeugt man noch die Einstellungsdatei unter '''~/.CacheWolf/pref.xml''' mit diesem Inhalt:
{{{#!code xml
}}}
== Automatisierte Installation nach /opt per Skript ==
Das folgende Skript fast die oben aufgeführten Schritte der Installation nach '''/opt''' zusammen. Es kann nach jedem CacheWolf-Update erneut angewendet werden.
{{{#!code bash
#!/bin/sh
#
# CacheWolf nach /opt/CacheWolf-Java installieren.
#
TMPDIR=/tmp/CacheWolf-Java # Temp-Verzeichnis
ZIPDIR=~/Downloads # Downloadverzeichnis
PRGDIR=/opt/CacheWolf-Java # Programmverzeichnis
DATADIR=.CacheWolf # Datenverzeichnis
ZIPNAME=CacheWolf-Java.zip # Name der heruntergeladenen Datei
STARTSKRIPT=cachewolf
#
# Auspacken und Anlegen der nötigen Symlinks nach /tmp
#
unzip -o -d $TMPDIR $ZIPDIR/$ZIPNAME # CacheWolf nach /tmp entpacken
echo > /tmp/CacheWolf.log # Dummydateien für Symlinks erzeugen
echo > /tmp/CacheWolf.loc #
ln -sf /tmp/CacheWolf.log $TMPDIR/log.txt # Logdatei per Symlink nach /tmp verlegen
chmod 666 $TMPDIR/log.txt # Logdatei beschreibbar machen
ln -sf /tmp/CacheWolf.loc $TMPDIR/temp.loc # Loc-Datei per Symlink nach /tmp verlegen
# (wird erst verwendet bei Datenaustausch zum GPS)
chmod 666 $TMPDIR/temp.loc # Loc-Datei beschreibbar machen
#
# Datenverzeichnis
#
mkdir -p ~/$DATADIR/Profile/default # Datenverzeichnis anlegen
#
# Minimale Einstellungsdatei ~/.CacheWolf/pref.xml anlegen falls noch nicht vorhanden
#
test -e ~/$DATADIR/pref.xml
if [ "$?" = "0" ]
then
echo
echo Hinweis: ~/$DATADIR/pref.xml bereits vorhanden
echo
else
(
cat <
default lastprofile>
EOP
) > ~/$DATADIR/pref.xml
fi ;
#
# einfaches Startskript cachewolf erzeugen
#
# Das Startskript entspricht dem Original CachWolf.sh mit folgenden Änderungen:
# $PRGDIR # festgelegtes Programmverzeichnis
# -c ~/.CacheWolf/pref.xml # CacheWolf eine Einstellungsdatei fest vorgegeben
(
cat < /tmp/$STARTSKRIPT
chmod 755 /tmp/$STARTSKRIPT # Startskript ausführbar machen
#
# Programm nach /opt und Startskript nach /usr/local/bin/ verschieben.
#
echo
echo ===================================================================
echo ' Das Programmverzeichnis wird nun nach /opt und das Startskript,'
echo ' sofern nicht vorhanden, nach /usr/lokal/bin verschoben. Dazu sind'
echo ' Adminrechte erforderlich:'
echo ===================================================================
sudo cp -a --no-preserve=owner $TMPDIR $PRGDIR
test -e /usr/local/bin/$STARTSKRIPT
if [ "$?" = "0" ]
then
echo
echo Hinweis: /usr/local/bin/$STARTSKRIPT bereits vorhanden
echo
else
sudo cp -a --no-preserve=owner /tmp/$STARTSKRIPT /usr/local/bin/
fi ;
# Aufräumen?
# rm -R /tmp/CacheWolf-Java
# rm /tmp/$STARTSKRIPT
}}}
Das Skript entpackt die die Datei '''CacheWolf-Java.zip''' nach '''/opt/CacheWolf-Java''', erzeugt ein Datenverzeichnis '''~/.CacheWolf''' im Homeverzeichnis mit einer minimalen Einstellungsdatei '''prefs.xml''' und legt ein Startskript '''cachewolf''' in '''/usr/local/bin/''' an.
= Bedienung =
{{{#!vorlage Befehl
./cachewolf.sh
}}}
{{{#!vorlage Tabelle
<-2 tablestyle="width: 97%;" rowclass="titel"> Startparameter
+++
Verfügbare Optionen
Bedeutung
+++
`-c preferences.xml`
lädt die angegebene Einstellungsdatei, z.B. `-c ~/pref.xml`
}}}
= Problembehandlung =
Benutzt man das Original-Startskript im CacheWolf Verzeichnis wird das Programm mit
{{{#!code bash
java -Xms64M -Xmx1024M -cp CacheWolf.jar ewe.applet.Applet CacheWolf.CacheWolf &
}}}
gestartet. Hier kann es nach einige Zeit vorkommen, dass das Programm sehr träge wird und kaum noch zu bedienen ist.
In so einem Fall hilft es den ersten Parameter '''-Xms''' auf '''512M''' zu erhöhen (siehe Diskussion [post:4630157:hier]).
{{{#!code bash
java -Xms512M -Xmx1024M -cp CacheWolf.jar ewe.applet.Applet CacheWolf.CacheWolf &
}}}
In den Skript-Beispielen dieses Artikels wurde der Wert bereits angepasst.
= Links =
* [http://cachewolf.aldos.de/ Homepage] {de}
* [https://www.geoclub.de/viewforum.php?f=40 Forum] {de}
* [:Gebabbel:] - grafische Bedienungsoberfläche für [:GPSBabel:]
#tag: Geocaching, GPS, Java, Internet,