Was könnte eine Installation von KeePass reparieren, die unter OS X nicht kopiert oder eingefügt werden kann?

KeePass wird nicht kopieren und einfügen, geschweige denn Autotyp machen.

Ich habe das KeePass 2.18 Mac-Paket von http://keepass2.openix.be/ installiert . Ich konnte kein neueres Mac-Paket für KeePass finden, also habe ich auch alle Dateien dieses Pakets durch die von Portable KeePass 2.20.1 (ZIP-Paket) ersetzt. Das war von der Seite http://keepass.info/download.html , Link zum aktuellen Zip: http://downloads.sourceforge.net/keepass/KeePass-2.20.1.zip . Ich führe KeePass 2.20.1 erfolgreich aus.

Ich verwende Mono-Version 2.10.9.

Ich verwende OS X 10.7.5 auf einem MacBook Pro.

Ich kann nicht glauben, dass die Website von KeePass für Mac-Kompatibilität wirbt, wenn sie nicht kopieren/einfügen kann. Das ist ziemlich Kernfunktionalität zu fehlen. Suchen zeigen, dass andere dieses Problem seit 2.18 hatten, aber keine Problemumgehungen, keine Fehlerberichte.

Hat jemand dieses Problem lösen können?

Haben Sie KeyPass mit Mono 3.0 ausprobiert ? Ich habe es nicht ausprobiert, aber es könnte besser funktionieren.

Antworten (1)

Die KeePass-Dokumentation in http://keepass.info/help/v2/setup.html#mono beschreibt Ihr Problem, obwohl OS X nicht ausdrücklich erwähnt wird:

Zwischenablage: Auf manchen Systemen funktionieren Monos Zwischenablage-Routinen nicht richtig. Installieren Sie in diesem Fall das xsel-Paket. Wenn xselinstalliert, verwendet KeePass ≥ 2.20 dieses Dienstprogramm für Zwischenablageoperationen.

Sollte also xselhelfen. ( xselist verfügbar von MacPorts ( http://www.macports.org/ports.php?by=all&substr=&page=316&pagesize=50 ). Die Quelle ist hier verfügbar: http://www.vergenet.net/~conrad/ software/xsel/#download )

EDIT : Tut es aber nicht. Ich war neugierig, also habe ich xselauf meinem Mac kompiliert. Es hat das Problem mit Kopieren/Einfügen (getestet mit Portable KeePass 2.20.1) nicht gelöst, wie ich befürchtet habe, muss ich sagen. Warum? Denn wie hier angegeben ist http://www.kfish.org/software/xsel/ xsel ein Tool, das den Inhalt der Zwischenablage von X11- Anwendungen manipuliert. X11 stellt die grafische Benutzeroberfläche für Linux und UNIX bereit, aber OS X verwendet stattdessen Quartz , ebenso wie Mono, wie mir klar wurde (siehe http://www.mono-project.com/WinForms#About_System.Windows.Forms ).

Es gibt eine Problemumgehung für das Kopieren von Benutzername und Passwort in die Zwischenablage, wie in diesem Thread erklärt http://sourceforge.net/projects/keepass/forums/forum/329221/topic/5106260 :

Ureka (sic) . Deine 2.19 ist auf dem Weg zum Kopieren und Einfügen auf dem MAC via Mono! Ihre Schaltfläche zum Kopieren des Benutzernamens und Ihre Schaltfläche zum Kopieren des Passworts funktionieren jetzt !!!

Das obige Poster bezieht sich auf diese Schaltflächen (portables KeePass 2.20.1 wird unter Windows ausgeführt (sorry, kein Mac in der Nähe)):

Zum Kopieren des Benutzernamens:

Geben Sie hier die Bildbeschreibung ein

Zum Kopieren des Passworts:

Geben Sie hier die Bildbeschreibung ein

BEARBEITEN :

Ich möchte mitteilen, wie ich kompiliert habe xsel, falls jemand es unter OS X benötigt:

  1. Installieren Sie X11 von http://support.apple.com/kb/HT5293 (dies gilt nur für Benutzer von OS X 10.8 „Mountain Lion“).

  2. Header- und Bibliotheksdateien von /opt/X11/include/X11bis /usr/local/include/X11und von /opt/X11/libbis /usr/local/libsymbolisch verlinken (alternativ können Sie symbolisch auf /usr/includeund verlinken /usr/lib):

    $ sudo ln -s /opt/X11/include/X11 /usr/local/include/X11
    $ for lib in $(ls /opt/X11/lib/lib*); do sudo ln -sf $lib /usr/local/lib; done
    

    Andernfalls erhalten Sie viele Fehlermeldungen über nicht gefundene Dateien oder fehlende Symbole. Ich habe versucht, die nicht standardmäßigen X11-Verzeichnisse als Option ./configureohne Erfolg zu übergeben.

  3. Laden Sie es von http://www.vergenet.net/~conrad/software/xsel/#download herunter und extrahieren Sie es beispielsweise auf Ihren Desktop.

  4. Sie benötigen gccPlus-Bibliotheken. Installieren Sie Xcode und installieren Sie dann die Befehlszeilentools von Xcode>Preferences>Downloads>Components.

  5. Verzeichnis wechseln, konfigurieren und kompilieren:

    $ cd xsel-1.2.0
    $ ./configure --prefix /usr/local
    $ make
    make  all-am
    if gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -fno-strict-aliasing -Wall -Werror -g -std=gnu99 -Wdeclaration-after-statement -Wno-unused -MT xsel.o -MD -MP -MF ".deps/xsel.Tpo" -c -o xsel.o xsel.c; \
        then mv -f ".deps/xsel.Tpo" ".deps/xsel.Po"; else rm -f ".deps/xsel.Tpo"; exit 1; fi
    gcc  -g -O2 -fno-strict-aliasing -Wall -Werror -g -std=gnu99 -Wdeclaration-after-statement -Wno-unused   -o xsel  xsel.o  -lX11
    $ make install
    

xselSie können auch mit MacPorts installieren , indem Sie den Befehl verwenden sudo port install xsel. In meinem Setup benötigte es auch die Symlinks für die X11-Bibliotheken und Header-Dateien und brauchte viel länger zum Kompilieren.

Ich möchte auch einige Vorbehalte bei der Verwendung von KeePass auf einem Mac mitteilen:

  1. KeePass 2.18 (von http://keepass2.openix.be ) hat Probleme mit der Groß-/Kleinschreibung von HFS+. KeePass.exeeingegeben wird Keepass.exe(beachten Sie das kleine 'p') KeePass2.18.app/Contents/MacOS/startkeepass.sh(so dass es stillschweigend fehlschlägt). Ich musste ein mit HFS+ formatiertes USB-Flash-Laufwerk verwenden und KeePass von dort aus ausführen.

  2. Ich hatte große Probleme, KeePass 2.20.1 unter OS X 10.8 „Mountain Lion“ zum Laufen zu bringen. Die Fehlermeldung konnte nicht gelöscht werden:

    System.ArgumentException: Directory does not exists
    Parameter name: path
      at System.IO.FileSystemWatcher..ctor (System.String path, System.String filter) [0x00000] in <filename unknown>:0 
      at (wrapper remoting-invoke-with-check) System.IO.FileSystemWatcher:.ctor (string,string)
      at KeePass.Util.IpcBroadcast.FswStartServer () [0x00000] in <filename unknown>:0 
      at KeePass.Util.IpcBroadcast.StartServer () [0x00000] in <filename unknown>:0 
      at KeePass.Forms.MainForm.OnFormLoad (System.Object sender, System.EventArgs e) [0x00000] in <filename unknown>:0 
      at System.Windows.Forms.Form.OnLoad (System.EventArgs e) [0x00000] in <filename unknown>:0 
      at System.Windows.Forms.Form.OnLoadInternal (System.EventArgs e) [0x00000] in <filename unknown>:0
    

    Endlich habe ich den Übeltäter gefunden: In den Release Notes für Version 2.20.1 heißt es ( http://keepass.info/news/n121004_2.20.1.html ):

    Änderungen von 2.20 zu 2.20.1: Auf Unix-ähnlichen Systemen speichert KeePass jetzt die meisten seiner temporären Dateien in einem privaten temporären Verzeichnis (vorzugsweise in $XDG_RUNTIME_DIR).

    Gemäß http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html :

    $XDG_RUNTIME_DIRdefiniert das Basisverzeichnis, relativ zu dem benutzerspezifische, nicht unbedingt erforderliche Laufzeitdateien und andere Dateiobjekte (wie Sockets, Named Pipes, ...) gespeichert werden sollen. Das Verzeichnis MUSS dem Benutzer gehören ...

    XDG_RUNTIME_DIRwurde nicht eingestellt. Ich habe es auf ein Verzeichnis gesetzt, das ich besaß, und KeePass funktionierte wie ein Zauber:

    $ echo $XDG_RUNTIME_DIR
    $ mkdir ~/.mono
    $ export XDG_RUNTIME_DIR=~/.mono/; mono --desktop /Volumes/USB_Flash_Drive/KeePass-2.20.1/KeePass.exe
    

Geben Sie hier die Bildbeschreibung ein

Installieren von xsel: Kudos, dass Sie es zumindest gefunden haben. Aber kein installierbares Paket gefunden und es wird nicht für mich kompiliert. Ich muss (mindestens) gcc zu meinem Pfad hinzufügen. Die Lösung, die für mich funktioniert hat, ist also der letzte Link Tastenkombinationen Strg-C Strg-V) funktionieren. Die Schaltflächen ... das habe ich vermisst, als ich diesen Link gelesen habe (bevor ich diese Frage gestellt habe).
Kommentare können nur für 5 Minuten bearbeitet werden. Sehr irritierend. Wie auch immer: Bevor sich die Mac-Polizei stürzt, sind die Tastenkombinationen (die nicht funktionieren) natürlich Befehlstaste-C und Befehlstaste-V. Globaler Autotyp: Ich habe XDOTOOL nicht ausprobiert. Ich habe keine Shortcuts, keinen automatischen Typ, aber ich habe BUTTONS. Gut genug für jetzt. TASTEN! Warum sollte ich enttäuscht sein? Ich habe auf jeden Fall die BUTTONS. Ich meine, das sind BUTTONS!" (a la Tom Cruise in Rain Man: I got the rose bushes. )
@minnow: Ich konnte endlich xselmit KeePass testen und raten ... nein, es hat nicht funktioniert, daher ist die Verwendung der Schaltflächen vorerst die einzige Möglichkeit unter OS X, Benutzernamen und Passwörter zu kopieren. Ich habe es der Antwort hinzugefügt. Mir ist aufgefallen, dass Softpedia auf den xselQuellcode verweist, also habe ich diesen Teil aus meiner Antwort gelöscht.
Anscheinend existieren und funktionieren die Schaltflächen in der Version 2.24, die ich derzeit verwende. Wusste nicht, dass Symbolleistenschaltflächen es anders machen können als Kontextmenüs. Vielen Dank für das Teilen der Antwort!
Die Dinge haben sich wahrscheinlich geändert, seit diese Antwort gepostet wurde. Ich habe XQuartz am Laufen, und wenn es xselüber MacPorts installiert ist, funktionieren diese Schaltflächen gut, ohne dass ich selbst kompilieren muss. Es wäre schön, auch die Tastenkombinationen zum Laufen zu bringen, und noch besser, Autotype zu bekommen, aber das könnte vorerst ein Wunschtraum sein.