Search This Blog


Thursday, October 9, 2014

Installing KPCLI on OS X

keepasscli (kpcli) setup

Notes on installing and configuring keepasscli (a.k.a. kpcli) on OS X 10.9 (Mavericks) and 10.10 (Yosemite)

date: May 2014

First, download kpcli.
Once downloaded, put it in its final location (e.g. ~/):

mv ~/Downloads/ ~/)

Make it executable:

chmod u+x

Install perl dependencies via cpan

sudo cpan Crypt::Rijndael
sudo cpan Sort::Naturally
sudo cpan Term::ShellUI
sudo cpan File::KeePass

In theory that should be it, but there’s a problem with Term::readline. To fix it follow the instructions here


For the Term::ReadLine::Gnu the previous link didn’t work for me when updating to OS X 10.10. Instead I followed these instructions

Other dependencies

To be able to copy to the clipboard inside kpcli (e.g. xu or xp), you will also need to install these

sudo cpan Clipboard
sudo cpan Capture::Tiny

Finally, you can make an alias to kpcli including the DB location for fast access. Add the following line to ~/.bash_profile

alias kp="/Users/myuser/ -kdb='/Users/myuser/mydb.kdbx'"

Thursday, June 19, 2014

Santiago, Chile

Great summary of Santiago: beautiful mountains, a BIG air pollution problem, lots of buildings ... and, of course, we are football fans.

Monday, June 9, 2014

Beamer ref

This is a great reference for beamer.

Monday, June 2, 2014

My Essential Sublime Text plugins

This is a personal matter, so this is mostly for self-documentation, but feel free to suggest other plugins you find essential for your own workflow.

Tuesday, May 20, 2014

Need to write a Python decorator?

Before diving into your preferred development environment, you should check if it has already been written. Here you can find several decorators to cover many common cases (momoization singleton, logging, etc.).

Saturday, May 17, 2014

Python debugger cheat-sheet

Before using it:
import pdb
A break point in the code:
this will stop the interpreter at that point in the code. Just a quick reminder of the most important commands while debugging:
  • (Pdb) p <var>: print variable <var>
  • (Pdb) l: show current place in the code
  • (Pdb) u: move up on the stack
  • (Pdb) d: move down on the stack
  • (Pdb) n: execute the next statement
  • (Pdb) c: continue running (run until the end, or the next breakpoint)
  • (Pdb) r: continue running, but only until the end of the current subroutine
  • (Pdb) s: step into
  • (Pdb) q: quit
A great and more complete reference can be found here