Skip to content

Instantly share code, notes, and snippets.

@crcastle
Forked from xuhdev/backup-homebrew.sh
Last active July 17, 2023 12:06
Show Gist options
  • Save crcastle/6eb329de90a27b1e2ed7 to your computer and use it in GitHub Desktop.
Save crcastle/6eb329de90a27b1e2ed7 to your computer and use it in GitHub Desktop.

Revisions

  1. Chris Castle revised this gist Oct 19, 2016. No changes.
  2. crcastle revised this gist Apr 5, 2016. 2 changed files with 158 additions and 0 deletions.
    1 change: 1 addition & 0 deletions crontab
    Original file line number Diff line number Diff line change
    @@ -0,0 +1 @@
    0 */6 * * * ~/Dropbox/Apps/Homebrew/backup-homebrew.sh > ~/Dropbox/Apps/Homebrew/restore-homebrew.sh
    157 changes: 157 additions & 0 deletions restore-homebrew.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,157 @@
    #!/bin/bash

    trap ctrl_c INT
    function ctrl_c() {
    echo "** Trapped CTRL-C"
    exit 1
    }

    brew_command=/usr/local/bin/brew
    brew_cask_command="$brew_command cask"
    failed_items=""
    function install_package() {
    echo EXECUTING: brew install $1 $2
    $brew_command install $1 $2
    [ $? -ne 0 ] && $failed_items="$failed_items $1" # package failed to install.
    }
    function install_cask_package() {
    echo EXECUTING: brew cask install $1
    $brew_cask_command install $1
    [ $? -ne 0 ] && $failed_items="$failed_items $1" # package failed to install.
    }
    /usr/local/bin/brew tap caskroom/cask
    /usr/local/bin/brew tap caskroom/versions
    /usr/local/bin/brew tap ethereum/ethereum
    /usr/local/bin/brew tap homebrew/core
    /usr/local/bin/brew tap homebrew/dupes
    /usr/local/bin/brew tap homebrew/fuse
    /usr/local/bin/brew tap homebrew/science
    /usr/local/bin/brew tap homebrew/services
    /usr/local/bin/brew tap homebrew/versions
    install_package aircrack-ng ''
    install_package autoconf ''
    install_package automake ''
    install_package avrdude ''
    install_package awscli ''
    install_package boost ''
    install_package c-ares ''
    install_package cask ''
    install_package cmake ''
    install_package coreutils ''
    install_package diff-so-fancy ''
    install_package dirmngr ''
    install_package docker ''
    install_package docker-compose ''
    install_package docker-machine ''
    install_package e2fsprogs ''
    install_package eigen ''
    install_package elixir ''
    install_package emacs ''
    install_package encfs ''
    install_package erlang ''
    install_package ethereum ''
    install_package ext2fuse ''
    install_package ffmpeg ''
    install_package fig ''
    install_package freetype ''
    install_package gdbm ''
    install_package gettext ''
    install_package gifsicle ''
    install_package git ''
    install_package gmp ''
    install_package gnu-tar ''
    install_package gnupg2 ''
    install_package go ''
    install_package gpg-agent ''
    install_package gpm ''
    install_package grep ''
    install_package ilmbase ''
    install_package imagemagick ''
    install_package intltool ''
    install_package ipfs ''
    install_package jpeg ''
    install_package jq ''
    install_package keybase ''
    install_package lame ''
    install_package leptonica ''
    install_package libassuan ''
    install_package libelf ''
    install_package libevent ''
    install_package libftdi0 ''
    install_package libgcrypt ''
    install_package libgpg-error ''
    install_package libksba ''
    install_package libpng ''
    install_package libtiff ''
    install_package libtool ''
    install_package libusb ''
    install_package libusb-compat ''
    install_package libvo-aacenc ''
    install_package libwebsockets ''
    install_package libyaml ''
    install_package mackup ''
    install_package makedepend ''
    install_package mercurial ''
    install_package mongodb ''
    install_package mtr ''
    install_package node ''
    install_package ntfs-3g ''
    install_package oniguruma ''
    install_package openexr ''
    install_package openssl ''
    install_package pcre ''
    install_package phantomjs ''
    install_package pinentry ''
    install_package pkg-config ''
    install_package pngquant ''
    install_package postgresql ''
    install_package prettyping ''
    install_package pth ''
    install_package pup ''
    install_package pv ''
    install_package pypy ''
    install_package python ''
    install_package python3 ''
    install_package qt ''
    install_package rbenv ''
    install_package readline ''
    install_package reattach-to-user-namespace ''
    install_package redis ''
    install_package rlog ''
    install_package ruby-build ''
    install_package sqlite ''
    install_package syncthing ''
    install_package tbb ''
    install_package tmux ''
    install_package unixodbc ''
    install_package vim ' --override-system-vi
    --override-system-vi'
    install_package watch ''
    install_package wget ''
    install_package wxmac ''
    install_package x264 ''
    install_package xvid ''
    install_package xz ''
    install_package youtube-dl ''
    install_cask_package alfred
    install_cask_package atom
    install_cask_package bartender
    install_cask_package bitbar
    install_cask_package brave
    install_cask_package dayone-cli
    install_cask_package handbrake
    install_cask_package hazel
    install_cask_package heroku-toolbelt
    install_cask_package istat-menus
    install_cask_package iterm2-beta
    install_cask_package java
    install_cask_package kaleidoscope
    install_cask_package kicad-library (!)
    install_cask_package kicad-nightly
    install_cask_package launchcontrol
    install_cask_package mono-mdk
    install_cask_package osxfuse
    install_cask_package virtualbox
    install_cask_package wireshark
    install_cask_package yujitach-menumeters
    [ ! -z $failed_items ] && echo The following items were failed to install: && echo $failed_items
  3. crcastle revised this gist Apr 5, 2016. 1 changed file with 17 additions and 6 deletions.
    23 changes: 17 additions & 6 deletions backup-homebrew.sh
    Original file line number Diff line number Diff line change
    @@ -1,27 +1,38 @@
    #!/bin/bash

    brew_command=/usr/local/bin/brew
    brew_cask_command="$brew_command cask"

    echo '#!/bin/bash'
    echo ''
    echo 'trap ctrl_c INT'
    echo 'function ctrl_c() {'
    echo 'echo "** Trapped CTRL-C"'
    echo 'exit 1'
    echo '}'
    echo ''
    echo 'brew_command=/usr/local/bin/brew'
    echo 'brew_cask_command="$brew_command cask"'
    echo 'failed_items=""'
    echo 'function install_package() {'
    echo 'echo EXECUTING: brew install $1 $2'
    echo 'brew install $1 $2'
    echo '$brew_command install $1 $2'
    echo '[ $? -ne 0 ] && $failed_items="$failed_items $1" # package failed to install.'
    echo '}'
    echo 'function install_cask_package() {'
    echo 'echo EXECUTING: brew cask install $1'
    echo 'brew cask install $1'
    echo '$brew_cask_command install $1'
    echo '[ $? -ne 0 ] && $failed_items="$failed_items $1" # package failed to install.'
    echo '}'

    brew tap | while read tap; do echo "brew tap $tap"; done
    $brew_command tap | while read tap; do echo "$brew_command tap $tap"; done

    brew list | while read item;
    $brew_command list | while read item;
    do
    echo "install_package $item '$(brew info $item | /usr/bin/grep 'Built from source with:' | /usr/bin/sed 's/^[ \t]*Built from source with:/ /g; s/\,/ /g')'"
    echo "install_package $item '$($brew_command info $item | /usr/bin/grep 'Built from source with:' | /usr/bin/sed 's/^[ \t]*Built from source with:/ /g; s/\,/ /g')'"
    done

    brew cask list | while read item;
    $brew_cask_command list | while read item;
    do
    echo "install_cask_package $item"
    done
  4. crcastle revised this gist Aug 22, 2015. 1 changed file with 10 additions and 0 deletions.
    10 changes: 10 additions & 0 deletions backup-homebrew.sh
    Original file line number Diff line number Diff line change
    @@ -8,6 +8,11 @@ echo 'echo EXECUTING: brew install $1 $2'
    echo 'brew install $1 $2'
    echo '[ $? -ne 0 ] && $failed_items="$failed_items $1" # package failed to install.'
    echo '}'
    echo 'function install_cask_package() {'
    echo 'echo EXECUTING: brew cask install $1'
    echo 'brew cask install $1'
    echo '[ $? -ne 0 ] && $failed_items="$failed_items $1" # package failed to install.'
    echo '}'

    brew tap | while read tap; do echo "brew tap $tap"; done

    @@ -16,4 +21,9 @@ do
    echo "install_package $item '$(brew info $item | /usr/bin/grep 'Built from source with:' | /usr/bin/sed 's/^[ \t]*Built from source with:/ /g; s/\,/ /g')'"
    done

    brew cask list | while read item;
    do
    echo "install_cask_package $item"
    done

    echo '[ ! -z $failed_items ] && echo The following items were failed to install: && echo $failed_items'
  5. @xuhdev xuhdev renamed this gist Dec 8, 2013. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  6. @xuhdev xuhdev revised this gist Dec 8, 2013. 1 changed file with 6 additions and 4 deletions.
    10 changes: 6 additions & 4 deletions backup_homebrew.sh
    Original file line number Diff line number Diff line change
    @@ -1,17 +1,19 @@
    #!/bin/bash

    echo '#!/bin/bash'
    echo ''
    echo 'failed_items=""'
    echo 'function install_package() {'
    echo 'echo EXECUTING: brew install $1 $2'
    echo 'brew install $1 $2'
    echo 'if [ $? -ne 0 ]; then # package failed to install.'
    echo ' $failed_items="$failed_items $1"'
    echo 'fi'
    echo '[ $? -ne 0 ] && $failed_items="$failed_items $1" # package failed to install.'
    echo '}'

    brew tap | while read tap; do echo "brew tap $tap"; done

    brew list | while read item;
    do
    echo "install_package($item, '$(brew info $item | /usr/bin/grep 'Built from source with:' | /usr/bin/sed 's/^[ \t]*Built from source with:/ /g; s/\,/ /g')')"
    echo "install_package $item '$(brew info $item | /usr/bin/grep 'Built from source with:' | /usr/bin/sed 's/^[ \t]*Built from source with:/ /g; s/\,/ /g')'"
    done

    echo '[ ! -z $failed_items ] && echo The following items were failed to install: && echo $failed_items'
  7. @xuhdev xuhdev revised this gist Dec 8, 2013. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion backup_homebrew.sh
    Original file line number Diff line number Diff line change
    @@ -13,5 +13,5 @@ brew tap | while read tap; do echo "brew tap $tap"; done

    brew list | while read item;
    do
    echo "install_package($item '$(brew info $item | /usr/bin/grep 'Built from source with:' | /usr/bin/sed 's/^[ \t]*Built from source with:/ /g; s/\,/ /g')')"
    echo "install_package($item, '$(brew info $item | /usr/bin/grep 'Built from source with:' | /usr/bin/sed 's/^[ \t]*Built from source with:/ /g; s/\,/ /g')')"
    done
  8. @xuhdev xuhdev created this gist Dec 8, 2013.
    17 changes: 17 additions & 0 deletions backup_homebrew.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,17 @@
    #!/bin/bash

    echo '#!/bin/bash'
    echo 'failed_items=""'
    echo 'function install_package() {'
    echo 'brew install $1 $2'
    echo 'if [ $? -ne 0 ]; then # package failed to install.'
    echo ' $failed_items="$failed_items $1"'
    echo 'fi'
    echo '}'

    brew tap | while read tap; do echo "brew tap $tap"; done

    brew list | while read item;
    do
    echo "install_package($item '$(brew info $item | /usr/bin/grep 'Built from source with:' | /usr/bin/sed 's/^[ \t]*Built from source with:/ /g; s/\,/ /g')')"
    done