# .dotfiles Personal dotfiles for Fedora KDE, managed with GNU Stow. > For automatisk opsætning af hele systemet inkl. pakker, fonte og ikon-tema — se [ansible-repo'et](https://git.itedb.dk/glennigen/ansible). ## Index 1. [Repo structure](#repo-structure) 2. [Installation](#installation) - [Clone & stow](#clone--stow) - [Set fish as login shell](#set-fish-as-login-shell) 3. [What's included](#whats-included) - [Fish shell](#fish-shell) - [Kitty terminal](#kitty-terminal) - [PipeWire](#pipewire) - [VSCodium](#vscodium) - [OBS Studio](#obs-studio) - [Scripts](#scripts) --- ## Repo structure ``` .dotfiles/ └── stow_me/ ← GNU Stow package (symlinked to ~) ├── .config/ │ ├── fish/ ← Fish shell config, functions & completions │ ├── kitty/ ← Kitty terminal config (Catppuccin Macchiato) │ ├── pipewire/ ← PipeWire audio (sinks loopback) │ └── VSCodium/ ← VSCodium user settings ├── obs-settings/ ← OBS Studio profile & scene settings └── scripts/ ← Shell scripts (app_close_and_restart, shutdown) ``` --- ## Installation ### Clone & stow ```fish git clone https://git.itedb.dk/glennigen/.dotfiles.git ~/.dotfiles cd ~/.dotfiles stow -d stow_me/ -t ~ . ``` - `-d stow_me/` sets the stow directory, `-t ~` sets the target — nothing outside `stow_me/` is touched. - Preview changes first with `stow -n -d stow_me/ -t ~ .`. - Resolve any conflicting files before running stow (move or delete them). ### Set fish as login shell ```fish chsh -s (which fish) $USER ``` --- ## What's included ### Fish shell `stow_me/.config/fish/` | File/Dir | Purpose | |---|---| | `config.fish` | Runs `fastfetch` on interactive sessions | | `fish_variables` | Fish universal variables | | `conf.d/fish_frozen_key_bindings.fish` | Key binding overrides | | `conf.d/fish_frozen_theme.fish` | Theme config | | `completions/jotta-cli.fish` | Tab completions for jotta-cli | **Functions:** | Function | Description | |---|---| | `ll` | `lsd -Alh --group-dirs first` | | `sll` | `sudo lsd -Alh --group-dirs first` | | `dup` | `sudo dnf upgrade` | | `sudo!!` | Re-run last command with sudo | | `zup` | `sudo zypper ref && sudo zypper dup` (openSUSE) | ### Kitty terminal `stow_me/.config/kitty/` - `kitty.conf` — main config (font: JetBrainsMono Nerd Font Mono, theme: Catppuccin Macchiato) - `Catppuccin-Macchiato.conf` — color theme - `current-theme.conf` — active theme symlink/include ### PipeWire `stow_me/.config/pipewire/pipewire.conf.d/sinks-loopback.conf` Custom loopback sink configuration. ### VSCodium `stow_me/.config/VSCodium/User/settings.json` User settings for VSCodium. ### OBS Studio `stow_me/obs-settings/` OBS settings are split into two directories that mirror OBS's config layout: - `Profile-files/GlennIgen/` — encoder and recording settings - `Settings-files/` — global settings, scenes, plugin configs (websocket, rtmp-services, plugin manager) ### Scripts `stow_me/scripts/` | Script | Description | |---|---| | `app_close_and_restart.sh` | Close an app and restart it | | `app_close_and_shutdown.sh` | Close an app and shut down the system |