Skip to content

amitrahav/dotfiles-osx

Repository files navigation

Amit Rahav's Dotfiles

A worm and safe place for all of my dotfiles.

Basicity a personal version of Nick Plekhanov's Dotfiles.

Running on my OSX mojave at the moment, most parts was tested on Sierra, High sierra and Catalina.

TL;DR

All off my os settings.

FAVORITES:

  • tiny-care-terminal
  • Iterm2 + oh-my-zsh autocomplete and theme!

What's in the box

setup.sh using for building settings on existing system - you should run it directly from the command line . $<dotfiles-osx path>/setup.sh.

setup-new-machine.sh using for installing all stuff on a new machine. it should not run directly from the command line. you should copy paste its commands by pices.

Actions by files:

Before you start

There are some committed files with a my name set as a value. you should change it.

  1. On osx/set-defaults.sh you should change COMPUTERNAME,HOSTNAME and LOCALHOSTNAME values.
  2. Change your projects (or add) directories for tiny-care-terminal on shell/tiny-care.env.

Setup.sh

  1. Backup dotfiles into ~/dotfiles_old.
  2. Symlink all shell and other dotfiles from repo in ~/
  3. Installing homebrew if not installed by calling the install/brew.sh script - Homebrew installs the stuff you need that Apple (or your Linux system) didn’t.
  4. Installing NVM for using different npm versions on your machine. if not installed by calling the install/npm.sh script.
  5. Installing casks if not installed by calling the install/brew-cask.sh script. Homebrew cask is an extension of the homebrew functionality.
  6. Installing all of the terminal beauty things: Oh-my-zsh, a framework for zsh shell, with Antigen - zsh plugin manager and Nick Plekhanov's Zsh Theme.
  7. Some basic iTerm2 configurations - dark theme, utf-8 encoding, removing the error popup on close, and configure integrated shell.

Setup-new-machine.sh

  1. Do not run this script at once prompt.
  2. Backup a big range of dotfiles into ~/migration.
  3. Install xcode-select developers tools.
  4. Installing homebrew if not installed by calling the install/brew.sh script - Homebrew installs the stuff you need that Apple (or your Linux system) didn’t.
  5. Installing casks if not installed by calling the install/brew-cask.sh script. Homebrew cask is an extension of the homebrew functionality.
  6. Installing NVM for using different npm versions on your machine. if not installed by calling the install/npm.sh script.
  7. Set Osx defaults.
  8. Run setup.sh file.

Remote-setup.sh

  1. Check if Curl and Wget installed and executable.
  2. Create ~/dotfiles directory, download and extract this repo into it.
  3. Run setup.sh file.

install/brew.sh

  1. Install homebrew if is not yet installed.
  2. Update and upgrade brew formulas.
  3. Install this formulas:
    1. Bash-compilation2 - set of bash compilation
    2. Moreutils - Collection of tools that nobody wrote when UNIX was young
    3. Autojump - a faster way to navigate your filesystem.
    4. Ponysay - enables pony to speak.
    5. Gnu-sed - GNU implementation of the famous stream editor
    6. Grep - Gnu style CLI search tool
    7. Tree - A directory listing utility that produces a depth indented listing of files.
    8. Git-extras -
    9. Hub - use github from command line.
    10. source-highlight - syntax highlighter.
    11. The_silver_searcher - Code-search similar to ack.
    12. Wifi-password - People ask you for the Wi-Fi password. Answer quickly!
    13. Zlib - General-purpose lossless data-compression library.
    14. python3 - install system-wide python3, only for using virtualenvwrapper.
    15. Ffmpeg - A complete, cross-platform solution to record, convert and stream audio and video.
    16. Imagemagick - Use ImageMagick® to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including PNG, JPEG, GIF, HEIC, TIFF, DPX, EXR, WebP, Postscript, PDF, and SVG
    17. Heruko - The Heroku Command Line Interface (CLI) makes it easy to create and manage your Heroku apps directly from the terminal. It’s an essential part of using Heroku.
    18. Battery - Bash script to display your Laptop's battery status on the terminal.
    19. [Fuck] (https://github.com/nvbn/thefuck): Correct your previous command.

instal/brew-cask.sh

Homebrew cask is an extension of the homebrew functionality.

Install some awesome extensions:

  1. Gyazo - Video screen recorder.
  2. Spectacle - Resize windows easily.
  3. Imagealpha - Reduces file sizes of 24-bit PNG files (including alpha transparency).
  4. Imageoptim - ImageOptim makes images load faster.
  5. Iterm2 - Terminal emulator.
  6. google-chrome - The web browser.
  7. Malwarebytes - Antivirus.
  8. Macdown - Open source markdown editor.
  9. Slack - Work massages.
  10. Transmit - Torrent client.
  11. Microsoft-office
  12. transmission - torrent client

++! And all of the quick look extensions

install/npm.sh

  1. Installing NVM if not exists.

  2. Setting stable node latest release as system default.

  3. Installing those npm packages on the default npm global installation:

    1. Diff-so-fancy - sexy git diffs
    2. Git-recent - Type git recent to see your recent local git branches
    3. Git-open - Type git open to open the GitHub page or website for a repository
    4. Gulp-cli - Automate and enhance your workflow
    5. Servedir - servedir is a simple Node web server for offline development and testing: running servedir from a directory will create a quick local web server.
    6. Http-server - a simple, zero-configuration command-line http server.
    7. Webpack - a module bundler for fast and easy dev time.
    8. Eslint - ESLint is a tool for identifying and reporting on patterns found in ECMAScript/JavaScript code.
    9. Lodash - A modern JavaScript utility library delivering modularity, performance & extras.
    10. MomentJs - Parse, validate, manipulate, and display dates and times in JavaScript.
    11. Async - utility module which provides straight-forward, powerful functions for working with asynchronous JavaScript
    12. Axios - Promise based HTTP client for the browser and node.js

    --

    1. Vue + vue-cli- The Progressive JavaScript Framework
    2. Nuxt - Vue.js Meta Framework to create complex, fast & universal web applications quickly.

    --

    1. Chalk - Terminal string styling done right
    2. Trash-cli - Move files and folders to the trash

install/pip.sh

Install python3 if not already installed, install pip for package management and virutalenvwrapper for managing versions.

Dependencies

  1. Install Xcode if run OSX

Future Wishes

  1. Adding whatsapp into installed apps.
  2. Include Xcode at the apps script as a dependencies.
  3. Install Docker client
  4. Set all Iterm2 location and profile.
  5. Install all VScode plugins

License

The code is available under the MIT license.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published