Keep your application settings in sync (OS X/Linux)

Related tags

mackup
Overview

Mackup

Keep your application settings in sync.

Status snapcraft

Table of content

Quickstart

If you have Dropbox installed and want to use it to save your config files, that's super easy.

On OS X, 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 OS X, or you don't like Homebrew, you can use pip.

Note: The below command will check if a previous version of Mackup is already installed on your system. If this is the case, it will be upgraded to the latest version.

# Install Mackup with PIP
pip install --upgrade mackup

# Launch it and back up your files
mackup backup

On Ubuntu, pip will install to the current user's home directory rather than system-wide. Because of this, when installing pip on Ubuntu you will need to run pip install with the --system flag as well (on other platforms this is not needed)

You're all set and constantly backed 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

Backup your application settings.

mackup restore

Restore your application settings on a newly installed workstation.

mackup uninstall

Copy back any synced config file to its original place.

mackup list

Display the list of applications supported by Mackup.

mackup -h

Get some help, obviously...

What does it do

  • Back ups 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

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 transfered).

Mackup makes setting up the environment easy and simple, saving time for your family, great ideas, and all the cool stuff you like.

Bullsh*t, what does it really do to my files

Let's take git as an example. Your settings for git are saved in your home folder, in the .gitconfig file.

Backup

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

  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.

Restore

When you launch mackup restore, 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.

Uninstall

You can revert all your files to their original state.

# Just run this
mackup 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

Can you support application X

We can with your help ;)

Personalization & configuration

Have an application that shouldn't be generally supported but that you use? Or a cool file you want to sync?

Why did you do this

Yesterday, I had a talk with Zach Zaro, complaining about the pain it is to reconfigure our Macbook each time we get a new one or install from scratch. That's a talk we have already had months ago.

I change my workstation every X months. Each time I either lose my apps' configurations, or I just waste a bunch of hours getting setup like I was on my old box. I also spend a lot of time reconfiguring the same stuff again on all my workstations (home, work).

Boring...

Some people tried to solve the problem on the application layer, like Github's Boxen, but it solves a different problem, from my point of view. I don't spend a lot of time installing or downloading stuff. I spend time configuring it.

For years, I've used a personal shell script that was copying known config files into Subversion, Git or Dropbox, and linked them into my home. But I felt a lot of us had the same problem: Making a more generic tool could help others and I could get help from others to support more apps in the tool.

So here comes Mackup, the little tool that will sync all your application configs to Dropbox (or Google Drive, or anything).

And it's GPL, of course.

What platforms are supported

  • OS X
  • GNU/Linux

What's up with the weird name

Mackup is just a portmanteau of Mac and Backup. It is simple, short, and easy to remember, and it corresponds with the whole idea of Mackup: the simpler – the better! (And I suck at naming stuff, but who doesn't.)

Where can I find more information

In the doc directory.

Issues
  • Crash while backing up Atom

    Crash while backing up Atom

    Got this when trying to backup my .atom folder :

    Traceback (most recent call last):
      File "/usr/local/bin/mackup", line 26, in <module>
        mackup.main.main()
      File "/usr/local/Cellar/mackup/0.7.2/lib/python2.7/site-packages/mackup/main.py", line 48, in main
        app.backup()
      File "/usr/local/Cellar/mackup/0.7.2/lib/python2.7/site-packages/mackup/application.py", line 83, in backup
        utils.copy(filepath, mackup_filepath)
      File "/usr/local/Cellar/mackup/0.7.2/lib/python2.7/site-packages/mackup/utils.py", line 91, in copy
        shutil.copytree(src, dst)
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/shutil.py", line 208, in copytree
        raise Error, errors
    shutil.Error: [('/Users/anahkiasen/.atom/packages/emmet/node_modules/.bin/csonc', '/Users/anahkiasen/Dropbox/Mackup/.atom/packages/emmet/node_modules/.bin/csonc', "[Errno 2] No such file or directory: '/Users/anahkiasen/.atom/packages/emmet/node_modules/.bin/csonc'"), ('/Users/anahkiasen/.atom/packages/emmet/node_modules/season/node_modules/.bin/cake', '/Users/anahkiasen/Dropbox/Mackup/.atom/packages/emmet/node_modules/season/node_modules/.bin/cake', "[Errno 2] No such file or directory: '/Users/anahkiasen/.atom/packages/emmet/node_modules/season/node_modules/.bin/cake'"), ('/Users/anahkiasen/.atom/packages/emmet/node_modules/season/node_modules/.bin/coffee', '/Users/anahkiasen/Dropbox/Mackup/.atom/packages/emmet/node_modules/season/node_modules/.bin/coffee', "[Errno 2] No such file or directory: '/Users/anahkiasen/.atom/packages/emmet/node_modules/season/node_modules/.bin/coffee'"), ('/Users/anahkiasen/.atom/packages/emmet/node_modules/season/node_modules/fs-plus/node_modules/.bin/rimraf', '/Users/anahkiasen/Dropbox/Mackup/.atom/packages/emmet/node_modules/season/node_modules/fs-plus/node_modules/.bin/rimraf', "[Errno 2] No such file or directory: '/Users/anahkiasen/.atom/packages/emmet/node_modules/season/node_modules/fs-plus/node_modules/.bin/rimraf'"), ('/Users/anahkiasen/.atom/packages/travis-ci-status/node_modules/.bin/travis-ci', '/Users/anahkiasen/Dropbox/Mackup/.atom/packages/travis-ci-status/node_modules/.bin/travis-ci', "[Errno 2] No such file or directory: '/Users/anahkiasen/.atom/packages/travis-ci-status/node_modules/.bin/travis-ci'")]
    
    opened by Anahkiasen 29
  • Configuration Generation

    Configuration Generation

    If ~/.mackup.cfg does not exist, Mackup asks the user if he wants to make one. It then prompts them to answer some questions so that it can be generated. Also generates custom apps in the ~/.mackup folder if the user wants to.

    User Action Needed 
    opened by Timidger 29
  • Support Mac App Store apps

    Support Mac App Store apps

    Mac App Store apps keep files inside ~/Library/Containers/. These cannot be replaced with soft links (ln -s), but do work with hard links (ln) and OS X aliases. Since hard links cannot be used on directories, this would work for many apps, but not all.

    My suggestion would be to add CONTAINERS = 'Library/Containers/' to # Commonly used paths #, and then when mackup encounters an app that references something that starts with CONTAINERS, use the applescript way; else, make a symbolic link as always.

    opened by vitorgalvao 25
  • Mavericks caching issue renders mackup useless and harmful with some apps

    Mavericks caching issue renders mackup useless and harmful with some apps

    Mavericks uses cfprefsd deamon to cache app settings. This caused mackup not to work for many apps (for example Forklift, F.lux) and even worse, to delete settings.

    http://www.macinside.info/process.php?id=6616

    Steps to reproduce:

    1. Login in both computers
    2. Open Forklift (for example, can be any app with a plist file in ~/Library/Preferences/) in both computers.
    3. Quit Forklift in both computers.
    4. On computer #1, change a setting for the app, close the app, and wait for dropbox to sync the file to the second computer.
    5. On computer #2, open forklift. You will notice the app doesn't reflect your change.
    6. Close the app. The plist file will get overwritten with the settings that are on computer #2, therefore deleting the setting you've set on step 3.

    I've tried disabling the cfprefsd service, however, this prevents the mac from loading any plist file.

    opened by inonprince 25
  • Copying settings, as opposed to linking?

    Copying settings, as opposed to linking?

    I’ve been thinking about this option lately. I’ve personally had my fair share of issues caused by the way mackup works by default (making links to a dropbox directory), whether by having more than one computer logged on at the same time, changes to mackup itself, or some other reason. I’ve also seen some other open issues with problems that would not occur would it not be for settings being symlinked, as opposed to copied over.

    How many times do users change app settings, really? Wouldn’t the extra (small) trouble of running a command when updating settings be a more than acceptable price to pay for improved stability? It would also provide some features for free, like support for MAS apps.

    Now, I certainly understand that would be a big change to this tool (that a lot of people use), so I’m looking for your input on this, @lra, is this something you’d be willing to consider?

    opened by vitorgalvao 22
  • No such file .mackup.cfg and KeyError: 'mackup'

    No such file .mackup.cfg and KeyError: 'mackup'

    I have backup on Dropbox one day ago, and config with ~/.mackup.cfg but today use mackup restore and get error on new mac.

    error message:

    $ mackup restore
    Traceback (most recent call last):
      File "/usr/local/Cellar/mackup/0.8.1/libexec/bin/mackup", line 9, in <module>
        load_entry_point('mackup==0.8.1', 'console_scripts', 'mackup')()
      File "/usr/local/Cellar/mackup/0.8.1/libexec/lib/python2.7/site-packages/mackup/main.py", line 59, in main
        mackup_app.restore()
      File "/usr/local/Cellar/mackup/0.8.1/libexec/lib/python2.7/site-packages/mackup/application.py", line 122, in restore
        home_filepath))
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/posixpath.py", line 162, in samefile
        s1 = os.stat(f1)
    OSError: [Errno 2] No such file or directory: '/Users/amowu/Dropbox/Mackup/.mackup.cfg'
    

    why the .mackup.cfg change to Dropbox folder?

    thanks.

    opened by amowu 18
  • Does Mackup still sync SSH keys by default?

    Does Mackup still sync SSH keys by default?

    Today I was using Mackup and I noticed this in the help documentation:

    By default, Mackup syncs all application data (including private keys!) via Dropbox, but may be configured to exclude applications or use a different backend with a .mackup.cfg file.

    I really like Mackup—it saves a ton of time when setting up a new computer. However, the idea of automatically syncing SSH keys by default really scares me. A few years ago I accidentally exposed an SSH key and someone used it to charge a few thousand dollars to AWS for my company. I'd really like to avoid doing anything like this again in the future.

    In reading through #512 and #109, it looks like this behavior was turned off. However, the help documentation doesn't seem to indicate that. So which one is correct? I feel strongly that synching private keys by default is not obvious behavior, and it has the potential to have some serious consequences.

    Also, will Mackup sync other types of sensitive information in the future? What scares me most about this is not necessarily what Mackup is syncing today, but what it might add in the future that I don't notice.

    Thanks!

    opened by LandonSchropp 18
  • Mackup breaks oh-my-zsh upgrade

    Mackup breaks oh-my-zsh upgrade

    I'm using the iCould engine, no other configuration.

    After running mackup backup -f, the ~/.oh-my-zsh is left in a dirty state, which breaks upgrade_oh_my_zsh.

    ➜  .oh-my-zsh git:(master) ✗ git status
    On branch master
    Your branch is up to date with 'origin/master'.
    
    Changes not staged for commit:
      (use "git add/rm <file>..." to update what will be committed)
      (use "git checkout -- <file>..." to discard changes in working directory)
    
    	deleted:    custom/example.zsh
    	deleted:    custom/plugins/example/example.plugin.zsh
    	deleted:    custom/themes/example.zsh-theme
    
    Untracked files:
      (use "git add <file>..." to include in what will be committed)
    
    	custom
    
    no changes added to commit (use "git add" and/or "git commit -a")
    
    ➜  ~ upgrade_oh_my_zsh
    Updating Oh My Zsh
    error: cannot pull with rebase: You have unstaged changes.
    error: please commit or stash them.
    There was an error updating. Try again later?
    
    opened by ileitch 18
  • Add support for Mac OS X Terminal

    Add support for Mac OS X Terminal

    User Action Needed 
    opened by ryanjbonnell 18
  • Corrects path to Divvy plist.

    Corrects path to Divvy plist.

    Syncing with Divvy 1.3.8 on 10.9 and 10.7

    opened by oalders 17
  • Apps licensed via SetApp

    Apps licensed via SetApp

    I use a number of apps supported by mackup that I license via SetApp - the config files for these versions of the apps have a different filename, eg com.surteesstudios.Bartender-setapp.plist. It would be nice not to have to manually add all of these versions, what would be the 'correct' way to add support for them? Should I add the setapp versions of the config files to each app?

    opened by tomhosking 0
  • mackup restore on new machine cause PermissionError: [Errno 13] Permission denied: 'Contents'

    mackup restore on new machine cause PermissionError: [Errno 13] Permission denied: 'Contents'

    Hi, I am having a problem using mackup with file_system. what I do is the following PermissionError: [Errno 13] Permission denied: 'Contents'

    opened by uni-pai 3
  • Add Support for FastScripts

    Add Support for FastScripts

    opened by darrenbkl 0
  • Add new PhpStorm versions

    Add new PhpStorm versions

    opened by driesvints 0
  • Add support for Goku

    Add support for Goku

    opened by thebengeu 0
  • add support for akamai-cli

    add support for akamai-cli

    opened by anirudhbagri 0
  • Feature Request: Adobe Premiere Pro

    Feature Request: Adobe Premiere Pro

    Is it possible to add Premiere Pro settings to Mackup?

    opened by oceanscape 1
  • Bump urllib3 from 1.25.9 to 1.26.5

    Bump urllib3 from 1.25.9 to 1.26.5

    Bumps urllib3 from 1.25.9 to 1.26.5.

    Release notes

    Sourced from urllib3's releases.

    1.26.5

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed deprecation warnings emitted in Python 3.10.
    • Updated vendored six library to 1.16.0.
    • Improved performance of URL parser when splitting the authority component.

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.4

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Changed behavior of the default SSLContext when connecting to HTTPS proxy during HTTPS requests. The default SSLContext now sets check_hostname=True.

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.3

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed bytes and string comparison issue with headers (Pull #2141)

    • Changed ProxySchemeUnknown error message to be more actionable if the user supplies a proxy URL without a scheme (Pull #2107)

    If you or your organization rely on urllib3 consider supporting us via GitHub Sponsors

    1.26.2

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed an issue where wrap_socket and CERT_REQUIRED wouldn't be imported properly on Python 2.7.8 and earlier (Pull #2052)

    1.26.1

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Fixed an issue where two User-Agent headers would be sent if a User-Agent header key is passed as bytes (Pull #2047)

    1.26.0

    :warning: IMPORTANT: urllib3 v2.0 will drop support for Python 2: Read more in the v2.0 Roadmap

    • Added support for HTTPS proxies contacting HTTPS servers (Pull #1923, Pull #1806)

    • Deprecated negotiating TLSv1 and TLSv1.1 by default. Users that still wish to use TLS earlier than 1.2 without a deprecation warning should opt-in explicitly by setting ssl_version=ssl.PROTOCOL_TLSv1_1 (Pull #2002) Starting in urllib3 v2.0: Connections that receive a DeprecationWarning will fail

    • Deprecated Retry options Retry.DEFAULT_METHOD_WHITELIST, Retry.DEFAULT_REDIRECT_HEADERS_BLACKLIST and Retry(method_whitelist=...) in favor of Retry.DEFAULT_ALLOWED_METHODS, Retry.DEFAULT_REMOVE_HEADERS_ON_REDIRECT, and Retry(allowed_methods=...) (Pull #2000) Starting in urllib3 v2.0: Deprecated options will be removed

    ... (truncated)

    Changelog

    Sourced from urllib3's changelog.

    1.26.5 (2021-05-26)

    • Fixed deprecation warnings emitted in Python 3.10.
    • Updated vendored six library to 1.16.0.
    • Improved performance of URL parser when splitting the authority component.

    1.26.4 (2021-03-15)

    • Changed behavior of the default SSLContext when connecting to HTTPS proxy during HTTPS requests. The default SSLContext now sets check_hostname=True.

    1.26.3 (2021-01-26)

    • Fixed bytes and string comparison issue with headers (Pull #2141)

    • Changed ProxySchemeUnknown error message to be more actionable if the user supplies a proxy URL without a scheme. (Pull #2107)

    1.26.2 (2020-11-12)

    • Fixed an issue where wrap_socket and CERT_REQUIRED wouldn't be imported properly on Python 2.7.8 and earlier (Pull #2052)

    1.26.1 (2020-11-11)

    • Fixed an issue where two User-Agent headers would be sent if a User-Agent header key is passed as bytes (Pull #2047)

    1.26.0 (2020-11-10)

    • NOTE: urllib3 v2.0 will drop support for Python 2. Read more in the v2.0 Roadmap <https://urllib3.readthedocs.io/en/latest/v2-roadmap.html>_.

    • Added support for HTTPS proxies contacting HTTPS servers (Pull #1923, Pull #1806)

    • Deprecated negotiating TLSv1 and TLSv1.1 by default. Users that still wish to use TLS earlier than 1.2 without a deprecation warning

    ... (truncated)

    Commits
    • d161647 Release 1.26.5
    • 2d4a3fe Improve performance of sub-authority splitting in URL
    • 2698537 Update vendored six to 1.16.0
    • 07bed79 Fix deprecation warnings for Python 3.10 ssl module
    • d725a9b Add Python 3.10 to GitHub Actions
    • 339ad34 Use pytest==6.2.4 on Python 3.10+
    • f271c9c Apply latest Black formatting
    • 1884878 [1.26] Properly proxy EOF on the SSLTransport test suite
    • a891304 Release 1.26.4
    • 8d65ea1 Merge pull request from GHSA-5phf-pp7p-vc2r
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Cannot uninstall on Big Sur 11.4 m1

    Cannot uninstall on Big Sur 11.4 m1

    I'm trying to restore back all the dotfiles and settings since iTerm2 and other software all keep resetting the preferences, but can't:

    [daniyar:~] [base] % mackup uninstall
    You are going to uninstall Mackup.
    Every configuration file, setting and dotfile managed by Mackup will be unlinked and moved back to their original place, in your home folder.
    Are you sure ? <Yes|No>yes
    Reverting Library/Preferences/com.apple.Music.eq.plist ...
    Reverting Library/Preferences/com.apple.Music.plist ...
    Reverting .atom/config.cson ...
    Reverting Library/Preferences/com.github.atom.plist ...
    Reverting .bash_profile ...
    Reverting Library/Preferences/calibre ...
    Traceback (most recent call last):
      File "/opt/homebrew/bin/mackup", line 33, in <module>
        sys.exit(load_entry_point('mackup==0.8.32', 'console_scripts', 'mackup')())
      File "/opt/homebrew/Cellar/mackup/0.8.32/libexec/lib/python3.9/site-packages/mackup/main.py", line 146, in main
        app.uninstall()
      File "/opt/homebrew/Cellar/mackup/0.8.32/libexec/lib/python3.9/site-packages/mackup/application.py", line 264, in uninstall
        utils.copy(mackup_filepath, home_filepath)
      File "/opt/homebrew/Cellar/mackup/0.8.32/libexec/lib/python3.9/site-packages/mackup/utils.py", line 105, in copy
        shutil.copytree(src, dst)
      File "/opt/homebrew/Cellar/[email protected]/3.9.5/Frameworks/Python.framework/Versions/3.9/lib/python3.9/shutil.py", line 557, in copytree
        return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
      File "/opt/homebrew/Cellar/[email protected]/3.9.5/Frameworks/Python.framework/Versions/3.9/lib/python3.9/shutil.py", line 513, in _copytree
        raise Error(errors)
    shutil.Error: [('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/gui.json', '/Users/daniyar/Library/Preferences/calibre/gui.json', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/gui.json'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/dynamic.pickle.json', '/Users/daniyar/Library/Preferences/calibre/dynamic.pickle.json', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/dynamic.pickle.json'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/plugins/KFX Input.zip', '/Users/daniyar/Library/Preferences/calibre/plugins/KFX Input.zip', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/plugins/KFX Input.zip'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/plugins/DeDRM.zip', '/Users/daniyar/Library/Preferences/calibre/plugins/DeDRM.zip', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/plugins/DeDRM.zip'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/plugins/dedrm.json', '/Users/daniyar/Library/Preferences/calibre/plugins/dedrm.json', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/plugins/dedrm.json'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/plugins/DeDRM/libraryfiles/libalfcrypto.dylib', '/Users/daniyar/Library/Preferences/calibre/plugins/DeDRM/libraryfiles/libalfcrypto.dylib', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/plugins/DeDRM/libraryfiles/libalfcrypto.dylib'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/plugins/DeDRM/help/DeDRM_EInk Kindle Serial Number_Help.htm', '/Users/daniyar/Library/Preferences/calibre/plugins/DeDRM/help/DeDRM_EInk Kindle Serial Number_Help.htm', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/plugins/DeDRM/help/DeDRM_EInk Kindle Serial Number_Help.htm'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/resources/images/mimetypes/kfx.png', '/Users/daniyar/Library/Preferences/calibre/resources/images/mimetypes/kfx.png', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/resources/images/mimetypes/kfx.png'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/global.py.json', '/Users/daniyar/Library/Preferences/calibre/global.py.json', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/global.py.json'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/toc.py', '/Users/daniyar/Library/Preferences/calibre/conversion/toc.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/toc.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/metadata.py', '/Users/daniyar/Library/Preferences/calibre/conversion/metadata.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/metadata.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/heuristics.py', '/Users/daniyar/Library/Preferences/calibre/conversion/heuristics.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/heuristics.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/search_and_replace.py', '/Users/daniyar/Library/Preferences/calibre/conversion/search_and_replace.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/search_and_replace.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/fb2_output.py', '/Users/daniyar/Library/Preferences/calibre/conversion/fb2_output.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/fb2_output.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/kfx_input.py', '/Users/daniyar/Library/Preferences/calibre/conversion/kfx_input.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/kfx_input.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/comic_input.py', '/Users/daniyar/Library/Preferences/calibre/conversion/comic_input.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/comic_input.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/debug.py', '/Users/daniyar/Library/Preferences/calibre/conversion/debug.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/debug.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/epub_output.py', '/Users/daniyar/Library/Preferences/calibre/conversion/epub_output.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/epub_output.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/page_setup.py', '/Users/daniyar/Library/Preferences/calibre/conversion/page_setup.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/page_setup.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/look_and_feel.py', '/Users/daniyar/Library/Preferences/calibre/conversion/look_and_feel.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/look_and_feel.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/conversion/structure_detection.py', '/Users/daniyar/Library/Preferences/calibre/conversion/structure_detection.py', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/conversion/structure_detection.py'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/gui.py.json', '/Users/daniyar/Library/Preferences/calibre/gui.py.json', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/gui.py.json'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/customize.py.json', '/Users/daniyar/Library/Preferences/calibre/customize.py.json', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/customize.py.json'"), ('/Volumes/GoogleDrive/My Drive/backup/mackup_air/Mackup/Library/Preferences/calibre/fonts/scanner_cache.json', '/Users/daniyar/Library/Preferences/calibre/fonts/scanner_cache.json', "[Errno 1] Operation not permitted: '/Users/daniyar/Library/Preferences/calibre/fonts/scanner_cache.json'")]
    

    Using Mackup 0.8.32

    opened by micweeks 1
Releases(0.8.32)
  • 0.8.32(Jan 4, 2021)

  • 0.8.31(Jan 3, 2021)

  • 0.8.30(Jan 3, 2021)

    • Added support for SpaceVim (via @ionlights)
    • Added support for clashX (via @awkj)
    • Added support for Brave (via @cbenv)
    • Added support for Nushell (via @leesiongchan)
    • Updated support for Clipy (via @jclerc)
    • Added support for aerc (via @Crocmagnon)
    • Added support for espanso (via @maxandersen)
    • Added support for lazygit (via @joshmedeski)
    • Added support for WebStorm versions 2019.4, 2020.2, 2020.3, 2020.4 (via @bdcarr)
    • Added support for draft (via @dfang)
    • Added support for lf (via @joshmedeski)
    • Added support for Beets (via @publicarray)
    • Added support for Krew (via @exherb)
    • Added support for Homebrew (via @exherb)
    • Added support for PyCharm versions 2020.2, 2020.3, 2020.4 (via @ameyuuno)
    • Added support for Netlify (via @pgilad)
    • Added support for K9s (via @tareksamni)
    • Added support for Powerlevel10k (via @tareksamni)
    • Updated support for aria2 (via @hongqn)
    • Update support for IntelliJ (via @scooby)
    • Added support for zoxide (via @kidonng)
    • Added support for Raycast (via @janniks)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.29(Jun 6, 2020)

    • Added support for waybar (via @mk-atlassian)
    • Added support for mako (via @mk-atlassian)
    • Added support for Swaywm (via @mk-atlassian)
    • Added support for termite (via @mk-atlassian)
    • Added support for Calibre (via @ttuygun @bodak)
    • Added support for Poetry (via @ryoppippi)
    • Added support for Music (via @dnicolson)
    • Added support for Kaggle (via @ryoppippi)
    • Added support for SBT 1.0 (via @austek)
    • Added support for FiloSottile/mkcert (via @paxperscientiam)
    • Added support for Finicky (via @ryoppippi)
    • Added support for GoodSync (via @cereallarceny)
    • Added support for mitmproxy (via @etiennelb)
    • Added support for Hocus Focus (via @jrolfs)
    • Added support for TripMode (via @ttuygun)
    • Added support for Starship (via @callummr)
    • Added support for Joplin (via @geekrainy)
    • Added support for iStat Menus 6 and unified config files (via @lumaxis)
    • Added the --root command line option
    • Removed support for Sketch
    • Added support for PyCharm 2020.1 (via @ameyuuno)
    • Added support for Powerline (via @ho-oto)
    • Added support for Yarn (via @dhb52)
    • Add support for Quitter (via @guillaumealgis)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.28(Feb 27, 2020)

    • Added support for Bat (via @joshmedeski)
    • Added support for newer versions of WebStorm
    • Updated support for Marta to capture new config files in 0.6.1 (via @petrbouchal)
    • Added support for Rectangle (via @arvindch)
    • Added support for BitBar (via @dnicolson)
    • Added support for JS Beautifier (via @dnicolson)
    • Added support for ripgrep (via @dnicolson)
    • Added support for Bump (via @dnicolson)
    • Added support for rclone (via @dnicolson)
    • Added support for NoSQLBooster for MongoDB (via @ivan-ha)
    • Updated support for RStudio, config stored in JSON as of v1.3.776 (via @petrbouchal)
    • Vulnerability fix
    • Removed support for Python 3.5
    • Removed support for the Box storage
    • Fix: suppress errors when handling symlinks (via @doubleloop)
    • Migrated all config files to the XDG format
    • Add support for Python 3.8
    Source code(tar.gz)
    Source code(zip)
  • 0.8.27(Aug 25, 2019)

    • Added support for SpaceLauncher (via @joshmedeski)
    • Added support for Dejal Time Out
    • Add support for PhpStorm 2019.2
    • Migrated build system to pipenv
    • Replaced flake8 with black to enforce code formatting
    • Add support for ToothFairy scripts (via @dnicolson)
    • Add support for TablePlus (via @alekseyp)
    • Add support for Startupizer2 (via @narze)
    • Added support for pnpm (@via paxperscientiam)
    • Added partial support for Gimp (via @paxperscientiam)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.26(Jul 28, 2019)

  • 0.8.25(Jul 13, 2019)

    • Added support for mackup show <application> (suggested by @timkelty)
    • Add support for yabai (via @mbdmbd)
    • Improve support for Little Snitch (via @lorenzofanchi)
    • Improve support for Photoshop CC 2019 (via @lorenzofanchi)
    • Add support for ColorSlurp (via @lorenzofanchi)
    • Add support for Secure Pipes (via @lorenzofanchi)
    • Add support for Xee (via @lorenzofanchi)
    • Add support for 2Do (via @lorenzofanchi)
    • Add support for Shifty (via @lorenzofanchi)
    • Add support for Pock (via @lorenzofanchi)
    • Add support for Multitouch (via @lorenzofanchi)
    • Add support for Magnet (via @lorenzofanchi)
    • Added support for git ignore file
    • Added default ignore file for eslint
    • Improve support for Vim, add .vim/spell folder
    • Add support for mycli
    • Add support for PixelSnap 2 (via @dnicolson)
    • Add support for PDFjam (via @paxperscientiam)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.24(May 2, 2019)

  • 0.8.23(Apr 2, 2019)

    • Improve support for Vim, add .vim/after directory
    • Remove problematic com.macromates.textmate.plist file for TextMate (via @egze)
    • Add support for rofi (via @pat-s)
    • Add support for deepin-dde-file-manager (via @sUyMur)
    • Add support for Deepin-dde-dock (via @sUyMur)
    • Add support for deepin-terminal (via @sUyMur)
    • Add support for grsync (via @sUyMur)
    • Add support for ulauncher (via @sUyMur)
    • Add support for Tilix (via @pat-s)
    • Improve support for TextMate (via @egze)
    • Add support for Storyist 3 writing software (via @mutantant)
    • Add support for WordGrinder (via @mutantant)
    • Fix support for Adobe Illustrator CC2019 (v23)
    • remove bundle directory from vim config (via @cocobear)
    • Remove iTunes Scripts (via @dnicolson)
    • Add support for Sublime Merge (via @krupenja)
    • Add support for Marta (via @krupenja)
    • Add support for Goldendict (via @krupenja)
    • Add support for IINA (via @krupenja)
    • Improve support for fish (via @whtsky)
    • Improve support for weget (via @paxperscientiam)
    • Add support for zabbix-cli (via @dzogrim)
    • Add support for ForkLift 3 (via @lukeaskew)
    • Add support for eqMac2 (via @lukeaskew)
    • Add support for Fisher (via @nashirox)
    • Add support for PhpStorm 2018.3 (via @baijunyao)
    • Add support for Focus (via @atipugin)
    • Add support for Choosy (via @markchitty)
    • Update support for Microsoft Remote Desktop 10
    • Add support for PhpStorm 2019.1 (via @baijunyao)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.22(Jan 16, 2019)

    • Add support for DataGrip 2017.3, 2018.1, 2018.2, 2018.3 (via @utegental)
    • Add support for Volt (via @mrymtsk)
    • Add support for alternative config path for Alacritty (via @foray1010)
    • Add support for WebStorm 2018.3 (via @KrzysztofKarol)
    • Removed support for BBEdit
    • Add support for IntelliJIDEA 2018.3 (via @nysos3)
    • Add support for GoLand 2018.3 (via @rayrutjes)
    • Fix an issue for users without a ~/.config/ folder.
    Source code(tar.gz)
    Source code(zip)
  • 0.8.21(Jan 2, 2019)

    • Update support for i3 (@KyleWJohnston)
    • Add support for bc (via @paxperscientiam)
    • Add support for Google clasp (via @paxperscientiam)
    • Add support for hstr (via @paxperscientiam)
    • Add support for b-ryan/powerline-shell (via @paxperscientiam)
    • Add support for kovidgoyal/kitty (via @foray1010)
    • Add support for PhpStorm 2018.2 (via @j13k)
    • Add support for Oh My Tmux (via @solarknight)
    • Fix support for Karabiner Elements (via @mrymtsk)
    • Add support for IntelliJIdea2018.3 (via @utegental)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.20(Oct 16, 2018)

    • Remove support for Z as the link is being overwritten by the application
    • Remove support for Amphetamine as it's containerized
    • Add support for inkscape (via @paxperscientiam)
    • Add default path for XDG_CONFIG_HOME. (via @HlubyLuk)
    • Add tig xdg_configuration_files to config. (via @HlubyLuk)
    • Add support for Visual Studio for Mac (via @ivmirx)
    • Add support for snapcraft (thx @guilhem)
    • Add support for GoLand and renamed Gogland to GoLand (via @rayrutjes)
    • Add support for xonsh (via @kmcm0)
    • Add support for Alacritty
    • Add support for WebStorm 2017.1, 2017.2, 2017.3, 2018.1, 2018.2 (via @KrzysztofKarol)
    Source code(tar.gz)
    Source code(zip)
Owner
Laurent Raufaste
Cloud Plumber
Laurent Raufaste
PowerShell for every system!

PowerShell Welcome to the PowerShell GitHub Community! PowerShell Core is a cross-platform (Windows, Linux, and macOS) automation and configuration to

PowerShell Team 27.9k Jul 29, 2021
🐢 Open terminal quickly from Finder

???????????? ???? ❤️ Support my app ❤️ Push Hero - pure Swift native macOS application to test push notifications PastePal - Pastboard, note and short

Khoa 888 Jul 22, 2021
The unofficial WWDC app for macOS

The unofficial WWDC app for macOS Enjoy WWDC from the comfort of your Mac with the unofficial WWDC app for macOS. Whether you're (virtually) attending

Guilherme Rambo 8.1k Aug 1, 2021
Intelligent adaptive brightness for your external monitors

Lunar Intelligent adaptive brightness for your external display M1 doesn't provide DDC support so Lunar can't work on those devices yet. Note: Lunar c

Alin Panaitiu 2.5k Aug 5, 2021
To-do list time tracker for programmers and other digital workers with Jira, Github, and Gitlab integration

Please help us improve the app's usability! Organize your daily tasks in one place while making time tracking a lot less annoying. Super Productivity

Johannes Millan 3.9k Jul 25, 2021
The missing Desktop application for Pushbullet.

PB for Desktop PB for Desktop is a lightweight open-source Desktop app for PushBullet. Receive native push notifications on macOS, Windows and Linux.

sidneys.github.io 468 Aug 2, 2021
:key: Cross-Platform Passwords Secrets Vault

Buttercup Desktop Buttercup for Desktop - Mac, Linux and Windows ² ⚠️ Buttercup v2 is in pre-release - It will reach its stable release channel soon A

Buttercup 3.6k Jul 28, 2021
Receive Android notifications on your mac. (w/PushBullet) ⛺

What is Noti? Noti is your little companion living in your mac menu, relaying any notifications you get on your Android phone with Pushbullet installe

Jari Zwarts 866 Jul 1, 2021
Vienna is a free and open-source RSS/Atom newsreader for macOS.

Vienna is an RSS/Atom reader for macOS. Vienna can connect directly to the websites you want to track. Additionally or alternatively, you can also syn

The Vienna RSS Project 1.4k Jul 23, 2021
Replacement for MacOS' volume, brightness and keyboard backlight HUDs.

SlimHUD Replacement for MacOS' HUDs. Every day you change your volume or brightness and an ugly and unbelievably old overlay animation appears. SlimHU

Alex Perathoner 130 Jul 27, 2021
macOS app that allows the control of Spotify and AppleMusic/iTunes music playback from the menu bar.

PlayStatus is a simple macOS app that allows the control of Spotify, Apple Music(macOS 10.15+) and iTunes including iTunes Radio/Beats1 playback from

Nikhil Bolar 72 Jul 14, 2021
Adds numbered shortcuts to the output git status, and much more

SCM Breeze Streamline your SCM workflow. SCM Breeze is a set of shell scripts (for bash and zsh) that enhance your interaction with git. It integrates

SCM Breeze 2.5k Aug 4, 2021
The Blockstack Browser

Blockstack Browser The Blockstack Browser allows you to explore the Blockstack internet. ⚠️ IMPORTANT: This project has been deprecated in favor of th

Stacks 1.1k Jul 8, 2021
Encrypted file transfer over ad hoc WiFi. No network infrastructure required, just two laptops in close range. Linux, Mac, and Windows.

Flying Carpet To download, visit the releases page! Wireless, encrypted file transfer over automatically configured ad hoc networking. No network infr

Theron Spiegl 821 Jul 31, 2021