Skip to content

h - #6

Open
RayaanGrewal wants to merge 1 commit into
CoreyMSchafer:masterfrom
RayaanGrewal:patch-1
Open

h#6
RayaanGrewal wants to merge 1 commit into
CoreyMSchafer:masterfrom
RayaanGrewal:patch-1

Conversation

@RayaanGrewal

Copy link
Copy Markdown

g

h
g
ur-grue pushed a commit to ur-grue/dotfiles that referenced this pull request Jul 12, 2026
…udit)

An independent audit of the whole call graph surfaced one new invisible hang
plus several sharp edges. Addressed, most-severe first:

- HANG (CoreyMSchafer#1): init.lua called vim.fn.getchar() when the lazy.nvim bootstrap
  clone fails. run_once_after_40 runs `nvim --headless +Lazy! sync` inside
  chezmoi (stdout/err to log, stdin = inherited TTY), so a transient GitHub
  hiccup froze the whole setup at "Dotfiles anwenden…". Now getchar only fires
  when a UI is attached, and run_once_40 adds `</dev/null` (defense-in-depth).

- HANG (CoreyMSchafer#2): the `wait` after dashboard() had no timeout, negating the
  dashboard's own DASH_TIMEOUT — any stuck job hung setup.sh forever. Now
  lingering jobs are killed if the dashboard returns before all sentinels.

- HANG (CoreyMSchafer#3): with no sudo, a pkg-cask (citrix/teams/tailscale) prompted for a
  password invisibly under the dashboard. Now _HAVE_SUDO gates install_packages
  to skip admin-casks cleanly instead of blocking.

- FALSE ✔ (CoreyMSchafer#4): `mise install` with no config exits 0 installing nothing, so
  step 6b showed "✔ Runtimes" falsely. Now gated on mise.toml presence AND
  `mise ls --installed` actually listing runtimes.

- EXIT CODE (CoreyMSchafer#6): the last line `[ -s fail ] && …` made a fully successful run
  exit 1, breaking `./setup.sh && …`. Now an if-block + explicit `exit 0`.

- BASH 3.2 (CoreyMSchafer#5): `"${BREWS[@]}"`/`"${CASKS[@]}"` in --check mode crash on an
  empty array under set -u. Guarded with `${arr[@]+"${arr[@]}"}`.

- git identity (CoreyMSchafer#8): blank name/email (enter-through) now surfaces a NOCH OFFEN
  line instead of silently writing an empty ~/.gitconfig.

- UX (CoreyMSchafer#7): step 6 notes it silently prebuilds runtimes & nvim plugins so the
  multi-minute pause doesn't read as a freeze.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TDFKUZE7nd8TYEYw7ddTzZ
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant