SkillAgentSearch skills...

Mackup

Backup and keep your application settings in sync.

Install / Use

/learn @lra/Mackup
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Mackup™

Tests PyPI version Python Versions Ruff mypy License

Backup and keep your application settings in sync.

Table of contents

Quickstart

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.

Usage

mackup backup

Back up your application files. Copy your local config files into the Mackup folder.

mackup restore

Restore your application settings on a newly installed workstation. Copy config files from the Mackup folder to your home folder.

mackup link install

Move your local config files into the Mackup folder, and link them to their original place.

$${\color{red}warning}$$ the link strategy doesn't work correctly on macOS

mackup link

On another workstation, links local config files from the Mackup folder.

mackup link uninstall

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.

mackup list

Display the list of applications supported by Mackup.

mackup -h

Get some help, obviously...

What does it do

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

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 backup
  • mackup restore

Link mode

[!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.

  • Backs up your application settings in a safe directory (e.g. Dropbox)
  • Syncs your application settings among all your workstations
  • Restores your configuration on any fresh install in one command line

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 install
  • mackup link
  • mackup link uninstall

mackup link install

If you have Dropbox, these things happen when you launch mackup link install:

  1. cp ~/.gitconfig ~/Dropbox/Mackup/.gitconfig
  2. rm ~/.gitconfig
  3. ln -s ~/Dropbox/Mackup/.gitconfig ~/.gitconfig

Now your git config is always backed up and up to date on all your workstations.

mackup link

When you launch mackup link, here's what it's really doing:

  1. ln -s ~/Dropbox/Mackup/.gitconfig ~/.gitconfig

That's it, you got your git config setup on your new workstation.

mackup does the same for any supported application.

mackup link uninstall

You 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.

Supported Storages

See the README file in the doc directory for more info.

Unsupported Storages

Supported Applications

Related Skills

View on GitHub
GitHub Stars15.2k
CategoryDevelopment
Updated3m ago
Forks937

Languages

Python

Security Score

95/100

Audited on Apr 1, 2026

No findings