pwman-tools

Check-in [35b06b14a8]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Capitalise name.
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | master | trunk
Files: files | file ages | folders
SHA3-256: 35b06b14a8b8b4328876135bb5b6074217f21dcc44a88d74362b90212f276305
User & Date: atomicules@lavabit.com 2012-12-10 09:40:56
Context
2012-12-10
09:47
Use sublists in PWman to match groups in Lastpass.

I hadn't realised PWman supports sublists (groups), therefore can match
the grouping structure used in Lastpass.

- Now reads in CSV file to hashtable. Since CSV file is not ordered by
group, using a hashtable means we can loop through and create a key
for a group if it doesn't exists, or collate entries against a
existing group/key.
- Writing out hasn't changed much. Loops through the keys of the hash
table and loops within each key/group as well. check-in: 05989bbd9b user: atomicules@lavabit.com tags: master, trunk

09:40
Capitalise name. check-in: 35b06b14a8 user: atomicules@lavabit.com tags: master, trunk
2012-09-03
08:17
GPG encrypt the file and remove plain text files as part of the script

Since that is kind of the point of scripting and automation. Might as
well get the computer to do as much as possible of the task. check-in: f2061c8df2 user: atomicules@lavabit.com tags: master, trunk

Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to README.markdown.

1
2
3
4
5
6
7
8
9
10
11
12
13
#Lastpass2pwman

CLisp script for SBCL to convert [Lastpass](https://lastpass.com) CSV export to [pwman](http://pwman.sourceforge.net) format.

Mainly done as a little learning exercise in Lisp for me, but also because I use Lastpass and also want to use a command line based password manager. Unfortunately there doesn't seem to be a command line client for Lastpass so I'm going to use pwman and every so often do a one way update of passwords.

## How to use

Developed and tested in SBCL. Use as follows

	sbcl --script /path/to/this/script <gpg id used with pwman> </path/to/lastpass/export>

The path to the Lastpass export is optional. If not supplied assumes file is called "lastpass.csv" and is in current directory. The script works by first exporting a plain text file called "pwman.txt" to current directory, however, this is then immediately encrypted via GPG and replaces the `.pwman.db` file. Both plain text files (the Lastpass export and `pwman.txt`) are then deleted - unless an error occurs with the encryption, in which case the script notifies the user and leaves the files.


|

|








1
2
3
4
5
6
7
8
9
10
11
12
13
#Lastpass2pwman

CLisp script for SBCL to convert [Lastpass](https://lastpass.com) CSV export to [PWman](http://pwman.sourceforge.net) format.

Mainly done as a little learning exercise in Lisp for me, but also because I use Lastpass and also want to use a command line based password manager. Unfortunately there doesn't seem to be a command line client for Lastpass so I'm going to use PWman and every so often do a one way update of passwords.

## How to use

Developed and tested in SBCL. Use as follows

	sbcl --script /path/to/this/script <gpg id used with pwman> </path/to/lastpass/export>

The path to the Lastpass export is optional. If not supplied assumes file is called "lastpass.csv" and is in current directory. The script works by first exporting a plain text file called "pwman.txt" to current directory, however, this is then immediately encrypted via GPG and replaces the `.pwman.db` file. Both plain text files (the Lastpass export and `pwman.txt`) are then deleted - unless an error occurs with the encryption, in which case the script notifies the user and leaves the files.