# The account's tools: what this repo's own config and scripts use, so that a # machine with only this repo has what the shell, editor and terminals expect, # plus the handful of Mac apps this account wants on any machine it uses. # What is not here: per-machine apps and toolchains -- install those by hand -- # and server software, which comes from whatever provisions that machine. # install.sh applies this with `brew bundle`, which only adds. # Something breaks without these. brew "bash" # macOS ships 3.2. szecret's fallback that fetches # age -- the path taken before this file is applied # -- dies there on `${os,,}`, and config/bashrc # looks for the bash-completion 2.x that needs 4.2 brew "tmux" # both terminals start every window in tmux brew "neovim" # the editor; vi, vim and git all call nvim brew "age" # szecret brew "git" brew "git-lfs" # config/git/config sets up the lfs filter brew "fzf" # zshrc loads its key bindings from Homebrew # Used when present. brew "bat" # man pages, fzf previews brew "lsd" # ls brew "ripgrep" # nvim's grep brew "the_silver_searcher" brew "gh" # config/profile hands it the GitHub token brew "mosh" # alacritty-mosh, mosh-tmux.sh brew "terminal-notifier" # bin/notify brew "fswatch" # bin/sz-wait-for brew "n" # node versions, under $N_PREFIX brew "bash-completion" brew "shellcheck" brew "tree-sitter-cli" # nvim-treesitter generates and compiles parsers with it cask "alacritty" cask "hammerspoon" cask "neovide-app" # Wanted on any Mac this account uses, though nothing here depends on it. cask "keepingyouawake" # menu-bar toggle that stops the Mac sleeping # Only where no Ghostty is installed yet: a machine running the ghostty@tip # build would collide with a second cask over /Applications/Ghostty.app. cask "ghostty" unless File.exist?("/Applications/Ghostty.app") # Every Nerd Font Homebrew has, asked at run time rather than listed, so new # families arrive without editing this file. brew bundle evaluates it with no # brew on PATH, hence the full path it passes in HOMEBREW_BREW_FILE. brew_bin = ENV.fetch("HOMEBREW_BREW_FILE") { "#{ENV.fetch("HOMEBREW_PREFIX", "/opt/homebrew")}/bin/brew" } `"#{brew_bin}" search --cask nerd-font`.split.grep(/\Afont-.*-nerd-font\z/).each { |font| cask font }