This repository contains a script to automate the setup and configuration of macOS. It installs essential software, configures system settings, and applies customizations for Dock, Finder, and Hot Corners.
- Homebrew must be installed (if not, the script will handle the installation).
-
Clone the repository:
git clone https://github.com/anstapol/macos-setup.git cd macos-setup
-
Run the setup script:
./setup.sh
-
Restart macOS to ensure all settings are applied correctly.
- Installs Homebrew packages from the
Brewfile
, including:- Formulae (command-line tools, libraries).
- Casks (GUI applications).
- App Store apps via
mas
.
- Configures macOS settings such as:
- Dock autohide, magnification, and hot corners.
- Finder settings, including sidebar & view style.
- Automatically removes old Trash items after 30 days.
- Autohide: Enabling hiding the dock automatically & icreasing the animation speeds.
- Magnification: Magnify Dock icons when hovering over them & setting the exact size.
- Minimization: Use the "scale" effect & minimized into application icon.
- Recent Applications: Hides the recent applications section in the Dock.
- Hide External Hard Drives, Internal Hard Drives, and Removable Media on Desktop.
- Enable Finder Sidebar, Path Bar, and Status Bar.
- Set Default Finder View to List View.
- Arrange Finder Items by Name.
- Automatically Remove Old Trash Items after 30 days.
- Bottom-Left: Starts the screen saver (requires Command ⌘ key).
- Bottom-Right: Opens a Quick Note (requires Command ⌘ key).
- Top-Left: Locks the screen (requires Command ⌘ key).
- Top-Right: Opens the Notification Center (requires Command ⌘ key).
- AWS CLI: A unified tool to manage AWS services from the command line.
- CocoaPods: A dependency manager for Swift and Objective-C Cocoa projects.
- fzf: A command-line fuzzy finder.
- mas: A command-line interface for the Mac App Store.
- neovim: A hyperextensible Vim-based text editor.
- nvm: Node Version Manager - Simple bash script to manage multiple active Node.js versions.
- ripgrep: A line-oriented search tool that recursively searches your current directory for a regex pattern.
- Stern: Tail multiple Kubernetes pods and containers in real time.
- Watchman: A tool by Facebook for watching changes in the filesystem and triggering actions.
- 1Password: A password manager that helps you store and manage your passwords securely.
- Affinity Designer: A powerful vector graphic design tool.
- Affinity Photo: A professional photo editing software.
- Android Studio: The official IDE for Android development.
- ChatGPT: Desktop app for interacting with OpenAI's ChatGPT.
- Discord: A communication platform for voice, video, and text.
- Docker: A platform for developing, shipping, and running applications in containers.
- Figma: A web-based vector graphics editor and prototyping tool.
- Firefox: A fast, private, and secure web browser.
- Font JetBrains Mono: A font optimized for programming.
- Google Chrome: A fast, simple, and secure web browser built by Google.
- iTerm2: A replacement for Terminal with more features, like split panes, tabs, and search.
- Lens: The Kubernetes IDE for managing clusters efficiently.
- LibreOffice: A powerful, free office suite that is a replacement for Microsoft Office.
- PHPStorm: A professional IDE for PHP developers from JetBrains.
- Postman: An API platform for building and using APIs.
- Slack: A collaboration platform for teams to communicate and share files.
- Stats: A macOS system monitor that displays CPU, GPU, memory, and disk usage.
- Sublime Text: A sophisticated text editor for code, markup, and prose.
- TablePlus: A modern, native tool for managing relational databases.
- Telegram: A cloud-based instant messaging, video telephony, and VoIP service.
- Visual Studio Code: A source-code editor made by Microsoft for Windows, Linux, and macOS.
- WhatsApp: A free messaging and video calling app.
- Zulu 17: An open-source build of the Java Development Kit (JDK).
- Numbers: A spreadsheet application developed by Apple.
- Pages: A word processor developed by Apple.
- Xcode: Apple's official IDE for macOS, used to develop software for all Apple platforms.
To keep Brewfile
up to date any time new software is installed run the following command.
brew bundle dump --force --file=Brewfile