Skip to main content
  1. Blogs/

Ultimate macOS Setup

·967 words·5 mins· ·
MacOS Configuration
按点下班
Author
按点下班
Work to live, don’t live to work
Table of Contents
Rational configuration and efficient functional software, creating a smooth and efficient workflow.

The content will be explained in the order of the configuration. Some parts can be selectively configured according to individual needs.

It is recommended to read through the entire text first, and not to rush into the configuration. The in-depth configuration of some applications may depend on other applications, so it is absolutely crucial not to implement everything at once!

Prerequisites
#

VPN (Optional)
#

The majority of computer-related applications are difficult to access in mainland China. If users in mainland China want to comfortably configure these applications, they must complete this step.

Command Line Tools (CLT) for Xcode
#

For macOS users, the system comes with bash, git, and curl pre-installed. In the command line, enter xcode-select --install to install CLT for Xcode.

Homebrew
#

The most important application on macOS is Homebrew. Please learn the detailed usage methods of Homebrew

Homebrew is the most widely used and best package manager on macOS. Basically, all “small” applications (except for large and robust ones like Chrome) are recommended to be downloaded and managed using the package manager.

For users in mainland China, it is recommended to install and configure Homebrew according to the Tsinghua University Open Source Software Mirror Site. It’s best to directly switch the source.

If mainland China users have a VPN, they can also directly install Homebrew using the terminal commands on the Homebrew official website.

GitHub (Recommended)#

Recommended: Register and configure a GitHub account with SSH protocol connection.

Basic Applications
#

Zsh
#

  1. First, use brew to install zsh and set it as the default shell.
brew install zsh
chsh -s $(which zsh)
  1. I use Oh My Zsh as a framework and package manager for managing the use of zsh, and install it according to the official website command line instructions.
  2. The Oh My Zsh plugin system is very rich, and you can refer to my .zshrc for recommended plugins to install or enable. Please make sure you understand the meaning of each line in the configuration file before adding it.
  3. Tools such as Starship can be used to enhance the prompt, and you can refer to my configuration file.

Node.js
#

Recommend using fnm for managing multiple Node.js environments. Install it using brew and follow the configuration instructions on its official website.

Java
#

Recommend using jenv for managing multiple Java environments. Install it using brew and configure it according to the official website.

Conda
#

Recommend installing Miniconda, which is more lightweight. You can install it according to the official documentation.

Rust
#

According to the official website, you can install Rust using the command line.

Golang
#

According to the official website, you can install it using the command line.

Productivity tools
#

Karabiner-Elements
#

A powerful and stable keyboard customizer

Recommend downloading from the official website, it has powerful functions and provides a high degree of customization for both keyboard and mouse.

iTerm2
#

iTerm2 is a terminal emulator, a replacement for Terminal and the successor to iTerm. It not only has a better appearance but also stronger functionality. Recommended configuration of hotkeys and themes.

Recommended to use brew for installation, or you can also download and install it from the official website.

NeoVim
#

hyperextensible Vim-based text editor, which I generally use for lightweight file editing on the command line.

It is recommended to use brew for installation. The in-depth configuration of NewVim is quite complex, but there are many pre-configured “distributions” available. Personally, I use LunarVim with some customization.

LunarVim involves a large number of dependencies, please carefully follow its official documentation for installation.

JetBrains
#

It is recommended to use the JetBrains Toolbox App for installing and managing JetBrains software products.

VsCode
#

A lightweight and versatile editor

Recommended to install from the official website.

Raycast
#

Free and more powerful alternatives to Alfred

Recommended to use brew for installation, or you can also download and install from the official website.

The plugin ecosystem is powerful and has a wide range of features. Be sure to browse the plugin marketplace thoroughly.

Tuxera
#

The NTFS-formatted hard drive for Microsoft can be used on a Mac, but the personal use of that paid software has other alternative options.

Peek
#

The Mac App Store is available for download, and macOS allows you to quickly preview files by pressing the spacebar. Peek has enhanced this feature, supporting a wider range of file formats.

iStat Menus
#

The ultimate system monitor

The new version interface is more visually appealing. The best detector for Mac, with customizable status bar and rich, detailed monitoring data.

Better365
#

The official website is here, this company has a large number of practical Mac applications, the ones I use are as follows:

  1. iShot: Screenshot, long screenshot, image pasting, annotation, color picking, screen recording tool
  2. FastZip: Excellent free compression and decompression tool
  3. Automatic input method switching: Can help you automatically switch input methods (Chinese and English)
  4. iBar: Hide menu bar icons
  5. Better And Better: Essential Mac tool for mouse, trackpad, and keyboard gestures

draw.io
#

draw.io is free online diagram software for making flowcharts, process diagrams, org charts, UML, ER and network diagrams.

Yabai
#

A tiling window manager for macOS based on binary space partitioning

The main issue is that the window switching and management in macOS itself is too slow and cumbersome. I really like its multi-space design, but the switching process is too troublesome.

yabai has a complete Wiki, and you can also refer to my yabai configuration files.

SketchyBar
#

A highly customizable macOS status bar replacement

Here is the translation from Chinese to English:

GitHub Link is available here, which can be used in conjunction with Yabai, with rich functionality. You can refer to my configuration file.