Qu'est-ce qui pourrait réparer une installation de KeePass sans copier ni coller sous OS X?

8

KeePass ne va pas copier et coller, encore moins faire un autotype.

J'ai installé le package KeePass 2.18 Mac de http://keepass2.openix.be/ . Je ne pouvais pas trouver de paquet Mac plus récent pour KeePass. J'ai donc également remplacé tous les fichiers de ce paquet par ceux du Portable KeePass 2.20.1 (paquet ZIP). C'était de la page http://keepass.info/download.html , lien vers le zip actuel: http://downloads.sourceforge.net/keepass/KeePass-2.20.1.zip . Je lance donc avec succès KeePass 2.20.1.

J'utilise la version 2.10.9 de Mono.

J'utilise OS X 10.7.5 sur un MacBook Pro.

Je ne peux pas croire que le site de KeePass vante la compatibilité avec Mac lorsqu'il ne copie / colle pas. C'est assez de fonctionnalités de base à manquer. Les recherches révèlent que d'autres personnes ont ce problème depuis la version 2.18, mais aucune solution de contournement, aucun rapport de bogue.

Quelqu'un at-il été capable de résoudre ce problème?

minnow
la source
Avez-vous essayé KeyPass avec Mono 3.0 ? Je ne l'ai pas essayé mais cela pourrait fonctionner mieux.
Old Pro

Réponses:

6

La documentation KeePass en http://keepass.info/help/v2/setup.html#mono , bien que ne mentionnant pas spécifiquement OS X, décrit votre problème:

Presse-papier: Sur certains systèmes, les routines du Presse-papiers de Mono ne fonctionnent pas.   correctement. Dans ce cas, installez le package xsel. Si xsel est   installé, KeePass ≥ 2.20 utilise cet utilitaire pour les opérations dans le presse-papier.

Alors xsel devrait aider. ( xsel est disponible chez MacPorts ( http://www.macports.org/ports.php?by=all&substr=&page=316&pagesize=50 ). La source est disponible ici: http://www.vergenet.net/~conrad/software/xsel/#download )

MODIFIER : Mais ce n'est pas. J'étais curieux alors j'ai compilé xsel sur mon Mac. Cela n'a pas résolu le problème du copier / coller (testé avec Portable KeePass 2.20.1), comme je le craignais, je dois dire. Pourquoi? Parce que comme indiqué ici http://www.kfish.org/software/xsel/ xsel est un outil qui manipule le contenu du presse-papier X11 applications. X11 fournit l'interface utilisateur graphique pour Linux et UNIX, mais OS X utilise Quartz et Mono aussi, comme je l’ai réalisé (voir http://www.mono-project.com/WinForms#About_System.Windows.Forms ).

Il y a une solution de contournement pour copier nom d'utilisateur et mot de passe pour le presse-papiers, comme expliqué dans ce fil http://sourceforge.net/projects/keepass/forums/forum/329221/topic/5106260 :

Ureka (sic) . Votre 2.19 est sur le chemin pour copier coller en travaillant sur le MAC via   Mono! Votre bouton pour copier le nom d'utilisateur et votre bouton pour copier le   mot de passe fonctionne maintenant !!!

L’affiche ci-dessus fait référence à ces boutons (KeePass 2.20.1 portable fonctionnant sous Windows (désolé, pas de Mac à proximité)):

Pour copier le nom d'utilisateur:

enter image description here

Pour copier le mot de passe:

enter image description here

MODIFIER :

J'aimerais partager comment j'ai compilé xsel au cas où quelqu'un en aurait besoin sur OS X:

  1. Installez X11 à partir de http://support.apple.com/kb/HT5293 (ceci ne concerne que les utilisateurs de OS X 10.8 "Mountain Lion").

  2. En-tête Symlink et fichiers de bibliothèque de /opt/X11/include/X11 à /usr/local/include/X11 et de /opt/X11/lib à /usr/local/lib (vous pouvez également créer un lien symbolique vers /usr/include et /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
    

    Sinon, vous aurez beaucoup d'erreurs sur les fichiers non trouvés ou les symboles manquants. J'ai essayé de passer les répertoires X11 non standard en option pour ./configure sans succès.

  3. Télécharger à partir de http://www.vergenet.net/~conrad/software/xsel/#download et extraire, par exemple, sur votre bureau.

  4. Vous avez besoin gcc plus des bibliothèques. Installez Xcode, puis installez les outils de ligne de commande de Xcode & gt; Préférences & gt; Téléchargements & gt; Composants.

  5. Changer de répertoire, configurer et compiler:

    $ 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
    

Vous pouvez aussi installer xsel avec MacPorts en utilisant la commande sudo port install xsel. Dans ma configuration, il fallait également les liens symboliques pour les bibliothèques X11 et les fichiers d’entête, et beaucoup plus long à compiler.

J'aimerais également vous faire part de certaines réserves lors de l'utilisation de KeePass sur un Mac:

  1. KeePass 2.18 (à partir de http://keepass2.openix.be ) a des problèmes avec HFS + sensible à la casse. KeePass.exe est dactylographié Keepass.exe (notez minuscule 'p') dans KeePass2.18.app/Contents/MacOS/startkeepass.sh (pour qu'il échoue en silence). J'ai dû utiliser un lecteur flash USB formaté avec HFS +, insensible à la casse, et exécuter KeePass à partir de là.

  2. J'ai eu beaucoup de mal à faire fonctionner KeePass 2.20.1 sur OS X 10.8 "Mountain Lion". Il n'a pas pu se débarrasser du message d'erreur:

    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
    

    J'ai finalement trouvé le coupable: Les notes de publication de la version 2.20.1 state ( http://keepass.info/news/n121004_2.20.1.html ):

    Changements de 2.20 à 2.20.1:   Sur les systèmes de type Unix, KeePass stocke maintenant la plupart de ses fichiers temporaires dans un répertoire temporaire privé (de préférence dans un répertoire temporaire). $XDG_RUNTIME_DIR ).

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

    $XDG_RUNTIME_DIR définit le répertoire de base relatif aux fichiers d'exécution non essentiels spécifiques à l'utilisateur et aux autres objets de fichier (tels que les sockets, les canaux nommés, ...) doivent être stockés. Le répertoire DOIT être la propriété de l'utilisateur ...

    XDG_RUNTIME_DIR n'était pas réglé. Je l'ai placé dans un répertoire que je possédais et KeePass a fonctionné comme un charme:

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

enter image description here

jaume
la source
Installer xsel: kudos pour au moins le trouver. Mais aucun paquet installable trouvé et il ne compilera pas pour moi. Besoin d'ajouter gcc sur mon chemin (au moins). Donc, la solution qui a fonctionné pour moi est le dernier lien ... mais laissez-moi être clair sur la partie de celle qui a fonctionné: installé 2.18 pkg, copié 2.20.1 dessus, puis les boutons (et UNIQUEMENT les boutons, pas le les raccourcis clavier ctrl-C ctrl-V) fonctionnent. Les boutons ... c'est ce que j'ai manqué quand j'ai lu ce lien (avant de poser cette question).
minnow
Les commentaires ne peuvent être modifiés que pendant 5 minutes. Très irritant. Quoi qu'il en soit: avant tout saut de la police mac, les raccourcis (qui ne fonctionnent pas) sont bien sûr Command-C et Command-V. Type automatique global: je n'ai pas essayé XDOTOOL. Je n'ai pas de raccourcis, pas de type automatique, mais j'ai des BOUTONS. Assez bon pour l'instant. BOUTONS! Pourquoi devrais-je être déçu? J'ai définitivement les BOUTONS. Je veux dire, ce sont des BOUTONS! "(Une croisière à la Tom dans Rain Man: J'ai les rosiers. )
minnow
@minnow: je pourrais enfin tester xsel avec KeePass et devinez ... non, cela n’a pas fonctionné, donc, pour l’instant, l’utilisation des boutons est la seule possibilité pour OS X de copier les noms d’utilisateur et les mots de passe. Je l'ai ajouté à la réponse. J'ai remarqué que Softpedia est lié à la xsel code source, donc j'ai supprimé ce bit de ma réponse.
jaume
Apparemment, les boutons existent et fonctionnent dans la version 2.24 que j'utilise actuellement. Je ne savais pas que les boutons de la barre d'outils pouvaient le faire différemment du menu contextuel. Merci de partager la réponse!
Mike
1
Les choses ont probablement changé depuis que cette réponse a été postée. Je fais fonctionner XQuartz, et avec xsel installés via MacPorts, ces boutons fonctionnent sans aucun type de compilation. Ce serait bien de pouvoir également utiliser les raccourcis clavier et, encore mieux, de créer un autotype, mais cela pourrait être un rêve pour le moment.
Dan Jones