Skip to content

👨🏻‍💻 dotfiles for my personal macos setup

Notifications You must be signed in to change notification settings

patlux/dotfiles

Repository files navigation

.dotfiles Twitter Follow

My personal macos setup config.

Usage

🥇 Getting started

How to use this for the first time:

cd ~
git clone git@github.com:patlux/dotfiles.git ./.dotfiles
echo "alias dgit='git --git-dir ~/.dotfiles/.git --work-tree=\$HOME'" >> ~/.zshrc

# WARNING: all exists files will be overwritten!
dgit reset --hard

 Update

cd ~/.dotfiles
git pull origin main
dgit reset --hard

 Sync

After changing files in your home folder, you want to sync the changes back into .dotfiles:

./.bin/dotfiles-sync.sh

Keyboard bindings

Window Management

  • Controlled by skhd: ~/.config/skhd/skhdrc
  • Managed by yabai: ~/.config/yabai/yabairc
Shortcut Description
alt + hjkl Switch focus
lctrl + cmd + hjkl Swap windows
alt + s Toggle splitting
alt + shift + hjkl Increase window size
lctrl + shift + hjkl Decrease window size
alt + shift + 0 Balance windows

I'm using LunarVim as my main editor for programming, editing and writing.

~/.config/lvim/config.lua

Shortcut Description
lctrl + hjkl Switch focus

Kitty is my primary used terminal. It has built-in support for tabs and it's known for it's speed.

~/.config/kitty/kitty.conf

Shortcut Description
ctrl + , Switch to previous tab
ctrl + shift + , Move tab backwards
ctrl + . Switch to next tab
ctrl + shift + , Move tab forwards
cmd + t Create new tab
cmd + n Create new window with current directory

System Mappings

Controlled by hidutil.

~/Library/LaunchAgents/de.patwoz.KeyRemapping.plist

Shortcut Description
right cmd mapped to right option To enter @ (because Keychron v2 doesn't have a right option key
capslock mapped to esc Easier access to esc
esc mapped to ^ Easier to enter something like ^g :)

Use the online tool to generate the json.

Others

Adblock

To block ads I'm using MattiSG/adblock as listed in Brewfile:

brew install mattisg/mattisg/adblock
# enable:
sudo adblock on

System Maintenance

Updates

nixos

home-manager switch

brew

# check for updates
brew update

# install updates
brew upgrade

node

# check for updates
ncu -g

# install updates
~/.bin/install-node-packages.sh
bash <(curl -s https://raw.githubusercontent.com/lunarvim/lunarvim/master/utils/installer/install.sh)

# force update:
rm -rf ~/.local/share/lunarvim
bash <(curl -s https://raw.githubusercontent.com/lunarvim/lunarvim/master/utils/installer/install.sh)

✨ Bootstrapping

These describes the steps I did to create the .dotfiles folder:

echo "alias dgit='git --git-dir ~/.dotfiles/.git --work-tree=\$HOME'" >> ~/.zshrc

cd ~
mkdir .dotfiles
cd .dotfiles
git init .
echo "*" > .gitignore
git add -f .gitignore
git commit -m "🔥"
cd ~
dgit reset --hard

# now copy all files which should be stored in git into .dotfiles/
# then force add them to git
git add -f <files>

🦸‍♂️⤵️

Created with 🔥 by @de_patwoz

About

👨🏻‍💻 dotfiles for my personal macos setup

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published