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

Related tags

Networking 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 macOS, 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 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

  • macOS
  • 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.

Comments
  • 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
  • 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
  • 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
  • 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
  • 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
  • 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
  • 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
  • Refine ssh config: no need to backup keys

    Refine ssh config: no need to backup keys

    It is safer to prevent any the credential keys shared or backed up. Normally if computer changed, the user should generate new keys instead of reusing existing ones.

    opened by nkcfan 14
  • Immediate failure upon invocation (on OSX Mavericks 10, installed with homebrew)

    Immediate failure upon invocation (on OSX Mavericks 10, installed with homebrew)

    After upgrading mackup to 0.7.4 via homebrew, it became impossible to use the executable as it immediately coughed and died.

    The cough:

    $ mackup
    Traceback (most recent call last):
      File "/usr/local/bin/mackup", line 5, in <module>
        from pkg_resources import load_entry_point
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 2603, in <module>
        working_set.require(__requires__)
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 666, in require
        needed = self.resolve(parse_requirements(requirements))
      File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/pkg_resources.py", line 565, in resolve
        raise DistributionNotFound(req)  # XXX put more info here
    pkg_resources.DistributionNotFound: mackup==0.7.4
    

    About my current setup:

    $ uname -a
    Darwin Concurrent-Chickpea.local 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64
    
    $ brew --version
    0.9.5
    

    If I can provide any additional info, please let me know.

    Thanks!

    • Jonathan
    opened by yonkeltron 13
  • Error backing up SourceTree

    Error backing up SourceTree

    Backing up Library/Application Support/SourceTree/sourcetree.license...
    Traceback (most recent call last):
      File "./mackup.py", line 731, in <module>
        main()
      File "./mackup.py", line 684, in main
        app.backup()
      File "./mackup.py", line 310, in backup
        delete(filepath)
      File "./mackup.py", line 490, in delete
        os.remove(filepath)
    OSError: [Errno 1] Operation not permitted: '/Users/dbingham/Library/Application Support/SourceTree/sourcetree.license'
    
    opened by dbingham 13
  • Add support for Termux, Rust, update Bat config

    Add support for Termux, Rust, update Bat config

    All submissions

    Adding/updating Application X Support

    • [ ] This PR is only for one application
    • [x] It has been added to the list of supported applications in the README
    • [x] Changes have been added to the WIP section of the CHANGELOG
    • [x] Syncing does not break the application
    • [x] Syncing does not compete with any syncing functionality internal to the application
    • [x] The configuration syncs the minimal set of data
    • [x] No file specific to the local workstation is synced
    • [x] No sensitive data is synced

    Improving the Mackup codebase

    • [x] My submission passes the tests
    • [x] I have linted the code locally prior to submission
    • [ ] I have written new tests as applicable
    • [ ] I have added an explanation of what the changes do
    opened by grigorii-horos 1
  • Bump certifi from 2021.10.8 to 2022.12.7

    Bump certifi from 2021.10.8 to 2022.12.7

    Bumps certifi from 2021.10.8 to 2022.12.7.

    Commits

    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
  • Feature Request: options to sync/desync an application using CLI

    Feature Request: options to sync/desync an application using CLI

    I find it quite indirect when trying to desync a single synced application. I have to manually copy back the file(s) and modify the config. It would be convenient by adding CLI options like mackup sync <application> and mackup desync <application> to automatically get the works done.

    opened by easypickings 1
  • Xcode and new /Library/CloudStorage Dropbox folder

    Xcode and new /Library/CloudStorage Dropbox folder

    wondering if it's just me. i remember the first time i played with mackup i tried both iCloud and Dropbox and i had issue with iCloud where some plist wouldn't be read or recognized by some apps. switching to Dropbox solved this issue.

    now Dropbox has updated its macOS integration by moving to the /Library/CloudStorage folder. things start breaking again for me. i'm not talking about symlink issues, my symlinks are correctly updated. but for example (at least) Xcode doesn't seem to be able to read/write its general plist from the Dropbox folder. each time i start it, all my settings are back to zero. if i remove the symlink and copy the plist file instead, it works. Xcode reads it and all my settings are back. as soon as i use again a symlink though, it seems Xcode doesn't "get" it.

    so, wondering. is it me? is it the switch to the /Library/CloudStorage from Dropbox? if it's not just me, i guess there's something to be updated on mackup's side, even if it's just the support for Xcode overall, and the xcode.cfg.

    opened by godbout 2
  • MacOS Ventura - Terminal Preferences not saving (and other apps)

    MacOS Ventura - Terminal Preferences not saving (and other apps)

    Hi There

    I use Mackup with dropbox (using CloudStorage) using the workaround suggested in #1858 - I am running on an M1 Pro MBP but i can also observe the same issue on an Intel Mac as well

    this might be happening in more apps, i've noticed a few apps (Apple native and non Apple)

    I prefer to use a different Shell profile and fonts etc, wierd that after upgrade (reinstall and restore mackup) - my terminal preferences were back at default

    attempted to manually change the preferences in terminal, when i quit it and restarted it, it was back to default.

    deleted the Symlink to terminal preferences -

    rm ~/Library/Preferences/com.apple.Terminal.plist

    restarted terminal, reset settings, restarted terminal and the settings are fine

    is there possibly some new permissions/security change that breaks symlinks and therefore mackups functionality on ventura?

    I've observed similar issues in iStat Menus, need to check for other apps specifically

    shell or other command line based utilities appear to be OK, it does appear to be limited to "GUI" apps at a first glance

    opened by anthonysomerset 11
  • misc fixes to dash, raycast, and more

    misc fixes to dash, raycast, and more

    Summary:

    • Adding missing karabiner config
    • Missing Postico data
    • Missing .config folder and app support for raycast
    • Include entire dash app support, includes some seemingly-important library files

    Some of the changes are a bit liberal with including data that could contain sensitive data or state-dependend information. However, I've found this is better than the alternative in my case.

    All submissions

    Adding/updating Application X Support

    • [ ] This PR is only for one application
    • [ ] It has been added to the list of supported applications in the README
    • [ ] Changes have been added to the WIP section of the CHANGELOG
    • [ ] Syncing does not break the application
    • [ ] Syncing does not compete with any syncing functionality internal to the application
    • [ ] The configuration syncs the minimal set of data
    • [ ] No file specific to the local workstation is synced
    • [ ] No sensitive data is synced

    Improving the Mackup codebase

    • [ ] My submission passes the tests
    • [ ] I have linted the code locally prior to submission
    • [ ] I have written new tests as applicable
    • [ ] I have added an explanation of what the changes do
    opened by iloveitaly 0
Releases(0.8.36)
  • 0.8.36(Oct 12, 2022)

    • Added support for LunarVim (via @YiGeon)
    • Added support for Airflow (via @Evertt)
    • Updated support for yabai (via @Liu233w)
    • Updated suport for skhd (via @jonasdiemer)
    • Added support for Sizzy (via @driftingly)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.35(Aug 13, 2022)

    • Updated support for iTerm2 (via @michielgerritsen)
    • Added support for NSLogger (via @lavareX)
    • Added support for Fork (via @lavareX)
    • Updated support for Proxymann Setapp version (via @JanC)
    • Added support for Btop (via @Mersid)
    • Updated support for Nushell (via @maradude)
    • Updated support for CleanShot (via @timfee)
    • Added backwards-compatibility support for Espanso (via @joshmedeski)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.34(Jul 9, 2022)

    • Updated support for Bash it (via @jacopkane)
    • Added support for Remote Desktop Manager (via @jpmat296)
    • Fixed support for asciinema (via @revolter)
    • Added support for Mumu (via @fharper)
    • Updated support for fasd (via @doubleloop)
    • Updated support for lazygit (via @joshmedeski)
    • Added support for Nova (via @guillaumealgis)
    • Added support for Oracle Cloud Infrastructure CLI (via @Djelibeybi)
    • Added support for PicGo (via @SSBun)
    • Added support for Flameshot (via @joshmedeski)
    • Added support for Planner (via @spawnedc)
    • Fixed support for k9s (via @gamussa)
    • Added support for act (via @fharper)
    • Added support for notion-enhancer (via @fharper)
    • Added support for GitFox (via @L3K0V)
    • Updated support for Bartender through SetApp (via @dbhagen)
    • Updated support for Xonsh (via @wy-z)
    • Added support for TablePlus history (via @annuh)
    • Added support for xbar (via @dnicolson)
    • Added support for Beyond Compare (via @mgraham)
    • Added support for kindaVim (via @godbout)
    Source code(tar.gz)
    Source code(zip)
  • 0.8.33(Oct 31, 2021)

    • Added support for Lightroom Classic (via @treee111)
    • Fixed support for Hocus Focus (via @jrolfs)
    • Added support for KeePassXC (via @harens)
    • Fixed support for poetry (via @ameyuuno)
    • Added support for npm package npmrc (via @jdvivar)
    • Added support for rubiTrack 5 (via @otherguy)
    • Updated support for Fisher (via @kidonng)
    • Added support for Qv2ray (via @kidonng)
    • Added support for Neofetch (via @kidonng)
    • Added support for PsySH (via @nesk)
    • Added support for polybar(via @jneo8)
    • Added support for Tiles (via @damianoamatruda)
    • Added support for Flake8 (via @hongqn)
    • Fixed support for HandBrake (via @damianoamatruda)
    • Added support for Loopback (via @damianoamatruda)
    • Added support for IDA Pro (via @damianoamatruda)
    • Added support for MuteSpotifyAds (via @damianoamatruda)
    • Added support for Ghidra (via @damianoamatruda)
    • Added support for Logitech Options (via @damianoamatruda)
    • Added support for OBS (via @damianoamatruda)
    • Update uninstall prompt for accuracy (via @soneji)
    • Added support for Proxyman (via @NghiaTranUIT)
    • Updated support for IntelliJIdea version 2021.1 (via @steffenmalisi)
    • Added support for Sublime Text 4 (via @TCattd)
    • Added support for Contexts (via @antoni-k)
    • Added support for Swish (via @antoni-k)
    • Added support for AltTab (via @aiotter)
    • Added support for Goku (via @thebengeu)
    • Added support for Akamai CLI (via @anirudhbagri)
    • Added support for FastScripts (via @darrenbkl)
    • Added support for Affinity Designer (via @EpicKris)
    • Added support for Affinity Photo (via @EpicKris)
    • Added support for Affinity Publisher (via @EpicKris)
    • Added support for MTMR (via @dec0dOS)
    • Added support for Rocket (via @revolter)
    • Updated support for BetterTouchTool (via @grapswiz)
    • Updated support for k9s (via @dfang)
    • Added support for Mendeley Desktop (via @aiotter)
    • Added support for CleanShot, Mosaic, Eagle and Nuget (via @ye4241)
    Source code(tar.gz)
    Source code(zip)
  • 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 14, 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
(A)sync client for sms.ru with pydantic responses

?? aioSMSru Send SMS Check SMS status Get SMS cost Get balance Get limit Get free limit Get my senders Check login/password Add to stoplist Remove fro

Eugene Mayer 4 Jul 3, 2022
Very simple FTP client, sync folder to FTP server, use python, opensource

ftp-sync-python Opensource, A way to safe your data, avoid lost data by Virus, Randsomware Some functions: Upload a folder automatically to FTP server

null 4 Sep 13, 2022
Easy-to-use sync library for handy proxy parse

Proxy Parser About Synchronous library, for convenient and fast parsing of proxies from different sources. Uses Scrapy as a parser. At the moment the

Michael Mironov 2 Nov 22, 2022
An HTML interface for finetuning the sync map output from aeneas

finetuneas 3.0 finetuneas is a simple HTML interface for fine tuning sync maps output by aeneas Version 3.0 Easier adjusting time: following cells wil

Firat Özdemir 50 Mar 12, 2022
Linux SBC featuring two wifi radios, masquerading as a USB charger.

The WiFiWart is an open source WiFi penetration device masquerading as a regular wall charger. It features a 1.2Ghz Cortex A7 MPU with two WiFi chips onboard.

Walker 151 Dec 26, 2022
Official ProtonVPN Linux app

ProtonVPN Linux App Copyright (c) 2021 Proton Technologies AG This repository holds the ProtonVPN Linux App. For licensing information see COPYING. Fo

ProtonVPN 288 Jan 1, 2023
MoreIP 一款基于Python的面向 MacOS/Linux 用户用于查询IP/域名信息的日常渗透小工具

MoreIP 一款基于Python的面向 MacOS/Linux 用户用于查询IP/域名信息的日常渗透小工具

xq17 9 Sep 21, 2022
A repository to spoof ARP table of any devices and successfully establish Man in the Middle(MITM) attack using Python3 in Linux

arp_spoofer A repository to spoof ARP table of any devices and successfully establish Man in the Middle(MITM) attack using Python3 in Linux Usage: git

Surya Das N 1 Oct 30, 2021
Quickly fetch your WiFi password and if needed, generate a QR code of your WiFi to allow phones to easily connect

wifi-password Quickly fetch your WiFi password and if needed, generate a QR code of your WiFi to allow phones to easily connect. Works on macOS and Li

Siddharth Dushantha 2.6k Jan 5, 2023
Passive TCP/IP Fingerprinting Tool. Run this on your server and find out what Operating Systems your clients are *really* using.

Passive TCP/IP Fingerprinting This is a passive TCP/IP fingerprinting tool. Run this on your server and find out what operating systems your clients a

Nikolai Tschacher 158 Dec 20, 2022
Control your Puffco Peak Pro from your computer!

PuffcoPC Control your Puffco Peak Pro from your computer! Contributions Pull requests are welcome. For major changes, please open an issue first to di

Bryan Muschter 5 Nov 2, 2022
A simple GitHub Action that physically puts your senses on alert when your build/release fails

GH Release Paniker A simple GitHub Action that physically puts your senses on alert when your build/release fails Usage Requirements: Raspberry Pi, LE

Hemanth Krishna 5 Dec 20, 2021
Using AWS's API Gateway + Lambda + Python to run a simple websocket application. For learning/testing

Using AWS's API Gateway + Lambda + Python to run a simple websocket application. For learning/testing. The AWS Resources seemed overly complex and were missing some critical gotchas in setting up a system like this.

Seth Miller 15 Dec 23, 2022
A simple, configurable application and set of services to monitor multiple raspberry pi's on a network.

rpi-info-monitor A simple, configurable application and set of services to monitor multiple raspberry pi's on a network. It can be used in a terminal

Kevin Kirchhoff 11 May 22, 2022
A Scapy implementation of SMS-SUBMIT and (U)SIM Application Toolkit command packets.

A Scapy implementation of SMS-SUBMIT and (U)SIM Application Toolkit command packets.

mnemonic 83 Dec 11, 2022
Desktop application for checking sites connection in a background mode

Site connectivity checker Desktop application for checking site connection in a background mode by sending ICMP messages. Problem and solution Usually

Karina Singatullina 26 Dec 19, 2022
Simple P2P application for sending files over open and forwarded network ports.

FileShareV2 A major overhaul to the V1 (now deprecated) FileShare application. V2 brings major improvements in both UI and performance. V2 is now base

Michael Wang 1 Nov 23, 2021
Tiny Interactive File Transfer Application

TIFTA: Tiny Interactive File Transfer Application This repository holds all the source code, tests and documentation of the TIFTA software. The main g

Jorge Martínez 2 Dec 8, 2021
A simple python application for generating a WiFi QR code for ease of connection

A simple python application for generating a WiFi QR code Initialize the class by providing QR code values WiFi_QR_Code(self, error_correction: int =

Ivan 2 Aug 1, 2022