From c28b5b6d4a6ecfed23dd1cd3949eb38536cd2e37 Mon Sep 17 00:00:00 2001 From: achazal Date: Mon, 20 Apr 2026 12:20:42 +0200 Subject: [PATCH] feat(readme): init readme to help install --- README.md | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..ac21630 --- /dev/null +++ b/README.md @@ -0,0 +1,42 @@ +# Dotfiles + +## Install + +```bash +git clone --recurse-submodules +cd new-dotfiles +./install.sh +``` + +The install script detects your package manager (pacman/apt/dnf), installs dependencies, symlinks configs, and sets up `/etc/zsh/zshenv`. + +See [DEPENDENCIES.md](DEPENDENCIES.md) for the full package list per distro. + +## Structure + +``` +config/ → user configs, each subfolder is symlinked to ~/.config/ +system/ → system-wide configs, installed with sudo +install.sh → package installation + symlinks + system config +``` + +## Adding a new config + +1. Copy or create the config directory under `config/`: + ```bash + cp -r ~/.config/foo config/foo + ``` +2. The install script's `for` loop will automatically symlink `config/foo` to `~/.config/foo` on next run. + +## Adding system-level config + +1. Place the file under `system/` with a meaningful path or name. +2. Add an `install` line to the system config section of `install.sh`: + ```bash + sudo install -Dm644 "$DOTFILES/system/foo.conf" /etc/foo.conf + ``` + +## Adding dependencies + +1. Add the package to the appropriate distro block in `install.sh`. +2. Update the table in [DEPENDENCIES.md](DEPENDENCIES.md).