Skip to content

My dotfiles for all the tools I use across laptops. Feel free to steal and use as you please.

License

Notifications You must be signed in to change notification settings

KingMichaelPark/dotfiles

Repository files navigation

My Dotfiles

image

Github tag (latest by SemVer) Mastodon Follow

Everything is managed via gnu stow. The tl;dr is that relative to the dotfiles directory (that you should clone to ~/.dotfiles it will symlink the directory you name up one directory. Different python, node, terraform versions are all managed with mise

For example, zsh/ contains .zshrc so to deploy your zsh folder using stow you simply run

stow zsh

and for neovim

stow nvim

Creates the symlinks all the way to ~/.config/nvim/*

Essential Software

This is a list of software I use all the time and wouldn't be as productive without it, feel free to pick and choose what you like.

Install via Brew

brew install \
    age \
    argon2 \
    bat \
    bottom \
    duckdb \
    entr \
    eza \
    fd \
    fzf \
    git-delta \
    jq \
    lazygit \
    mise \
    neovim \
    pandoc \
    restic \
    ripgrep \
    sops \
    stow \
    stylua \
    uv \
    yazi \
    zoxide

brew install --cask wezterm

Descriptions

  • age: Simple, modern, secure file encryption
  • argon2: Password hashing library and CLI utility
  • bat: Clone of cat(1) with syntax highlighting and Git integration
  • bottom: Yet another cross-platform graphical process/system monitor
  • duckdb: Embeddable SQL OLAP Database Management System
  • entr: Run arbitrary commands when files change
  • eza: Modern, maintained replacement for ls
  • fd: Simple, fast and user-friendly alternative to find
  • fzf: Command-line fuzzy finder written in Go
  • git-delta: Syntax-highlighting pager for git and diff output
  • jq: Lightweight and flexible command-line JSON processor
  • lazygit: Simple terminal UI for git commands
  • mise: Polyglot runtime manager (asdf rust clone)
  • neovim: Ambitious Vim-fork focused on extensibility and agility
  • pandoc: Swiss-army knife of markup format conversion
  • restic: Back-up utility with snapshots and backups
  • ripgrep: Search tool like grep and The Silver Searcher
  • sops: Editor of encrypted files
  • stow: Organize software neatly under a single directory tree (e.g. /usr/local)
  • stylua: Opinionated Lua code formatter
  • uv: Extremely fast Python package installer and resolver, written in Rust
  • wezterm: The best terminal & multiplexer written in Rust
  • yazi: Tiny, lightning fast, feature-packed file manager
  • zoxide: Shell extension to navigate your filesystem faster

Different Modules

  • Online via Restic + Backblaze
  • Offline via Rsync + Age
  • Nerd Font Patched version of Iosevka and Pragmata Pro fusion called Mikevka (original... I know)

FZF

Auto complete for the shell settings for fzf

My Neovim config with all plugins and settings

Simple tweaks for the starship.rs theme for zsh

Mise

Using Mise can be done seeing mise --help

To set your project to automatically activate a virtualenv when switching to it create a .mise.toml in your project directory and add.

python = {version="latest", virtualenv=".venv"}

Tmux settings

Wezterm terminal

Questions

If you have any questions send me a message at Mastodon

About

My dotfiles for all the tools I use across laptops. Feel free to steal and use as you please.

Resources

License

Stars

Watchers

Forks

Packages

No packages published