Giter VIP home page Giter VIP logo

fs-setup's Introduction

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.

The Setting up MongoDB script will be used once you'll need to work with MongoDB.

๐Ÿ’ก 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.

๐Ÿƒ Setting up MongoDB

This script will be used once you'll need to work with MongoDB.

Installs MongoDB, MongoDB Compass and starts the MongoDB background service.

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

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

The script will use Homebrew to install MongoDB and MongoDB Compass.

It will also start the MongoDB service.

fs-setup's People

Contributors

djfarly avatar alexclaes avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.