###############################
#  Taps                       #
###############################

tap "adoptopenjdk/openjdk"
tap "aws/tap"
tap "cloudflare/cloudflare"
tap "dart-lang/dart"
tap "facebook/fb"
tap "github/bootstrap"
tap "github/gh"
tap "heroku/brew"
tap "homebrew/bundle"
tap "homebrew/cask"
tap "homebrew/cask-versions"
tap "homebrew/core"
tap "homebrew/services"
tap "homebrew/test-bot"
tap "sass/sass"
tap "teamookla/speedtest"
tap "thoughtbot/formulae"
tap "twilio/brew"
# tap "wpengine/wpe-cli"
tap "wpscanteam/tap"

###############################
#  Binaries                   #
###############################

# Perhaps most importantly...
brew "zsh"

# Better bash as a backup
brew "bash"
brew "bash-completion"

# GNU utilities (those that come with macOS are outdated)
brew "coreutils"
brew "moreutils"
brew "findutils"
brew "gnutls"
brew "gnu-indent"
brew "gnu-sed"
brew "gnu-tar"
brew "gnu-indent"
brew "gnu-which"

# wget with IRI support
brew "wget"  #, args: ["with-iri"]

# GnuPG to enable PGP-signing commits
brew "gnupg"

# More recent versions of some macOS tools
brew "vim"  #, args: ["with-override-system-vi"]
brew "gcc"
brew "grep"
brew "make"
brew "openssh"
brew "screen"
brew "gmp"

# Other useful binaries
brew "ack"
brew "gs"
brew "imagemagick"  #, args: ["with-webp"]
brew "ffmpeg"  #, args: ["with-libvpx"]
brew "gawk"
brew "less"
brew "lua"
brew "lynx"
brew "mtr"
brew "nano"
brew "p7zip"
brew "pigz"
brew "pv"
brew "rename"
brew "rlwrap"
brew "ssh-copy-id", link: true
brew "tree"
brew "vbindiff"
brew "zopfli"
brew "the_silver_searcher"

# Git
brew "git"
brew "git-lfs"
brew "git-crypt"
brew "gh"
brew "hub"

# Node & NPM / NVM
brew "node"
brew "nvm"

# Mostly ordinary binaries
brew "aws-shell"
brew "awscli"
brew "angular-cli"
brew "asciinema"
brew "autoconf"
brew "automake"
brew "azure-cli"
brew "caddy"
brew "carthage"
brew "cli53"
brew "cloudflare/cloudflare/cloudflared"
brew "cocoapods"
brew "composer"
brew "dart-lang/dart/dart"
brew "doctl"
brew "elixir"
brew "erlang"
brew "geoip"
brew "go"
brew "guetzli"
brew "heroku/brew/heroku"
brew "heroku/brew/heroku-node"
brew "htop"
brew "httpie"
brew "httrack"
brew "hugo", args: ["HEAD"]
brew "hydra"
brew "iproute2mac"
brew "jq"
brew "kubernetes-cli"
brew "kubernetes-helm"
brew "libsass", args: ["HEAD"]
brew "mas"
brew "mcrypt"
brew "mhash"
brew "mkcert"
brew "mosh"
brew "mariadb"
brew "mysql-client"
brew "ncurses"
brew "neofetch"
brew "netcat"
brew "openvpn"
brew "optipng"
brew "packer"
brew "php"
brew "pkg-config"
brew "pngcheck"
brew "pngcrush"
brew "postgresql"
brew "python@3.8"
brew "python@3.9"
brew "python"
brew "pyenv"
brew "qemu"
brew "ruby"
brew "ruby-build"
brew "rust"
brew "rbenv"
brew "rclone"
brew "s3fs"
brew "sass/sass/migrator"
brew "sass/sass/sass"
brew "serverless"
brew "shellcheck"
brew "sqlite"
brew "sub2srt"
brew "teamookla/speedtest/speedtest"
brew "terraform"
brew "thoughtbot/formulae/parity"
brew "tor"
brew "torsocks"
brew "travis"
brew "twilio/brew/twilio"
brew "typescript"
brew "watchman"
brew "whois", link: true
brew "wireguard-tools"
brew "wireguard-go"
brew "wp-cli"
# brew "wpengine/wpe-cli/wpe-cli"
brew "xz"
brew "yarn"
brew "youtube-dl"
brew "yuicompressor"
brew "zopfli"

# Android SDK
brew "ant"
brew "maven"
brew "gradle"
# cask "android-sdk"
# cask "android-ndk"
cask "android-platform-tools"
# cask "android-studio"

# Pentesting tools
brew "aircrack-ng"
brew "bfg"
brew "binutils"
brew "binwalk"
brew "cifer"
brew "dex2jar"
brew "dns2tcp"
brew "fcrackzip"
brew "foremost"
brew "hashpump"
brew "hydra"
brew "john"
brew "knock"
brew "massdns"
brew "mitmproxy"
brew "netpbm"
brew "nmap"
brew "pdfcrack"
brew "pngcheck"
brew "socat"
brew "sqlmap"
brew "tcpflow"
brew "tcpreplay"
brew "tcptrace"
brew "xpdf"
brew "bettercap"
brew "hashcat"
brew "nikto"
brew "tcpdump"
# brew "wpscanteam/tap/wpscan"  # not yet compatible with M1

###############################
#  macOS Apps via Cask        #
###############################

cask_args appdir: "/Applications"

# System Utilities
cask "osxfuse"
cask "appzapper"
cask "backblaze"
cask "backblaze-downloader"
cask "carbon-copy-cloner"
cask "cleanmymac"
cask "coconutbattery"
cask "daisydisk"
cask "dropbox"
cask "duet"
cask "etrecheckpro"
cask "filebot"
cask "geekbench"
cask "intel-power-gadget"
cask "istat-menus"
cask "paragon-ntfs"
cask "the-unarchiver"
cask "transmission"
cask "unetbootin"
cask "unshaky"
cask "vnc-viewer"

# Passwords, VPNs, other Security
cask "1password"
cask "authy"
cask "expressvpn"
cask "gpg-suite"
# cask "gpg-suite-no-mail"     # Install Mail separately: https://github.com/GpgMailNoActivation/GpgMailNoActivation
# cask "jakejarvis/brew/gpg-suite-no-drm"      # personal cask to install GPG suite and mail.app plugin without activation
cask "keybase"
cask "little-snitch"
cask "nordvpn"
cask "tor-browser"
cask "tunnelblick"

# Development/Work
cask "adobe-creative-cloud"
cask "adoptopenjdk/openjdk/adoptopenjdk"
cask "chromedriver"
cask "eclipse-java"
cask "github"
cask "glyphs"
cask "google-cloud-sdk"
cask "imageoptim"
cask "iterm2"
cask "jetbrains-toolbox"
cask "mamp"
cask "microsoft-office"
cask "ngrok"
cask "postman"
cask "powershell"
cask "robo-3t"
cask "sequel-pro"
cask "sketch"
cask "tower"
cask "transmit"
cask "visual-studio-code"
cask "visual-studio"
cask "xquartz"

# Virtual Machines (& Docker)
cask "docker"
# cask "virtualbox"
# cask "virtualbox-extension-pack"
# cask "vagrant"
# cask "vmware-fusion"

# Media
cask "beamer"
cask "handbrake"
cask "iina"
cask "plex-media-player"
cask "pocket-casts"
cask "spotify"
cask "vlc"

# Communication/Social
cask "discord"
cask "skype"
cask "slack"
cask "whatsapp"
cask "zoomus"

# Gaming
cask "shadow"
cask "steam"
cask "minecraft"
cask "nvidia-geforce-now"

# Pentesting
cask "burp-suite"
cask "charles"
cask "metasploit"
cask "wifi-explorer"
cask "wireshark"

# Browsers (for reference only -- install these via offline DMGs no matter what)
# * Firefox
#    - Stable
#    - Dev: https://www.mozilla.org/en-US/firefox/developer/
#    - Nightly: https://www.mozilla.org/en-US/firefox/channel/desktop/
# * Chrome
#    - Stable
#    - Canary: https://www.google.com/chrome/canary/
# * Safari
#    - Preview: https://developer.apple.com/safari/technology-preview/

###############################
#  macOS Apps via App Store   #
###############################

# Apple
mas "Apple Configurator 2", id: 1037126344
mas "Compressor", id: 424390742
mas "Developer", id: 640199958
mas "Final Cut Pro", id: 424389933
mas "GarageBand", id: 682658836
mas "iMovie", id: 408981434
mas "Keynote", id: 409183694
mas "Logic Pro", id: 634148309
mas "MainStage 3", id: 634159523
mas "Motion", id: 434290957
mas "Numbers", id: 409203825
mas "Pages", id: 409201541
mas "Playgrounds", id: 1496833156
mas "Transporter", id: 1450874784
mas "Xcode", id: 497799835

# Third Party
mas "Amphetamine", id: 937984704
mas "Deliveries", id: 290986013
mas "Disk Speed Test", id: 425264550
mas "Kindle", id: 405399194
mas "Magnet", id: 441258766
mas "Microsoft Remote Desktop", id: 1295203466
mas "Microsoft To Do", id: 1274495053
mas "Outline", id: 1356178125
mas "Shazam", id: 897118787
mas "Silicon Info", id: 1542271266
mas "TweetDeck", id: 485812721
mas "Twitter", id: 409789998
mas "VMware Remote Console", id: 1230249825
mas "WireGuard", id: 1451685025
