Daten von KeePassX zu 1Password übertragen

Bei KeePassX und 1Password handelt es sich um Passwortmanager mit welchem man die unterschiedlichsten Passwörter sinnvoll verwalten kann. KeePassX ist dabei eine Mac Variante des freien Passwortmanagers KeePass. Möchte man die Daten von KeePassX zu 1Password importieren, steht man vor dem Problem das die aktuelle Version 2 keine Exportfunktionen unterstützt.

1Password unter Mac OS X

1Password unter Mac OS X

Als Abhilfe kann man KeePass 2 nutzen und die Daten mit diesem in das KeePass XML Format exportieren. Der nächste Schritt besteht darin die entsprechende Konverterapplikation herunterzuladen. Diesen Konverter muss nach dem Download mit der exportieren XML-Datei gefüttert werden:

/usr/bin/perl5.16 convert_to_1p4.pl keepass2 -v /Users/seeseekey/Desktop/passwords.xml

Der Konverter erzeugt im gleichen Ordner eine 1P4_import.1pif-Datei als Ergebnis. Diese wiederum kann in 1Password importiert werden. Der direkte Aufruf der systemeigenen Perl-Installation verhindert das es zu Fehlern wie diesem kommt:

Can't locate Date/Calc.pm in @INC (@INC contains: /opt/local/lib/perl5/site_perl/5.16.3/darwin-thread-multi-2level /opt/local/lib/perl5/site_perl/5.16.3 /opt/local/lib/perl5/vendor_perl/5.16.3/darwin-thread-multi-2level /opt/local/lib/perl5/vendor_perl/5.16.3 /opt/local/lib/perl5/5.16.3/darwin-thread-multi-2level /opt/local/lib/perl5/5.16.3 /opt/local/lib/perl5/site_perl /opt/local/lib/perl5/vendor_perl .) at Utils/PIF.pm line 18.

In einem solchen Fall nutzt das System bei Eingabe des Kommandos perl eine alternative Version wie sie z.B. von MacPorts bereitgestellt wird.

PuTTY SSH Schlüssel in OpenSSH Schlüssel umwandeln

Möchte man den privaten SSH Schlüssel welcher mittels des “PuTTY Key Generator” erzeugt wurde auch in der “Git Bash” nutzen, so muss man den Schlüssel in das OpenSSH Format bringen.

Der PuTTY Key Generator

Der PuTTY Key Generator

Dazu öffnet man den PuTTY Schlüssel mittels “File” -> “Load private key”. Anschließend wird der Schlüssel über “Conversions” -> “Export OpenSSH key” in eine Datei mit dem Namen “id_rsa” exportiert. Diese Datei wird dann in den Benutzerordner (z.B. “c:\Users\seeseekey\.ssh\” unter Windows 7) gelegt. Anschließend kann der Schlüssel auch unter der Git Bash benutzt werden.

Twitter und die Probleme mit Unicode URLs

Wenn man bei Twitter einen Account anlegt, und diesen mit einer Mailadresse verbinden will, ist das im Normalfall kein Problem. Interessant wird das ganze wenn man dort eine Mail nach dem Schema “example@entität.org” angeben möchte. In dieser Adresse sind Unicodezeichen enthalten, in diesem Fall das “ä”.

Die nicht funktionierende Unicode Variante

Die nicht funktionierende Unicode Variante

Diese akzeptiert Twitter nicht als “richtige” Mailadresse. Abhilfe schafft die die Umwandelung in Punycode z.B. mit dem Tool unter http://idnaconv.phlymail.de. Damit lautet die Entsprechung der Beispieladresse “example@xn--entitt-fua.org”.

Mit der Punycode Umschreibung funktioniert es auch mit Twitter

Mit der Punycode Umschreibung funktioniert es auch mit Twitter

Diese umgeschriebene Adresse wird dann auch von Twitter akzeptiert.

Weitere Informationen gibt es unter:
http://de.wikipedia.org/wiki/Punycode

Prototypische Quelltextkonvertierung (C -> C#)

Bei der Portierung von C Quelltext ist man manchmal am überlegen wie man eine bestimmte Stelle wohl syntaktisch nach C# bringt. Möchte man eine automatische prototypische Quelltextkonvertierung für solche Sachen so sollte man sich mal die Webseite http://code2code.net/ anschauen.

Dort kann man C Quellcode eingeben und bekommt ihn in C# oder Visual Basic.NET zurück. Je nach Eingabedaten kann die Konvertierung dabei allerdings unterschiedlichster Qualität sein. Um das Nachdenken kommt man also nicht herum ;)

Google Code SVN Repository in Git Repository umwandeln

Möchte man sein Google Code Subversion Repository mit der kompletten History in ein Git Repository umwandeln so ist das erstaunlich einfach. Im ersten Schritt sollte man die Project committers unter Adminster -> Project Members entfernen (sicher ist sicher). Dann sollte unter Adminster -> Source der Repository Typ auf Git gestellt werden.

Hier wird dabei ausgegangen das die Projektstruktur in etwa so aussieht:

branches
tags
trunk

Zuerst legt man im Homeverzeichnis eine Datei namens .netrc an und füllt sie mit folgendem Inhalt:

machine code.google.com login seeseekey@example.com password geheim

Den genauen Inhalt erfährt man dabei auch wenn man auf die Google Code Seite https://code.google.com/hosting/settings geht. Bevor es weitergeht installiert man mittels:

apt-get install git-svn

das Paket git-svn. Dieses Paket ist dabei für den Großteil der Konvertierung zuständig. Nun öffnet man ein Terminal und gibt dort folgendes ein (der Projektname muss natürlich angepasst werden):

git svn clone --stdlayout https://invertika.googlecode.com/svn invertika
cd invertika
git remote add googlecode https://code.google.com/p/invertika
git push --all googlecode

Anschließend fügt man die Project committers wieder hinzu und kann nun mit dem Git Repository arbeiten. Problematisch ist allerdings, das das Push Limit 500 MiB beträgt. Größere Repositories kann man damit nicht ohne weiteres pushen.

Weitere Informationen gibt es unter:
http://code.google.com/p/support/wiki/ConvertingSvnToGit
http://code.google.com/p/support/issues/detail?id=5790
http://code.google.com/p/support/issues/detail?id=5816
http://code.google.com/p/support/wiki/GitFAQ