RazorAntMain.Core.Pages.Page RazorAntMain.Core.Pages.Page


Using Dropbox

Like many apps, ProfitTrain stores its data in a folder inside of Application Support. The path is something like this:

/[HD]/Users/[you]/Library/Application Support/ProfitTrain/

Some people have asked for the ability to control where this folder is located. They want to keep the data inside of their Dropbox folder thus allowing the data to move with them from desktop to laptop and so on.

You can accomplish this using a unix filesystem technique called symlinks which I'll soon demo, but before I do please understand there is some risk in doing this.

Aside: Dropbox has a free 2 GB option that is more than enough for syncing ProfitTrain and is a great way to get started with their service. If you are just starting out you can use this referral link. Doing so gets me a little bit of extra space.

Signup for Dropbox


The Dropbox solution is a very good one if you are jumping back and forth from a desktop and a laptop. It is however only valid if you are doing this in a linear sequence. For example:

  • You do some work in ProfitTrain on the desktop.
  • Dropbox syncs on the desktop.
  • You want to move to the laptop.
  • You make sure you dropbox syncs on the laptop to pick up the changes you made while working on the desktop.
  • You do some work in ProfitTrain on the laptop.
  • Dropbox syncs on the laptop.
  • You want to move to the desktop.
  • You make sure you dropbox syncs on the desktop to pick up the changes you made while working on the laptop.
  • You do some work in ProfitTrain on the desktop.

Dropbox is very good about syncing right away as the filesystem changes so this list looks more manually that it usually is. The times it will fail is when you don't have internet access and/or you make edits on both the desktop and the laptop at the same time. Dropbox does not attempt any kind of smart merge and will let the newer file live. This could result in some disjointed data if you edit in two places outside of a dropbox sync event.

How to set it up.

Assuming you already have installed and setup your Dropbox account you should see a folder in your home directory called Dropbox:


This is where all the magical syncing happens and where we want to place the ProfitTrain data folder.

First, make sure ProfitTrain is not running. Then using terminal (or Finder) to move the ProfitTrain folder from Application Support to the Dropbox folder. (This is the command I used, replace zorn with your short username.)

mv /Users/zorn/Library/Application\ Support/ProfitTrain \

The next thing we need to do is set up the symlink so whenever an application asks for something in the original folder, it gets remapped to the new Dropbox location.

ln -s /Users/zorn/Dropbox/ProfitTrain \
  /Users/zorn/Library/Application\ Support/ProfitTrain`

To check to see if it worked cd to the Application Support folder and do a list of the contents.

cd ~/Library/Application\ Support/
ls -la

You should see a list of all the files and folders inside of Application Support. Including a line like this for ProfitTrain.

lrwxr-xr-x 1 zorn staff 31 Apr 9 13:47 ProfitTrain -> /Users/zorn/Dropbox/ProfitTrain

That first l signifies this is a symlink and the -> at the end shows us where the link directs to.

Repeat this setting up of the symlink on your laptop and you should be good to go.

Final note: if you are using Dropbox regularly you may want to disable the automatic backing up of the main sqlite file. Dropbox kind of does this for you via its file version browser and the extra files will slowly eat up your disk space allowance on Dropbox

What we are not syncing

There is a preference file that stores your serial among other things like previous window states and selections.


It however is not something you'll want to keep in the Dropbox folder for syncing between different machines. For example, you might have last placed the line item blueprint window on the far right of the desktop screen but on your 13-inch laptop screen that location doesn't make much sense.

Local Network Storage

Some people have asked if they can use this approach to host the ProfitTrain data folder on a local network storage device. Technically I think it would work but you would have to watch out for a few things:

  • If the network storage disappears while you are running ProfitTrain bad things might happen.
  • If you try to run ProfitTrain on two machines at the same time bad things might happen.

Just to be painfully clear, ProfitTrain was built assuming its local storage would be controlled by itself alone and not disappear during the runtime. Network storage opens the door for these assumptions to break so be careful.