GithubHelp home page GithubHelp logo

garden-dotfiles's Introduction

garden-workstations

First-time usage

  1. Change the workstation password.
  2. Clone this repo.
  3. macOS only: uninstall shiftit, iterm, any other cask apps listed in the casks of macos.yml.
  4. macOS only: sign into app store and update xcode. Then, open xcode and accept the license. Then run xcode-select --install. You'll need to do this for some inexplicable reason to use the C compiler. Remind me again why macOS is so developer-friendly?
  5. Ensure your SSH key is loaded via ssh-add -l
  6. <garden-workstations>/run.sh

Currently-required manual steps

  1. If bosh-cli brew package was already installed without the without-bosh2 option, run brew uninstall --force bosh-cli. This is needed as brew will falsely claim success, but won't change the link name from bosh2 to bosh.
  2. If migrating from recent (pre 03/08/2017) revisions on the ansible branch: git checkout master && git fetch && git reset --hard origin/master. This is necessary because master was force pushed to the old ansible branch.

Linux post-install

  1. Do the things in common post-install below.

macOS post-install

  1. Open flycut, shifit. Ensure they start on startup.
  2. Open Keyboard preferences > Shortcuts > Input Sources > untick "Select the previous input source" (or whatever is stealing ctrl+space from our tmux config). This start off unticked anyway, but will become ticked as soon as you add another input source (e.g. US layout)!
  3. Hide the dock.
  4. Speed up key repeat.
  5. Make iTerm append Esc to Alt key. Open iTerm -> Preferences -> Profiles -> Keys and change the Left and Right Alt key settings from Normal to Esc+. This restores alt+f, alt+backspace etc.
  6. Make sure you set a Nerd Font as your non-ascii font in iTerm -> Preferences -> Profiles -> Text -> Non-ASCII Font (Inconsolata Mono Nerd Font comes with dotfiles)
  7. Do the things in common post-install below.

Common post-install

  1. Reload tmux and shell.
  2. Install TPM plugins (in tmux press prefix+I).
  3. ruby-install yourself a Ruby version.
  4. vim-update. Not all plugins install unless the shell is interactive, for some reason.
  5. Enable bash-it plugins and completions. This used to be automated, but they have since merged a change which means bash-it cannot be run interactively. Until we find another way around this, run:
    source ~/.bash_profile
    bash-it enable plugin base chruby-auto chruby fzf git
    bash-it enable completion bash-it git system

TODO

  1. git autocomplete in bash
  2. Unify tmux configs? It looks like that TPM plugin is cross-platform.
  3. tmate config that works.
  4. tmate on linux
  5. automate installation of Ruby in run.sh based on .ruby-version.
  6. macOS key repeat (this is a bit of a pain to automate as valid defaults vales changed between el capitan and sierra. Might not even be worth automating)
  7. rethink PS1 (do we need that watch emoji and ruby version?)

Troubleshooting

  • Can't find cask

     failed: [localhost] (item=docker) => {"failed": true, "item": "docker", "msg": "Error: Cask 'gitx-rowanj' is unavailable: No Cask with this name exists."}
    

    Similar errors to this probably means your homebrew has a cask that is no longer available. In this case, make sure you don't have gitx installed, and manually remove its cask folder from /usr/local/Caskroom.

garden-dotfiles's People

Contributors

christopherclark avatar danail-branekov avatar gcapizzi avatar georgethebeatle avatar mnitchev avatar yulianedyalkova 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.