mirror of
https://github.com/ivuorinen/dotfiles.git
synced 2026-03-19 07:06:33 +00:00
fix: guard success messages on command exit status
- Source x-path instead of capturing empty stdout via command substitution - Validate --dry-run argument in cleanup script, reject unknown flags - Gate success messages on preceding command's exit status with && - Applies to dfm (fmt, reset_nvim, shfmt) and install scripts (fonts, gh-extensions, python-packages, shellspec, z)
This commit is contained in:
@@ -12,7 +12,15 @@ fi
|
||||
# shellcheck source=shared.sh
|
||||
source "$DOTFILES/config/shared.sh"
|
||||
|
||||
DRY_RUN="${1:-}"
|
||||
DRY_RUN=""
|
||||
if [[ $# -gt 0 ]]; then
|
||||
if [[ "$1" = "--dry-run" ]]; then
|
||||
DRY_RUN="--dry-run"
|
||||
else
|
||||
echo "Usage: $0 [--dry-run]" >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
remove_dir()
|
||||
{
|
||||
|
||||
@@ -51,8 +51,9 @@ install_fonts()
|
||||
{
|
||||
msgr run "Starting to install NerdFonts..."
|
||||
# shellcheck disable=SC2048,SC2086
|
||||
./install.sh -q -s ${fonts[*]}
|
||||
msgr run_done "Done"
|
||||
# shellcheck disable=SC2086
|
||||
./install.sh -q -s ${fonts[*]} \
|
||||
&& msgr run_done "Done"
|
||||
return 0
|
||||
}
|
||||
|
||||
|
||||
@@ -51,8 +51,8 @@ install_extensions()
|
||||
# Install all GitHub CLI extensions
|
||||
main()
|
||||
{
|
||||
install_extensions
|
||||
msgr run_done "Done"
|
||||
install_extensions \
|
||||
&& msgr run_done "Done"
|
||||
return 0
|
||||
}
|
||||
|
||||
|
||||
@@ -35,5 +35,5 @@ install_libraries()
|
||||
return 0
|
||||
}
|
||||
|
||||
install_libraries
|
||||
msgr yay "Python library installations complete"
|
||||
install_libraries \
|
||||
&& msgr yay "Python library installations complete"
|
||||
|
||||
@@ -23,8 +23,8 @@ install_shellspec()
|
||||
fi
|
||||
|
||||
msgr run "Running make install..."
|
||||
make -C "$SHELLSPEC_CACHE" install PREFIX="$HOME/.local"
|
||||
msgr run_done "shellspec $version installed to $HOME/.local/bin/shellspec"
|
||||
make -C "$SHELLSPEC_CACHE" install PREFIX="$HOME/.local" \
|
||||
&& msgr run_done "shellspec $version installed to $HOME/.local/bin/shellspec"
|
||||
return 0
|
||||
}
|
||||
|
||||
|
||||
@@ -15,8 +15,8 @@ clone_z_repo()
|
||||
local bin_path=$2
|
||||
|
||||
if [[ ! -d "$bin_path" ]]; then
|
||||
git clone "$git_path" "$bin_path"
|
||||
msgr run_done "z installed at $bin_path"
|
||||
git clone "$git_path" "$bin_path" \
|
||||
&& msgr run_done "z installed at $bin_path"
|
||||
else
|
||||
msgr ok "z ($bin_path/) already installed"
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user