aboutsummaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-05-17 14:08:18 -0500
committerCraig Jennings <c@cjennings.net>2026-05-17 14:08:18 -0500
commitdae765970268dcbea96060de63cae06c3e63bea6 (patch)
treeeba6d9d2225b8f17fd2d4fec00251eb0713cfd57 /README.md
parent61bf3e7463c2e7f40874e718911f2bd6b86b859e (diff)
downloadarchsetup-dae765970268dcbea96060de63cae06c3e63bea6.tar.gz
archsetup-dae765970268dcbea96060de63cae06c3e63bea6.zip
refactor(scripts/post-install): consolidate gitrepos.sh and harden the script
gitrepos.sh did the same `~/.dotfiles` / `~/.emacs.d` remote swap that post-install.sh already had, plus a `git pull --set-upstream origin main` follow-on that post-install was missing. I folded the pull into the post-install remote-rewrite block and dropped gitrepos.sh. While in the file, I also: - Quoted every variable (`"$logfile"`, `"$HOME"` paths, `"$(whoami)"`). - Sent the remote-rewrite block to the log file like the other blocks do (was leaking to stdout). - Made the remote-rewrite idempotent. A re-run used to break the `cd && remote remove && remote add` chain because remove fails when origin is already the desired URL. The loop now uses `git -C "$dir" remote set-url` when origin exists and `remote add` when it does not. - Pre-created `~/sync`, `~/pictures`, `~/code`, `~/projects` so the clones don't fail on missing parent dirs. - Wrapped each `git clone` in a `clone_if_missing` helper so a re-run skips destinations that already exist instead of erroring out. README.md picks up the gitrepos.sh removal in the forking note.
Diffstat (limited to 'README.md')
-rw-r--r--README.md2
1 files changed, 1 insertions, 1 deletions
diff --git a/README.md b/README.md
index 4a25f89..80f80cb 100644
--- a/README.md
+++ b/README.md
@@ -103,7 +103,7 @@ Every field has a default. Set only what you want to change. The config covers:
- `DESKTOP_ENV`: `dwm`, `hyprland`, or `none`
- `DWM_REPO`, `DMENU_REPO`, `ST_REPO`, `SLOCK_REPO`, `DOTEMACS_REPO`, `ARCHSETUP_REPO`: Git URLs for the suckless tools, the Emacs config, and this repo
-> **Forking note:** The upstream defaults point at the original author's personal Git server and assume a particular username. If you're adapting this for yourself, override the `*_REPO` variables in `archsetup.conf` to point at your own forks. Also review `scripts/post-install.sh` and `scripts/gitrepos.sh` — they clone personal repositories you won't want. The `archsetup` header, `init`'s temporary root password, and a handful of dotfiles (`.gitconfig`, `.ssh/config`, etc.) also carry author-specific values.
+> **Forking note:** The upstream defaults point at the original author's personal Git server and assume a particular username. If you're adapting this for yourself, override the `*_REPO` variables in `archsetup.conf` to point at your own forks. Also review `scripts/post-install.sh` — it clones personal repositories you won't want. The `archsetup` header, `init`'s temporary root password, and a handful of dotfiles (`.gitconfig`, `.ssh/config`, etc.) also carry author-specific values.
## Dotfile Management