/dotfiles

My configuration files

Primary LanguageVim Script

Table of Contents

Prerequisites

Mac Os X

See fresh install below.

Linux Debian/Ubuntu/Arch

curl https://raw.githubusercontent.com/charlax/dotfiles/master/install/provision.sh -o ./provision.sh
chmod a+x provision.sh

./provision.sh
# full install:
./provision.sh --full

Use this script to fully automate a new machine setup (e.g. with Vagrant):

install/provision.sh

Otherwise, see Installation section below.

Installation

DOTFILES="$HOME/.dotfiles"
git clone https://github.com/charlax/dotfiles.git $DOTFILES
# or
git clone git@github.com:charlax/dotfiles.git $DOTFILES

# If you want only dotfiles
python3 $DOTFILES/install.py

# On a fresh install
python3 $DOTFILES/install.py --with-all

To install all the required software, run:

~/.dotfiles/install/install-apps-all.sh

Post-install checklist on a fresh installation - Mac Os X

Initialization

  1. Install any OS upgrade
  2. Start with installing XCode from the App Store - it takes quite a long time. Open it and accept the T&C.
  3. Install Homebrew (see above)
  4. Run the steps below in the terminal:
# Make sure the account name is correct:
whoami
# If it needs to be changed, create a new temporary admin. Follow this guide:
# https://support.apple.com/en-us/HT201548

# Install dependencies
brew install git python3

# Create an SSH key and add it to Github
ssh-keygen -t ed25519 -C "youremail@example.com"
pbcopy < ~/.ssh/id_rsa.pub
# Then add it to Github

# Verify you can connect to github:
ssh -T git@github.com

# Install local git settings
cp $DOTFILES/git/gitconfig.local.template $DOTFILES/git/.gitconfig.local

Once this is done, follow the instruction above (Installation).

Mac Os X Settings

  • Change the computer name
  • Add French input source
  • Set keyboard shortcuts
    • Set the change input source shortcuts

Apps to install

Manually (see the script in install/ for automatically installed apps):

  • Annotate (App Store)
  • Grammarly
  • Keynote (App Store)
  • Kindle (App Store)
  • Numbers (App Store)
  • Pages (App Store)
  • Pixelmator (App Store)
  • Things (App Store)
  • Time Out (App Store)
  • VirtualBox (better to install manually as it requires Max Os X permissions)
  • iA Writer (App Store)

Setup the following apps:

  • Password application
  • Backup application
  • Chrome
  • Rectangle (give permissions)
  • Things cloud
  • Printers
  • Open UTC Time at login
  • Setup MeetingBar (brew install meetingbar)

Misc

  • You can copy the dotfiles in the current directory through copy-dotfiles-here.sh

Profiling ZSH

Use zprof:

# At the beginning of your file, e.g. zshrc
zmodload zsh/zprof

...

# At the end:
zprof

Useful software (not installed by default)

See Awesome tools

Checklist before reinstall

  • Run ncdu
  • Backup local configuration (find $DOTFILES -iname "*.local.*")
  • Backup SSH keys (ls ~/.ssh)
  • Backup GPG keys
    • Check keys: gpg --list-secret-keys --keyid-format LONG
    • Export: gpg -o ~/Downloads/private.gpg --export-options backup --export-secret-keys 120501+charlax@users.noreply.github.com
  • Check each app for backup, go through list in Applications/
    • Anki
  • Backup hidden files in repo
    • Check git status --ignored in dotfiles
  • Check folders listed below
  • Make sure branches in repo are pushed (use clean-up-weekly)
  • Search the Internet for "what folders to backup"
  • Search the Internet for "checklist before factory reset"
  • Backup photos (too important)
  • Make sure iCloud sync is finished (check status bar in Finder)
  • What's most important? Is it backed up?
    • Pictures
  • Empty Bin
  • Check VirtualMachines
  • Check Apple's advices

Before factory reset:

  • Sign out of iCloud account
  • Disconnect Bluetooth devices
  • Sign out of iMessages

Folders to check:

/Library
~
~/CodePerso
~/Library

Contributing

Checkout CONTRIBUTING.md

Inspiration