--no-pager causes journalctl to disable ANSI colors. Setting SYSTEMD_PAGER=cat
achieves the same effect (no interactive pager) while preserving color output.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
systemctl and journalctl use their own color detection (SYSTEMD_COLORS env
var) independently of the terminal — child processes don't always inherit
it. Force colors for status and logs subcommands of update and backup.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The update and backup services ran without STACKS_DIR since systemd
doesn't source ~/.env or ~/.zshrc. Capture the value at install time
and write it as Environment= in the generated unit files.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Makes stacks work like arty — discovers stacks in the current directory.
Explicit STACKS_DIR env var still takes precedence.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
bin/setup:
- Fix Step 1 of 6 → Step 1 of 7
- exec zsh -l </dev/tty to avoid inheriting stale curl pipe on stdin
(without /dev/tty the curl|sh pipe bytes re-run the script as zsh)
- Fall back to printing exec zsh hint when /dev/tty is unavailable
- Check completion file existence instead of trusting arty exit code
bin/arty:
- Fix cmd_completion returning exit 1 for zsh: last statement was
[[ "$shell" == "bash" ]] which is false, changed to if/fi
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
The script already sets zsh as default shell via chsh. Now it also
hands off to a zsh login shell immediately at the end so the user
doesn't need to run exec zsh manually.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add ensure_zsh step (step 3 of 7): installs zsh via apt/brew if
missing, sets it as default shell via chsh
- Replace manual completion write with arty completion zsh --install
- Extend PATH with ~/.local/bin and ~/go/bin before completion step so
yq installed by arty deps (in a subshell) is found
- Renumber all steps 1-7
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Drop .sh extension — scripts are now invocable directly as arty and stacks.
Remove redundant aliases from .zshrc since ~/bin is already in PATH.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>