İçinde KeePass dokümantasyon http://keepass.info/help/v2/setup.html#mono , özellikle OS X söz olmasa da, sorunu anlatır:
Pano:
Bazı sistemlerde Mono'nun pano rutinleri düzgün çalışmaz. Bu durumda, xsel paketini kurun. Yüklü xsel
ise, KeePass ≥ 2.20 pano işlemleri için bu yardımcı programı kullanır.
Öyleyse xsel
yardımcı olmalı. ( xsel
MacPorts'tan edinilebilir ( http://www.macports.org/ports.php?by=all&substr=&page=316&pagesize=50 ). Kaynak burada bulunabilir: http://www.vergenet.net/~conrad/ yazılım / xsel / # indir )
EDIT : Ama değil. Merak ettim bu yüzden xsel
Mac bilgisayarımda derledim . Korktuğum gibi, kopyala / yapıştır ile (Portable KeePass 2.20.1 ile test edildi) sorunu çözmedi. Neden? Çünkü burada belirtildiği gibi http://www.kfish.org/software/xsel/ X11 uygulamalarının xsel
pano içeriğini işleyen bir araçtır . X11, Linux ve UNIX için grafik kullanıcı arabirimi sağlar, ancak OS X, bunun yerine Quartz'ı kullanır ve fark ettiğim gibi Mono da kullanır (bkz. Http://www.mono-project.com/WinForms#About_System.Windows.Forms ).
Http://sourceforge.net/projects/keepass/forums/forum/329221/topic/5106260 adresinde açıklandığı gibi kullanıcı adını ve şifreyi panoya kopyalamak için bir geçici çözüm vardır :
Ureka (sic) . 2.19'unuz MAC üzerinde Mono! Kullanıcı adını kopyalamak için düğmeniz ve parolayı kopyalamak için düğmeniz şimdi çalışıyor !!!
Yukarıdaki poster bu düğmelerle ilgilidir (Windows üzerinde çalışırken gösterilen taşınabilir KeePass 2.20.1 (üzgünüm, yakında Mac yok)):
Kullanıcı adını kopyalamak için:
Parolayı kopyalamak için:
DÜZENLE :
xsel
Birinin OS X'te ihtiyacı olması durumunda nasıl derlediğimi paylaşmak istiyorum :
X11'i http://support.apple.com/kb/HT5293 adresinden yükleyin (bu yalnızca OS X 10.8 "Mountain Lion" kullanıcıları için geçerlidir).
Symlink başlık ve kütüphane dosyaları /opt/X11/include/X11
için /usr/local/include/X11
ve gelen /opt/X11/lib
için /usr/local/lib
(alternatif için sembolik bir link olabilir /usr/include
ve /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
Aksi takdirde, bulunmayan veya eksik semboller hakkında birçok hata alırsınız. Standart olmayan X11 dizinlerini bir seçenek olarak ./configure
başarılı olmadan geçmeyi denedim .
Http://www.vergenet.net/~conrad/software/xsel/#download adresinden indirin ve örneğin Masaüstünüze çıkarın.
gcc
Artı kütüphanelere ihtiyacınız var . Xcode'u yükleyin ve ardından Xcode> Tercihler> İndirilenler> Bileşenler bölümünden komut satırı araçlarını yükleyin.
Dizini değiştirin, yapılandırın ve derleyin:
$ 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
xsel
MacPorts ile komutu kullanarak da kurabilirsiniz sudo port install xsel
. Benim kurulumumda X11 kütüphaneleri ve başlık dosyaları için sembolik bağlantılara ihtiyaç duyuldu ve derlenmesi çok daha uzun sürdü.
Ayrıca Mac'te KeePass kullanırken bazı uyarıları paylaşmak istiyorum:
KeePass 2.18 ( http://keepass2.openix.be ) büyük / küçük harf duyarlı HFS + ile sorun yaşıyor. KeePass.exe
yazıldığında Keepass.exe
içinde (bildirim Küçük harf 'p') KeePass2.18.app/Contents/MacOS/startkeepass.sh
(o sessizce başarısız böylece). Büyük / küçük harfe duyarlı olmayan HFS + ile biçimlendirilmiş bir USB flash sürücü kullanmak ve oradan KeePass'ı çalıştırmak zorunda kaldım.
KeePass 2.20.1'in OS X 10.8 "Mountain Lion" üzerinde çalışmasını sağlamakta çok zorlandım. Hata mesajından kurtulamadı:
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
Sonunda suçluyu buldum: Sürüm 2.20.1 durumu için sürüm notları ( http://keepass.info/news/n121004_2.20.1.html ):
2.20'den 2.20.1'e değişir: Unix benzeri sistemlerde, KeePass geçici dosyalarının çoğunu özel bir geçici dizinde (tercihen içinde $XDG_RUNTIME_DIR
) saklar .
Göre http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html :
$XDG_RUNTIME_DIR
Kullanıcıya özgü zorunlu olmayan çalışma zamanı dosyalarının ve diğer dosya nesnelerinin (soketler, adlandırılmış borular, ... gibi) depolanması gereken göreli temel dizini tanımlar. Dizinin sahibi OLMALIDIR ...
XDG_RUNTIME_DIR
ayarlanmadı. Sahip olduğum bir dizine ayarladım ve KeePass bir cazibe gibi çalıştı:
$ echo $XDG_RUNTIME_DIR
$ mkdir ~/.mono
$ export XDG_RUNTIME_DIR=~/.mono/; mono --desktop /Volumes/USB_Flash_Drive/KeePass-2.20.1/KeePass.exe