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

8

KeePass kopiert und fügt nicht ein, geschweige denn Autotyp.

Ich habe das KeePass 2.18 Mac-Paket von http://keepass2.openix.be/ installiert . Ich konnte kein neueres Mac-Paket für KeePass finden, daher habe ich auch alle Dateien dieses Pakets durch die Dateien aus dem tragbaren KeePass 2.20.1 (ZIP-Paket) ersetzt. Das war von der Seite http://keepass.info/download.html , Link zur eigentlichen Zip: http://downloads.sourceforge.net/keepass/KeePass-2.20.1.zip . Ich führe also erfolgreich KeePass 2.20.1 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 KeePass-Site für die Mac-Kompatibilität wirbt, wenn sie nicht kopiert / eingefügt werden kann. Das ist ziemlich Kernfunktionalität zu fehlen. Suchen haben ergeben, dass andere dieses Problem seit 2.18 haben, aber keine Problemumgehungen, keine Fehlerberichte.

Hat jemand dieses Problem beheben können?

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

Antworten:

7

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

Zwischenablage: Auf einigen Systemen funktionieren die Routinen der Zwischenablage von Mono nicht ordnungsgemäß. Installieren Sie in diesem Fall das xsel-Paket. Wenn xselinstalliert, verwendet KeePass ≥ 2.20 dieses Dienstprogramm für Zwischenablagevorgänge.

Sollte also xselhelfen. ( xselist bei MacPorts erhältlich ( http://www.macports.org/ports.php?by=all&substr=&page=316&pagesize=50 ). Die Quelle finden Sie hier: http://www.vergenet.net/~conrad/ Software / xsel / # herunterladen )

EDIT : Aber das tut es nicht. Ich war neugierig und habe 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 hatte, 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 bearbeitet . X11 bietet die grafische Benutzeroberfläche für Linux und UNIX, aber OS X verwendet stattdessen Quartz und Mono, wie mir klar wurde (siehe http://www.mono-project.com/WinForms#About_System.Windows.Forms ).

Es gibt eine Problemumgehung zum Kopieren von Benutzername und Kennwort in die Zwischenablage, wie in diesem Thread erläutert : http://sourceforge.net/projects/keepass/forums/forum/329221/topic/5106260 :

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

Das obige Poster bezieht sich auf diese Schaltflächen (tragbarer KeePass 2.20.1 unter Windows (leider 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, xselfalls 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. Symlink - Header - Dateien und Bibliotheken von /opt/X11/include/X11bis /usr/local/include/X11und von /opt/X11/libbis /usr/local/lib(alternativ können Sie einen symbolischen Link nach /usr/includeund /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 Fehler bei nicht gefundenen Dateien oder fehlenden Symbolen. 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 über Xcode> Einstellungen> Downloads> Komponenten.

  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
    

Sie können xselmit dem Befehl auch mit MacPorts installieren 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 Einschränkungen bei der Verwendung von KeePass auf einem Mac mitteilen:

  1. KeePass 2.18 (von http://keepass2.openix.be ) hat Probleme mit HFS +, bei dem zwischen Groß- und Kleinschreibung unterschieden wird. KeePass.exewird eingegeben Keepass.exe(beachten Sie Kleinbuchstaben 'p') in KeePass2.18.app/Contents/MacOS/startkeepass.sh(so dass es stillschweigend fehlschlägt). Ich musste ein USB-Flash-Laufwerk verwenden, das mit HFS + ohne Berücksichtigung der Groß- und Kleinschreibung formatiert war, und von dort aus KeePass 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 entfernt 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
    

    Ich habe endlich den Schuldigen gefunden: In den Versionshinweisen für Version 2.20.1 heißt es ( http://keepass.info/news/n121004_2.20.1.html ):

    Änderungen von 2.20 auf 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).

    Laut http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html :

    $XDG_RUNTIME_DIRDefiniert das Basisverzeichnis, in Bezug auf das benutzerspezifische nicht wesentliche 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 hat wie ein Zauber funktioniert:

    $ 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

jaume
quelle
Xsel installieren: ein großes Lob, um es zumindest zu finden. Aber kein installierbares Paket gefunden und es wird nicht für mich kompiliert. Ich muss meinem Pfad (zumindest) gcc hinzufügen. Die Lösung, die für mich funktioniert hat, ist der letzte Link ... aber lassen Sie mich klarstellen, welcher Teil davon funktioniert hat: 2.18 pkg installiert, 2.20.1 darüber kopiert, dann die Tasten (und NUR die Tasten, nicht die 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).
Elritze
Kommentare können nur 5 Minuten lang bearbeitet werden. Sehr irritierend. Wie auch immer: Bevor sich eine Mac-Polizei stürzt, sind die Verknüpfungen (die nicht funktionieren) natürlich Command-C und Command-V. Globaler Auto-Typ: Ich habe XDOTOOL nicht ausprobiert. Ich habe keine Verknüpfungen, keine automatische Eingabe, aber ich habe TASTEN. Gut genug für jetzt. TASTEN! Warum sollte ich enttäuscht sein? Ich habe definitiv die Tasten. Ich meine, das sind KNÖPFE! "(A la Tom Cruise in Rain Man: Ich habe die Rosenbüsche. )
Elritze
@minnow: Ich konnte endlich xselmit KeePass testen und raten ... nein, es hat nicht funktioniert, daher ist die Verwendung der Schaltflächen unter OS X derzeit die einzige Möglichkeit, Benutzernamen und Kennwörter zu kopieren. Ich habe es der Antwort hinzugefügt. Ich habe festgestellt, dass Softpedia auf den xselQuellcode verweist, daher habe ich dieses Bit aus meiner Antwort gelöscht.
Jaume
Anscheinend existieren die Schaltflächen und funktionieren in der Version 2.24, die ich gerade verwende. Wusste nicht, dass Symbolleistenschaltflächen dies anders als das Kontextmenü tun können. Vielen Dank für die Antwort!
Mike
1
Die Dinge haben sich wahrscheinlich geändert, seit diese Antwort veröffentlicht wurde. Ich habe XQuartz ausgeführt und mit der xselInstallation über MacPorts funktionieren diese Schaltflächen einwandfrei, ohne dass selbst kompiliert werden muss. Es wäre schön, auch die Tastaturkürzel zum Laufen zu bringen und noch besser einen Autotyp zu bekommen, aber das könnte vorerst ein Wunschtraum sein.
Dan Jones