Backup and keep your application settings in sync.
On macOS or Linux, if you want an easy install, you can install Homebrew and do:
# Install Mackup
brew install mackup
# Launch it and back up your files
mackup backup
If not running macOS or Linux, or you don't like Homebrew, you can use pip.
# Install Mackup with PIP
pip install --upgrade mackup
# Launch it and back up your files
mackup backup
You're all set and can back up from now on.
Next, on any new workstation, do:
# Install Mackup
brew install mackup
# Launch it and restore your files
mackup restore
Done!
You can find more detailed instructions in INSTALL.md.
backup, restore, link install, link uninstall and link operate on all
of your configured applications by default. To limit a command to a single
application, add its name (the identifier shown by mackup list), e.g.
mackup backup vim. Naming an application overrides the
[applications_to_sync] / [applications_to_ignore] settings in your
.mackup.cfg, so you can act on any supported app without editing your config.
mackup backup [application]
Back up your application files. Copy your local config files into the Mackup folder.
Name an application to back up only that one, e.g. mackup backup vim.
mackup restore [application]
Restore your application settings on a newly installed workstation.
Copy config files from the Mackup folder to your home folder.
Name an application to restore only that one, e.g. mackup restore emacs.
mackup link install [application]
Move your local config files into the Mackup folder, and link them to their original place. Name an application to install only that one.
$${\color{red}warning}$$ the link strategy doesn't work correctly on macOS
mackup link [application]
On another workstation, links local config files from the Mackup folder. Name an application to link only that one.
mackup link uninstall [application]
Copy back any synced config file to its original place.
Removes the links and copies config files from the Mackup folder back into your
home.
Name an application (e.g. mackup link uninstall git) to unlink only that one;
scoping to an application skips the global uninstall confirmation.
mackup list
Display the list of applications supported by Mackup.
mackup -h
Get some help, obviously...
By only tracking pure configuration files, it keeps the crap out of your freshly new installed workstation (no cache, temporary and locally specific files are transferred).
Mackup makes setting up the environment easy and simple.
There are 2 modes of operations: copy mode and link mode.
Copy mode is used to back up and restore your files. The files are backed up into the configured Mackup folder, which can be in Dropbox, iCloud, or wherever you configure it.
It is covered by the 2 commands:
mackup backupmackup restore[!WARNING] If you are using Mackup on a current version of macOS, link mode will BREAK YOUR PREFERENCES. macOS Sonoma (macOS 14) and later don't support symlinked preferences, see issue #2035 for additional information. PR #2085 added copy mode, which should be used instead.
Link mode is used to move your config files into the Mackup folder, and link them back to their original place.
This mode is useful if you are using multiple workstations, and want to keep your application settings in sync at all times.
Let's take git as an example. Your settings for git are saved in your home
folder, in the .gitconfig file.
It is covered by the 3 commands:
mackup link installmackup linkmackup link uninstallmackup link installIf you have Dropbox, these things happen when you launch mackup link install:
cp ~/.gitconfig ~/Dropbox/Mackup/.gitconfigrm ~/.gitconfigln -s ~/Dropbox/Mackup/.gitconfig ~/.gitconfigNow your git config is always backed up and up to date on all your workstations.
mackup linkWhen you launch mackup link, here's what it's really doing:
ln -s ~/Dropbox/Mackup/.gitconfig ~/.gitconfigThat's it, you got your git config setup on your new workstation.
mackup does the same for any supported application.
mackup link uninstallYou can revert all your files to their original state.
# Just run this
mackup link uninstall
This will remove the symlinks and copy back the files from the Mackup folder in Dropbox to their original places in your home. The Mackup folder and the files in it stay put, so that any other computer also running Mackup is unaffected.
To revert a single application instead, name it, e.g.
mackup link uninstall git. Scoping the command to an application unlinks only
that app — the rest of your setup and the Mackup config itself are left in
place, and the global uninstall confirmation is skipped.
See the README file in the doc directory for more info.
$ claude mcp add mackup \
-- python -m otcore.mcp_server <graph>