Update README.md

This commit is contained in:
2026-06-15 11:03:17 +02:00
parent bb3d06a857
commit e314363e8b
+60 -49
View File
@@ -7,82 +7,93 @@ A deliberately minimal dotfile configuration.
Over the years I have grown tired of tweaking config files for every component of my desktop. Over the years I have grown tired of tweaking config files for every component of my desktop.
This repository contains only the essentials. This repository contains only the essentials.
Start with a minimal Debian 13 (Trixie) install — SSH server and system essentials only, no desktop environment. Start with a minimal **Void Linux** install using the XFCE4 base image.
## What's Inside ## What's Inside
. ```
├── config/ .
│ ├── alacritty/ # Alacritty terminal configuration ├── config/
│ ├── fish/ # Fish shell configuration │ ├── alacritty/ # Alacritty terminal configuration
│ ├── gitu/ # Git TUI settings │ ├── fish/ # Fish shell configuration
│ ├── kanata/ # Keyboard remapping │ ├── gitu/ # Git TUI settings
│ ├── lf/ # Terminal file manager │ ├── kanata/ # Keyboard remapping
│ ├── nvim/ # Neovim setup │ ├── lf/ # Terminal file manager
── tmux/ # Tmux configuration ── nvim/ # Neovim setup
── scripts/ ── tmux/ # Tmux configuration
│ ├── setup_docker # Docker install recipe ├── scripts/
│ ├── setup_golang # Golang + go tools install recipe │ ├── install_odin # Odin compiler install recipe
── setup_kanata # Kanata + systemd service setup ── install_php # PHP install recipe
├── bootstrap.sh # Fresh system setup (run once, before install.sh) ├── install_raylib_deps # Raylib dependencies
└── install.sh # Dotfile symlinks and package installation └── install_theme # XFCE4 theme setup
└── install.sh # Dotfile symlinks and package installation
```
## Prerequisites
## Desktop Bootstrap Before running `install.sh`, take care of the following manually:
The bootstrap script to set up DMS essentiallys, networking, audio, Helium, and GTK theming: - `sudo xbps-install -Su` — sync and update
- Set up SSH keys
./bootstrap.sh - Clone this repo
- Install a Nerd Font
Once complete, restore personal files from backup drive (SSH keys, documents, projects, fonts, wallpapers), then continue with the steps below.
## Software Installation ## Software Installation
This will install, setup config files for my personal choices of software to use on top of the desktop Installs packages and creates config symlinks on top of the XFCE4 base image.
### Install Options ### Install Options
# Interactive mode (with confirmations) ```sh
./install.sh # Interactive mode (prompts for confirmation at each step)
./install.sh
# Only create symlinks # Only create symlinks
./install.sh -l ./install.sh -l
# Only install packages # Only install packages
./install.sh -i ./install.sh -i
```
## What Gets Installed ## What Gets Installed
The script installs essential development tools via `apt`: The script enables `void-repo-nonfree` (and `void-repo-multilib-nonfree` on x86_64), then installs
packages via `xbps-install`:
- **CLI Tools**: `wget`, `curl`, `fzf`, `fd-find`, `ripgrep`, `tree`, `btop`, `direnv`, `bat`, `jq`, `lf`, `unzip` - **CLI Tools**: `wget`, `curl`, `git`, `unzip`, `fzf`, `fd`, `ripgrep`, `bat`, `direnv`, `tree`, `jq`, `lf`, `rsync`, `pfetch`
- **Development**: `build-essential`, `make`, `bear`, `valgrind` - **Development**: `base-devel`, `make`, `valgrind`, `tree-sitter-cli`, `go`
- **Shell**: `fish` - **Shell**: `fish-shell`
- **Terminal**: `alacritty` - **Terminal**: `alacritty`
- **Multiplexer**: `tmux` - **Keyboard**: `kanata`
- **Other**: `ca-certificates`, `gnupg`, `libfuse2` - **Desktop**: `polybar`, `rofi`, `xdotool`, `wmctrl`
- **Fonts**: `noto-fonts-ttf`, `noto-fonts-emoji`
- **Other**: `ca-certificates`, `gnupg`, `fuse`, `gitu`
## Symlinks Created ## Symlinks Created
- `~/.tmux.conf``./config/tmux/.tmux.conf` | Symlink | Target |
- `~/.config/alacritty``./config/alacritty` |---|---|
- `~/.config/fish` `./config/fish` | `~/.config/alacritty` | `./config/alacritty` |
- `~/.config/kanata` `./config/kanata` | `~/.config/fish` | `./config/fish` |
- `~/.config/nvim` `./config/nvim` | `~/.config/kanata` | `./config/kanata` |
- `~/.config/gitu` `./config/gitu` | `~/.config/nvim` | `./config/nvim` |
- `~/.config/lf` `./config/lf` | `~/.config/gitu` | `./config/gitu` |
| `~/.config/lf` | `./config/lf` |
## Scripts ## Scripts
Self-contained recipes for tooling that goes beyond the core install. Each script can be run independently as needed: Self-contained recipes for tooling that goes beyond the core install. Each can be run independently:
./scripts/setup_docker ```sh
./scripts/setup_golang ./scripts/install_odin
./scripts/setup_kanata ./scripts/install_php
./scripts/install_raylib_deps
./scripts/install_theme
```
These are not run automatically by `install.sh` — they are opt-in. These are not run automatically by `install.sh` — they are opt-in.
---
This setup prioritizes **stability** and **simplicity** over customization. DankMaterialShell with niri handles the heavy lifting for tiling and aesthetics. This setup prioritises **stability** and **simplicity** over customisation. Void Linux + XFCE4 + X11
provides a fast, predictable base with minimal moving parts.