Skip to content

gittycat/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My Dotfiles and configs

This repo focuses on terminal tools and settings.

See macos_settup.sh for OS settings done through CLI. Almost all apps and tools are installed using homebrew. See

Main Applications

  • Ghostty A new but fast and full featured terminal from Mitchell Hashimoto.
  • Obsidian markdown notebook. I'm using it like a data lake for notes, using text search or a RAG for finding info later on.

Development

  • OrbStack Fast VM (headless) hypervisor and Docker containers manager.
  • UTM OOS VM hypervisor. Seldom used now. Headless VMs through OrbStack is all I need.
  • mise Manages multiple global environments for node, go, python, php. Decent Rust support was added recently.
  • uv Python package and virt env manager. Replaces everything from pyenv to pip. Much faster too.

CLI tools

The Rust and Go communities have re-implemented the old unix tools for faster (multi-core support), better ui (TUI in some) and eye candy (colour schemes). Here's my current crop.

  • atuin A shell command history. Sync mode is disabled so that history stays local.
  • lsd. A ls with better colours, filtering and sorting.
  • ripgrep. Wickedly fast (parallel) recursive grep.
  • fd. A fast parallel find.
  • zoxide. A cd command with shortcuts
  • hyperfine. Benchmarking tool for CLI commands.
  • glow. Markdown rendering on terminal.
  • chafa Powerful image display for terminals. It also produces high-quality ASCII art from images as a side effect of supporting terminals with no graphical capabilities.
  • entr File watcher. Run arbitrary command when a file changes.
  • Others (The usual suspects): jq, dasel, git, gh, coreutils, gzip, openssl, rsync, wget, pandoc, exiftool, aws-cli, aws-cdk, tmux

Ricing

  • Current Theme: Tokyo Night Storm
    Used in terminals, editors.
  • vivid LS_COLORS generator. Combine it with lsd config (color.yaml) to cover the full colorising of the listing command.
  • starship Prompt customisation. Use sparingly to avoid prompt lag.

About this repo

I use the bare repo technique described in a few posts online. Dotfiles and configs are tucked away in a bare repo so normal git tools never notice it.

Cloning the repo

# 1 · Clone it as a bare repo
git clone --bare https://github.com/gittycat/dotfiles.git $HOME/.dotfiles

# 2 · Handy alias. I only define it when working on the repo
alias dot='git --git-dir=$HOME/.dotfiles --work-tree=$HOME'

# 3 · Hide all files not in the repo
dot config --local status.showUntrackedFiles no

# 4 · Check out tracked files into $HOME
dot checkout

Updating the repo

# 1. Add a new config file
dot add .config/sample.conf
dot commit -m "Added sample.conf"
dot push

About

My macOS dev environment config files

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages