/dotfiles

⚙️ My dotfiles - focusing on vim, zsh, tmux, window managers, shortcuts and languages like Ruby, Python, and Typescript.

Primary LanguageShell

My Dot Castle

DotCastle

castle for my dotfiles - the cornetstone of dev-kind ! :)

This repository contains the dotfiles (stolen/compiled/created) by me. Major inspirations from @holman and @mathiasybnens. More inspirations from dotfiles repository by @skwp. Credit has been given where I could. :)

To install, run:

git clone https://github.com/nikhgupta/dotfiles ~/.dotfiles
~/.dotfiles/install/run.sh

Version 5 - Back to OSX

Pre Setup

I had to buy a Macbook Pro due to work requirements. Although, I loved using my Legion Y530 running ArchLinux OS with bspwm as tiling window manager, Macbooks have their own USPs. Primarily, ease of development and longer battery backup over the Legion Y530.

I am using the Macbook Pro as a primary machine now (as mentioned - due to work requirements). These dotfiles target setup of my Macbook Pro along with (upcoming) BetterTouchTool automation and TouchBar customizations.

My Macbook has a physical Escape key unlike the most unfortunate previous generation Macbooks with an Escape key on the TouchBar!!!

I have tried my best to use apps that allow me to backup their settings / config in my dotfiles repo. Primarily, I use yabai for window management (like bspwm on arch), skhd for key-bindings (with SIP disabled), and MTMR for touch bar customization.

I would like to switch to hammerspoon app as that would provide additional features over skhd, but hammerspoon at the moment has problems interfacing with yabai (it seems), and hence, I will revisit it at a later time.

I have remapped by Caps Lock key to send F19 key code instead. I use vim-like modal key-bindings, which use this F19 key code as leader, and vim like movements, e.g. I can move a window to next space using F19 m w ] or F19 m w r (move window next or right).

Choice of tools is influenced by whether the rules/config can be setup using a simple text file. If so, we can add that config to version control for easier setups later.

Version 4 - Archlinux/Manjaro

Pre-setup

These dotfiles used to target osx (v1), ubuntu/archlinux (v2), WSL (v3), etc., but with v4 - I have exclusively settled on using Archlinux base now. For a quick setup, I do employ Manjaro Architect at times, which sets up a base Archlinux install for me with a minimal Gnome shell.

At the moment, I am using a Lenovo Legion Y530 laptop, which I have really started liking as opposed to my earlier Macbook Airs. The Legion Y530 laptop has 2 graphic cards, which makes me favor Manjaro vs Arch, due to automatic hardware detection and drivers setup.

These dotfiles expect a minimal Gnome setup with either Archlinux or Manjaro, but do allow setting up a tiling window manager - which I use primarily. The Gnome session is serves as a backup, if needed.

Screenshots

Home (with default wallpaper)

desktop

This system is currently busy

Busy

a nice app launcher

launcher

my favorite alfred alternative

run menu

a scratch terminal

scratch terminal

rofi menu for all configured keybindings

keybindings

more directory colors

dircolors

and notifications

notifications

and a nice screen lock

screen lock

Other goodies

icons hardcoded and also, autoguessed via font-awesome

window icons

screencasts, screenshots, wallpaper changer and a real tray

notifications