Skip to content

amaalali/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Installing and Deleting

Setup steps

  1. Clone this repo to location ~/code/dotfiles
  2. Install essential dependencies:
    1. homebrew
    2. Install all packages with brew bundle. Check the section below for install details.
  3. Configure git, see git setup instructions
  4. Link files using the install command
  5. Install current font - see font install instructions and setup guide
  6. Install Starship shell prompt
  7. Install tpm - Tmux Plugin Manager
  8. Install common tools:
    1. fzf - brew install fzf
    2. delta - better git diff
    3. SDKMan
  9. Install Scala-CLI
    1. See installation section
  10. Run Brew

Install packages with brew bundle

  1. In command line ensure that the working directory is the base of this project
  2. Run command
brew bundle install --file=./Brewfile

Install Command to link dotfiles

  1. In command line ensure that the working directory is the base of this project
  2. Run command

Ensure there is a .config folder

stow -t ~ -v home
stow -t ~/.config -v config

Setup Git Config

  1. Install git: brew install git
  2. Create a local .gitconfig file and add the username, email, and ... ssh for signing
  3. Configure git by adding the following line to the .gitconfig
[include]
  path = ~/.gitconfig_extension
  1. For folder specific / project specific git config, create a different config file .gitconfig_${folder_name} and link to that for that folder in .gitconfig. For example to use a different user details for signing commits in folder ~/code/foo then add the following
// .gitconfig
[includeIf "gitdir:code/foo/"]
  path = .gitconfig_foo
// .gitconfig_foo
[user]
  name = <Name>
  email = <Email>
  signingKey = <SigningKey>

Setup ZSH config

  1. Add the following line to the .zshrc
. ~/.zshrc_extension

Setup fonts

  1. Install font: brew install --cask ???
  2. Change font for each profile to use installed font
  3. Configure font in VSCode
    1. Change font familty: "editor.fontFamily": "'FiraCode Nerd Font Mono', Menlo, Monaco, 'Courier New', monospace"
    2. Enable ligatures: "editor.fontLigatures": true

See Nerd Fonts for more options.

Setup Scala CLI

  1. Install using SDKMAN
  2. Follow instructions for shell completions

Removal of dotfiles

  1. In command line ensure that the working directory is the base of this project
  2. Uninstall command:
stow -t ~ -v -D home
stow -t ~/.config -v -D config

Folder structure

The aim of the folder structure adopted here is to make a modular folder structure. For example, if the .shell_conf file is removed the .zshrc should still load.

Note

  • Instead of .zshrc I have a .zshrc_extension. This is so that the .zshrc that oh-my-zsh creates can source the .zshrc_extension

Vim

  • Using Vim-Plug to manage plugins Install using curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim

Todo

  • Make linking configs to local config files a script
  • Make unlinking configs to local config files a script

Additional Apps and Utilities

About

My collection of dotfiles

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published