This repo is used to configure a MacBook from scratch. It can serve as a guide for a brand-new computer or after a factory reset.
NOTE: These steps were made for macOS Sequoia, it may not work with other macOS versions.
Model: MacBook Air (13-inch, M3, 2024)
Chip: Apple M3
Memory: 16 GB
Storage: 256 GB
When starting your mac for the first time, you should always check if there are any software updates available. You can find these updates by going to System Preferences > Software Updates
.
When setting up a mac, there are also some system preferences I like to change.
Turn on Firewall
Select Low Power Mode >
Only on Battery
Select only Install Security Responses and system files
Deselect AutoFill Passwords & Passkeys
(as I use Bitwarden, for now)
Uncheck System Preferences > General > Close windows when quitting an app
Select Appearance >
Dark
Select Show Percentage
Select Double-click a window's title bar to >
Minimize
Unselect Show suggested and recent apps in Dock
Select Click wallpaper to reveal desktop >
Only in Stage Manager
Select Prefer tabs when opening documents >
Always
Unselect Close windows when quitting and application
Select Groupd windows by application
- Left Inferior Corner: Launchpad
- Right Inferior Corner: Lock Screen
Unselect Play sound on startup
Select Start Screen Saver when inactive >
For 5 minutes
Select Turn display off on battery when inactive >
For 2 minutes
Select Turn display off on power adapter when inactive >
For 10 minutes
Select Require password after screen saver begins or display is turned off >
After 5 minutes
Select Show large clock
On Screen Saver and Lock Screen >
Select Turn keyboard backlight off after inactivity >
After 5 seconds
Select Tap to click
Select New Finder windows show >
Downloads
On the Mac, the "command" key (⌘) replaces the "ctrl" key in Windows. Here are the main combinations that I use:
- @: Option + 2
- – (em dash): Option + Shift + dash (-)
- Change current app: CMD + Tab
- Change tab: CMD + Option + Left/Right Arrow
- Clear cache (in browser): CMD + Shift + R
- Close app: CMD + Q
- Close window: Shift + CMD + W
- Enter full screen mode: Control + CMD + F
- Force quit app: CMD + Option + Esc (use only when an app doesn't respond)
- Go forward/backward word by word: Option + Left/Right Arrow (+ Shift to select)
- Go to the beginning/end of a line: CMD + Left/Right Arrow (+ Shift to select)
- Hide app: CMD + H
- Minimize app: CMD + M
- New tab: CMD + T
- New window: CMD + N
- {}: Shift + Option + 8/9
- (): Shift + 8/9
- Spotlight Search (currently I'm using Raycast as a replacement): CMD + Space bar (currently using CMD + )
- Take Screenshot: CMD + Shift + 5
- Screenshot entire screen: CMD + Shift + 3
- Screenshot separate app: CMD + Shift + 4 + Space
- Screenshot selected area: CMD + Shift + 4 + Click & Hold & Drag Mouse
- Change desktop window: Control + Left/Right Arrow
- Go to Folder window: CMD + Shift + G
- Show tabs in fullscreen mode: CMD + SHIFT + F
- Show/hide terminal: CMD + J
My setup.sh file can be found at the root of this repo, running the script will:
- Install Homebrew
- Install brew formulæs and casks that I use
- Configure Git
- Installing Oh My Zsh
- Create a SSH key to be added to GitHub and add it to the Mac’s Keychain
My iTerm2 preferences file can be found here.
Color presets
I am currently using the BlulocoDark color preset.
All my iTerm2 color presets can be found here.
Configurations
- Enable usage of
option + command + left/right
orcommand + left/right
keyboard shortcuts:Preferences > Profiles > Keys > Key Mappings > Presets >
Natural Text Editing
- Check
Preferences > Profiles > Session > status bar enabled
Preferences > Profiles > Terminal > Scrollback lines:
4000
Preferences > General > Terminal > Startup > Window restauration policy:
Use System Window Restauration Setting
Preferences > Profiles > General > Working Directory >
Reuse previous session's directory
Preferences > Profiles > Text > Cursor >
Vertical bar
- Check
View > Show Tabs in Fullscreen
The font I use is Fira Code.
Oh My Zsh is an open source, community-driven framework for managing your Zsh configuration.
My .zshrc file can be found here. To edit the zsh config file, run:
vim ~/.zshrc
My .vimrc file can be found here. In alternative, this is the file content:
syntax on
set hlsearch
To edit the vim config file, run:
vim ~/.vimrc
Spaceship is a minimalistic, powerful and extremely customizable Zsh prompt. It combines everything you may need for convenient work, without unnecessary complications, like a real spaceship.
Homebrew is a free and open-source software package management system that simplifies the installation of software on Apple's operating system, macOS, as well as Linux.
Before you install Homebrew though you need to install the xcode command line utilities:
xcode-select --install
We can then install brew with:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Here are some of the brew formulæs that I have (more to be added):
- git
- htop
- wget
- curl
- telnet
- tree
- trash
- pyenv
- pyenv-virtualenv
- visual-studio-code
- brave-browser
- docker
- rectangle
- postman
- notion
- iterm2
- the-unarchiver
- webtorrent
- spotify
- teamviewer
- stremio
- iina
- gray
- raycast
These are the apps that I have currently installed on my mac. Whenever I can, I will install these apps from Homebrew.
- Endpoint Security VPN
- Tunnelblick
- Spotify
- Slack
- The Unarchiver
- Visual Studio Code
- Messenger
- iTerm2
- TeamViewer
- Office (Word, PowerPoint, Excel)
- Brave Browser
- Postman
- Zoom
- Docker
- MusicHarbor
- Rectangle
- Spark
- Bitwarden
- WebTorrent
- Notion
- Gray
Here are the chromium extensions that I use:
I still don't care about cookies
Grammarly: AI Writing and Grammar Checker App
Auto Refresh Plus | Page Monitor
AdBlock — block ads across the web
On Brave, go to Settings > Search engine > Manage search engines and site search > Site search
, and add the desired shortcuts:
My Visual Studio Code preferences file can be found here.
- Live-Share
- Dracula Official (theme)
- GitHub Theme (theme)
- Palenight Theme (theme)
- Copilot Theme (theme)
- Remote - SSH
- vscode-pdf
- Todo Tree
- GitLens
- Error Lens
- VSCodeFileHeader
- Save as Root in Remote - SSH
- Grammarly
- Docker
- Diff
- Copy On Select
- Bookmarks
- DotENV
- Draw.io Integration
- Restore Terminals
Currently using One Dark Pro Darker color theme.
Raycast is an application launcher and productivity software developed for macOS. It offers fast access to applications, dictionaries, files, text snippets, clipboard, and more. Raycast is an alternative to the macOS's built-in Spotlight function, with a richer interface providing additional ways to display varied content.
My Raycast preferences file can be found here.
Raycast comes with many built-in features that can have a shortcut or an alias assigned, most notably:
- Application search
- File search
- Clipboard history
- Floating notes
- Calculator
- Changing volume, brightness, hibernating
- Word definitions
- Window management
- Snippets and text expansion
- Access to calendar events
- Quick access to ChatGPT (paid feature)
While Raycast itself is a closed-source application, it includes a built-in store that offers open-source extensions to extend its functionality. The current features I'm using are: