1Password, Dropbox and symbolic links

If you have a Mac and don’t use 1Password, you’re missing a lot. If you have a computer and don’t use Dropbox — see previous sentence. If you think you have a mobile and it’s not an iPhone

Anyway, for some time now 1Password was touting new feature — Dropbox sync. All should be working in an Apple-way — just turn it on and voilà. Unfortunately 1Password has problems if it’s password repository is located in a directory that in not directly under Dropbox folder. For example in a directory that is sym-linked to Dropbox folder.

For example my Dropbox folder looks like this:

Kuba$ ls -la Dropbox
total 736
drwxr-xr-x@ 11 Kuba  staff    374 20 wrz 23:03 . 
drwxr-xr-x+ 51 Kuba  staff   1734 20 wrz 22:44 ..
-rw-r--r--@  1 Kuba  staff  15364 20 wrz 22:57 .DS_Store
lrwxr-xr-x   1 Kuba  staff     13  6 wrz  2009 Documents -> ../Documents/
-rw-r--r--@  1 Kuba  staff      0 19 wrz 11:14 Icon?
lrwxr-xr-x   1 Kuba  staff     12  6 wrz  2009 Projects -> ../Projects/
drwxr-xr-x@  3 Kuba  staff    102 19 wrz 11:14 Public

And inside Dropbox/Documents you can find 1Password.agilekeychain. In such a setting iPhone will never locate your file. But fear not, all you need is a small text file .ws.agile.1Password.settings located inside your Dropbox main folder. This file should have path to agilekeychain.

Kuba$ ls -la Dropbox/
total 736
drwxr-xr-x@ 11 Kuba  staff    374 20 wrz 23:03 .
drwxr-xr-x+ 51 Kuba  staff   1734 20 wrz 22:44 ..
-rw-r--r--@  1 Kuba  staff  15364 20 wrz 22:57 .DS_Store
-rw-r--r--@  1 Kuba  staff     33 20 wrz 22:58 .ws.agile.1Password.settings
drwxr-xr-x   2 Kuba  staff     68 20 wrz 22:59 Document
lrwxr-xr-x   1 Kuba  staff     13  6 wrz  2009 Documents -> ../Documents/
-rw-r--r--@  1 Kuba  staff      0 19 wrz 11:14 Icon?
lrwxr-xr-x   1 Kuba  staff     12  6 wrz  2009 Projects -> ../Projects/
drwxr-xr-x@  3 Kuba  staff    102 19 wrz 11:14 Public

And what’s inside the file:

Kuba$ cat Dropbox/.ws.agile.1Password.settings 
Documents/1Password.agilekeychainKuba$

Notice lack of newline at the end of the file. Now all should be working.