/web-setup

💻 macOS setup using zsh for the web development course

Primary LanguageShell

Setup macOS using zsh

This is a collection of scripts to setup your macOS.

They are designed for the neue fische web development course.

Instructions

You should have the latest macOS installed. To make sure, click on the apple logo at the top left, go to "About this Mac" and click "Software Update". Install any missing updates.

Find and run the program "Terminal". This is a program that allows you to run commands on your computer. You can press Space to open Spotlight. Type in the program's name and press Enter.

Copy the command you want to run and paste it into the Terminal.
Run it by pressing Enter.

💡 In case of any errors, carefully read the error text and google for help. Ask a coach for help if you can't find a solution with your own research.

Which commands should I run?

Begin with the General Setup. You can optionally run the Setting nicer macOS Configurations script at any time.

The Setting up git and GitHub script will be used once you'll need to work with git in the command line.

💡 You can check the "What does this do?" sections to learn what each script does in detail.

💻 General Setup

Installs desktop applications, command line tools and sets up the shell.

💡 Enter your macOS users password if you're asked for it and confirm with Enter. You won't see any characters while typing, but it's still working.

If you are asked to enable fuzzy auto-completion, enable key bindings and update shell configuration files confirm by pressing Enter.

zsh <(curl -s https://raw.githubusercontent.com/neuefische/web-setup/main/setup)
What does this do?

This command will download the setup script from GitHub and run it on your computer.

The script will install Homebrew which is a package manager for macOS.

Using Homebrew it will install the following command line tools:

  • gh is a command line tool for GitHub
  • git is a version control system
  • antigen is a plugin manager for zsh (the shell)
  • zsh-completions is a collection of additional auto completion definitions for zsh
  • exa is a modern replacement for ls (list files)
  • tree is a recursive directory listing command that produces a depth indented listing of files
  • fnm is a fast and simple Node.js version manager

It will also install the following desktop applications using Homebrew:

Using fnm the script will install the latest LTS version of Node.js a JavaScript runtime.

The script will use npm to install the following packages globally:

  • eslint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code

The script will copy zsh configuration files from this repository to configure zsh. It will also setup shell-integration for iTerm.

🍏 Setting nicer macOS Configurations

This script is optional, but it might make your macOS experience nicer. 🤓

Some of the default macOS settings are not very optimized for productivity. This script will change some of them.

💡 Enter your macOS users password if you're asked for it and confirm with Enter. You won't see any characters while typing, but it's still working.

zsh <(curl -s https://raw.githubusercontent.com/neuefische/web-setup/main/setup-macos)
What does this do?

This command will download the setup-macos script from GitHub and run it on your computer.

The script will change the following macOS settings:

  • disable disk eject warning
  • set dock autohide timings to feel more responsive
  • make hidden apps transparent in the dock
  • remove recent apps from the dock
  • set key repeat to feel more responsive
  • set show all files in Finder (including hidden ones)
  • make home folder the default location in Finder
  • disable automatic spelling correction

💡 If you want only some of the settings to be applied, copy the relevant lines from the setup script and run them in the Terminal.

Don't forget to run killall Dock && killall Finder (or restart you computer) to apply the changes.

🐙 Setting up git and GitHub

This script will be used once you'll need to work with git in the command line.

Sets up git and connects it to GitHub.

💡 Please enter your name and email address and confirm each with Enter.

Confirm the defaults by pressing Enter when asked about which file to save key and your passphrase.

Choose ssh as your preferred connection method. Login and authenticate to GitHub using the browser. (The device code is found in the Terminal.)

zsh <(curl -s https://raw.githubusercontent.com/neuefische/web-setup/main/setup-git)
What does this do?

This command will download the setup-git script from GitHub and run it on your computer.

The script will setup git and create a new ssh key for GitHub. It will also add the key to your GitHub account using the GitHub CLI.

🎬 Video showing the setup

A video showing the setup process can be found on YouTube:

Video Thumbnail – Mac Setup 101