Homebrew environment sync #17771

lorensr opened this Issue Feb 11, 2013 · 4 comments

5 participants


Currently the best way I know of syncing the set of programs I have installed with Homebrew between multiple computers is to have a file brews.txt synced by Dropbox and a cron running on all computers that checks to see if the file has changed. If it has, the program diffs the old list with the new list and brew [un]installs the changed lines. It also does a brew list and updates the synced file if needed.

I suggest there be a configuration option SYNC_FILE added so that when brew update is run, SYNC_FILE is checked for new programs that should be installed, and when brew [un]install/upgrade is run, SYNC_FILE is updated. The user is responsible for syncing SYNC_FILE.

Homebrew member

It sounds like your current system is working well and there's not much demand for this. We won't implement this but might accept a pull request if you implement it.


How about moving /usr/local to your Dropbox folder and creating a symlink to it? Can this solution work well?


It shouldn't be necessary to have all binaries stored in Dropbox to have Homebrew in sync between several Macs. A simple text file containing the name (and version?) should be enough. (Perhaps the output from brew leaves can be used.) Then a brew sync command could be issued on each Mac to synchronize the locally installed packages against the file.

Perhaps this could be written as a Homebrew plugin of sorts like Homebrew Cask? If Cask is able to expand Homebrew's commands and functionality (through the brew cask command), something similar should be possible to write for Dropbox syncing, no?

Homebrew member

You'll probably be interested in homebrew-bundle: https://github.com/Homebrew/homebrew-bundle

@DomT4 DomT4 locked and limited conversation to collaborators Aug 5, 2015
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.