{"id":49828236,"url":"https://github.com/marchenkovit/brewfile","last_synced_at":"2026-05-13T19:00:31.294Z","repository":{"id":357644137,"uuid":"1186453108","full_name":"marchenkovit/Brewfile","owner":"marchenkovit","description":"One-command MacBook Pro M3 setup — Homebrew packages, casks, VS Code extensions, shell config, macOS defaults, kubectl contexts. Idempotent install.sh skips apps already installed manually.","archived":false,"fork":false,"pushed_at":"2026-05-13T18:19:17.000Z","size":555,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-13T18:19:29.848Z","etag":null,"topics":["apple-silicon","automation","aws","brewfile","devops","dotfiles","homebrew","idempotent","installer","jetbrains","kubernetes","m3","mac-setup","macbook","macos","setup","sre","terraform","vscode","zsh"],"latest_commit_sha":null,"homepage":"https://marchenkovit.github.io/Brewfile/","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/marchenkovit.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":["marchenkovit"]}},"created_at":"2026-03-19T16:33:20.000Z","updated_at":"2026-05-13T18:19:19.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/marchenkovit/Brewfile","commit_stats":null,"previous_names":["marchenkovit/brewfile"],"tags_count":5,"template":false,"template_full_name":null,"purl":"pkg:github/marchenkovit/Brewfile","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marchenkovit%2FBrewfile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marchenkovit%2FBrewfile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marchenkovit%2FBrewfile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marchenkovit%2FBrewfile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/marchenkovit","download_url":"https://codeload.github.com/marchenkovit/Brewfile/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/marchenkovit%2FBrewfile/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32995915,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-13T13:14:54.681Z","status":"ssl_error","status_checked_at":"2026-05-13T13:14:51.610Z","response_time":115,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apple-silicon","automation","aws","brewfile","devops","dotfiles","homebrew","idempotent","installer","jetbrains","kubernetes","m3","mac-setup","macbook","macos","setup","sre","terraform","vscode","zsh"],"created_at":"2026-05-13T19:00:20.833Z","updated_at":"2026-05-13T19:00:31.284Z","avatar_url":"https://github.com/marchenkovit.png","language":"Shell","funding_links":["https://github.com/sponsors/marchenkovit"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/social-preview.png\" alt=\"Brewfile — MacBook Pro M3 one-command setup\" width=\"100%\"/\u003e\n\u003c/p\u003e\n\n# 🍺 MacBook Pro M3 Setup\n\n[![CI](https://github.com/marchenkovit/Brewfile/actions/workflows/ci.yml/badge.svg)](https://github.com/marchenkovit/Brewfile/actions/workflows/ci.yml)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n[![Last Commit](https://img.shields.io/github/last-commit/marchenkovit/Brewfile)](https://github.com/marchenkovit/Brewfile/commits/main)\n[![Stars](https://img.shields.io/github/stars/marchenkovit/Brewfile?style=social)](https://github.com/marchenkovit/Brewfile/stargazers)\n[![Pages](https://img.shields.io/badge/docs-pages-blue?logo=github)](https://marchenkovit.github.io/Brewfile/)\n[![macOS](https://img.shields.io/badge/macOS-M3-000000?logo=apple)](https://www.apple.com/macbook-pro/)\n[![Shell: zsh](https://img.shields.io/badge/shell-zsh-89E051?logo=gnu-bash\u0026logoColor=white)](https://www.zsh.org/)\n\nBackup and restore for macOS development environment: Homebrew packages, shell config, app settings, macOS tweaks.\n\n\u003e One-command setup for a fresh MacBook — Homebrew (71 brews, 47 casks, 22 VS Code extensions), Oh My Zsh, AWS/git/VS Code configs, macOS defaults, EKS kubectl contexts. Idempotent install (skips apps already installed manually).\n\n## Quick Install (one command)\n\n```bash\ngit clone git@github.com:marchenkovit/Brewfile.git\ncd Brewfile\nchmod +x install.sh\n./install.sh\n```\n\nThis will automatically:\n1. Install Homebrew\n2. Install all packages (CLI tools, casks, VS Code extensions)\n3. Install Oh My Zsh\n4. Restore configs (zsh, aws, git, vscode, claude)\n5. Apply macOS defaults (Finder, Dock, keyboard, screenshots)\n6. Configure kubectl contexts for all EKS clusters\n\n## Manual Install (step by step)\n\n### 1. Install Homebrew\n\n```bash\n/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"\necho 'eval \"$(/opt/homebrew/bin/brew shellenv)\"' \u003e\u003e ~/.zprofile\neval \"$(/opt/homebrew/bin/brew shellenv)\"\n```\n\n### 2. Install Oh My Zsh\n\n```bash\nsh -c \"$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)\"\n```\n\n### 3. Restore all packages\n\n```bash\nbrew bundle --file=Brewfile\n```\n\nIncludes:\n- **CLI**: awscli, kubectl, helm, k9s, terraform, ansible, jq, yq, bat, eza, fzf, zoxide, btop, ripgrep, fd, tmux, lazygit, lazydocker, kubectx, stern, gh, mas, nmap, wget, pv, mc\n- **Casks**: iTerm2, OpenLens, VS Code, JetBrains Mono Nerd Font, Docker, Firefox, Chrome, 1Password, Slack, Raycast, and ~40 more (see Brewfile)\n- **VS Code extensions**: Terraform, Docker, Kubernetes, GitLens, Remote SSH, YAML, Chef, Ruby LSP\n\n### 4. Restore configs\n\n```bash\ncp .zshrc ~/.zshrc\nmkdir -p ~/.aws \u0026\u0026 cp aws/config ~/.aws/config\ncp git/.gitconfig ~/.gitconfig\ncp vscode/settings.json ~/Library/Application\\ Support/Code/User/settings.json\nmkdir -p ~/.claude \u0026\u0026 cp claude/settings.json ~/.claude/settings.json\nsource ~/.zshrc\n```\n\n### 5. Apply macOS defaults\n\n```bash\nchmod +x macos-defaults.sh\n./macos-defaults.sh\n```\n\n### 6. Configure kubectl\n\n```bash\naws configure  # set Access Key, Secret Key\naws eks update-kubeconfig --region us-west-2 --name oregon\naws eks update-kubeconfig --region us-west-2 --name dev1\naws eks update-kubeconfig --region ca-central-1 --name canada\naws eks update-kubeconfig --region eu-west-2 --name london\naws eks update-kubeconfig --region ap-southeast-2 --name sydney\naws eks update-kubeconfig --region us-east-2 --name ohio\n```\n\n### 7. Install additional apps\n\nSee [apps.md](apps.md) for apps not available in Homebrew.\n\n## Update configs\n\nWhen you change any config locally, sync to repo:\n\n```bash\n./update.sh\n```\n\nThis updates Brewfile, .zshrc, aws, git, vscode, claude configs and pushes to git.\n\n## Structure\n\n```\ninstall.sh              - Full automated setup\nupdate.sh               - Sync current configs to repo\nmacos-defaults.sh       - macOS system preferences\n.zshrc                  - Zsh config (aliases, plugins, oh-my-zsh)\nBrewfile                - Homebrew packages, casks, VS Code extensions\napps.md                 - Apps installed outside Homebrew\naws/config              - AWS CLI profiles and regions\ngit/.gitconfig          - Git settings (user, pull strategy)\nvscode/settings.json    - VS Code editor settings\nclaude/settings.json    - Claude Code settings\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarchenkovit%2Fbrewfile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarchenkovit%2Fbrewfile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarchenkovit%2Fbrewfile/lists"}