dotfiles

July 9, 2026 ยท View on GitHub

total lines GitHub code size in bytes GitHub repo size Created

GitHub commit week activity GitHub commit month activity GitHub commit year activity

FOSSA Status FOSSA Status

Overview

My home dotfiles

overview

Supported OS

GUI

  • NixOS (recommend)
  • Arch Linux (You must install various GUI apps yourself)

CLI

  • NixOS
  • Arch Linux
  • Ubuntu
  • Fedora

Install (NixOS)

  1. Download

    git clone https://github.com/yutkat/dotfiles.git
    cd dotfiles
    
  2. Edit Configuration

    vi flake.nix
    # myHosts = {
    
  3. Install nix (+flake +home-manager)

    ./install.sh
    
  4. Setup (installing tools and linking to dotfiles)

    sudo nixos-rebuild switch --flake .#<hostname>
    
  5. zsh plugin install

    exec zsh
    
  6. mise upgrade-all

    mise upgrade
    
  7. neovim plugin install

    vi --headless -c 'Lazy! sync' -c 'qall'
    
  8. Enjoy!

Install (Other OS)

  1. Download

    git clone https://github.com/yutkat/dotfiles.git
    cd dotfiles
    
  2. Edit Configuration

    vi flake.nix
    # myHosts = {
    
  3. Install nix (+flake +home-manager)

    ./install.sh
    
  4. Setup (installing tools)

    # Default user and hostname
    home-manager switch --flake .#<hostname>
    
    # If you override NIX_USERNAME
    NIX_USERNAME=your_username home-manager switch --impure --flake .#<hostname>
    
  5. Link dotfiles (managed by [dotfiles] in .config/mise/config.toml)

    # First run: ~/.config/mise is not linked yet, so point mise at the repo config
    mise trust .config/mise/config.toml
    MISE_GLOBAL_CONFIG_FILE="$PWD/.config/mise/config.toml" mise dotfiles apply
    
    # After the first run
    mise dotfiles apply
    

    Link sources are relative to the repo's .config/mise/, so any clone location works without extra configuration.

  6. zsh plugin install

    exec zsh
    
  7. mise upgrade-all

    mise upgrade
    
  8. neovim plugin install

    vi --headless -c 'Lazy! sync' -c 'qall'
    

Temporary Install

If you do not want to dirty your home directory

  1. Setup the container

    docker run -it --rm archlinux:latest /bin/bash
    
  2. Setup the environment

    pacman -Sy --noconfirm sudo git
    useradd -m -s /bin/bash test
    echo 'test ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
    su - test
    
  3. Download

    git clone https://github.com/yutkat/dotfiles.git
    cd dotfiles
    
  4. Install

    ./install.sh --single
     exec bash
    
  5. Setup (installing tools and linking to dotfiles)

    home-manager switch --flake .#test
    
  6. zsh plugin install

    exec zsh
    
  7. mise upgrade-all

    mise upgrade
    
  8. neovim plugin install

    vi --headless -c 'Lazy! sync' -c 'qall'
    

Components

  • zsh
  • neovim
  • wezterm
  • (optional) Hyprland

Usage

Frequently used shortcuts

wezterm

keyaction
Alt-h/j/k/lswitch window
Alt-jclose window
Alt-kcreate window
S-Up/Down/Left/Rightswitch pane

Hyprland/i3/sway

keyaction
Mod-h/j/k/lswitch window
Mod-S-h/j/k/lmove window
Mod-C-S-h/j/k/lmove workspace

Insight

Activity

Performance Stats of yutkat/dotfiles - Last 28 days

Changes

Lines of Code Changes of yutkat/dotfiles

Star History

Star History of yutkat/dotfiles