Giter VIP home page Giter VIP logo

laptop's Introduction

Laptop

This is a fork of [thoughtbot/laptop] - an awesome setup script from the folks at Thoughbot. I have modified it to include applications I use, as well as my vimrc, tmux and git config files.

Laptop is a script to set up an OS X laptop for web development.

It can be run multiple times on the same machine safely. It installs, upgrades, or skips packages based on what is already installed on the machine.

Requirements

We support:

  • OS X Mavericks (10.9)
  • OS X Yosemite (10.10)
  • OS X El Capitan (10.11)

Older versions may work but aren't regularly tested. Bug reports for older versions are welcome.

Install

Download, review, then execute the script:

curl --remote-name https://raw.githubusercontent.com/thoughtbot/laptop/master/mac
less mac
sh mac 2>&1 | tee ~/laptop.log

Optionally, install thoughtbot/dotfiles.

Debugging

Your last Laptop run will be saved to ~/laptop.log. Read through it to see if you can debug the issue yourself.

OS X El Capitan (10.11)

You may have problems installing Homebrew for the first time on OS X El Capitan due to permission changes to the /usr directory (within which the Homebrew installation is typically located). See the Homebrew El Capitan troubleshooting instructions for steps to resolve the permissions issues that interfere with Homebrew's installation.

What it sets up

  • [Bundler] for managing Ruby libraries
  • [Exuberant Ctags] for indexing files for vim tab completion
  • [Foreman] for managing web processes
  • [hub] for interacting with the GitHub API
  • [Heroku Toolbelt] for interacting with the Heroku API
  • [Homebrew] for managing operating system libraries
  • [ImageMagick] for cropping and resizing images
  • [Node.js] and [NPM], for running apps and installing JavaScript packages
  • [Postgres] for storing relational data
  • [Qt] for headless JavaScript testing via Capybara Webkit
  • [Rbenv] for managing versions of Ruby
  • [RCM] for managing company and personal dotfiles
  • [Ruby Build] for installing Rubies
  • [Ruby] stable for writing general-purpose code
  • [The Silver Searcher] for finding things in files
  • [Tmux] for saving project state and switching between projects
  • [Zsh] as your shell
  • [OhMyZSH]
  • Chrome
  • Iterm2
  • 1Password
  • Flux
  • The Unarchiver
  • Atom
  • Powerline Fonts

It also copies over vimrc (And runs PluginInstall), zsh, tmux and git config files.

It should take less than 15 minutes to install (depends on your machine).

Customize in ~/.laptop.local

Your ~/.laptop.local is run at the end of the Laptop script. Put your customizations there. For example:

#!/bin/sh

brew_tap 'caskroom/cask'
brew_install_or_upgrade 'brew-cask'

brew cask install dropbox
brew cask install rdio

gem_install_or_update 'parity'

brew_install_or_upgrade 'tree'
brew_install_or_upgrade 'watch'

Write your customizations such that they can be run safely more than once. See the mac script for examples.

Laptop functions such as fancy_echo, brew_install_or_upgrade, and gem_install_or_update can be used in your ~/.laptop.local.

See the wiki for more customization examples.

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.