Update chezmoi.zsh to have an auto update feature
This commit is contained in:
parent
60f67fa75f
commit
d8e065dc2f
1 changed files with 31 additions and 0 deletions
|
@ -1,3 +1,4 @@
|
|||
# completion
|
||||
(
|
||||
set -euo pipefail
|
||||
|
||||
|
@ -16,3 +17,33 @@
|
|||
chezmoi completion zsh > "$COMPLETION_FILE"
|
||||
chmod +x "$COMPLETION_FILE"
|
||||
)
|
||||
|
||||
# auto update
|
||||
(
|
||||
set -euo pipefail
|
||||
|
||||
# has the chezmoi repo been pulled in the last 24 hours?
|
||||
if [ "$(date +%s -r "$(chezmoi git rev-parse -- --show-toplevel)/.git/FETCH_HEAD")" -gt $((EPOCHSECONDS-86400)) ]; then
|
||||
exit 0
|
||||
fi
|
||||
|
||||
chezmoi git pull -- --rebase
|
||||
chezmoi diff
|
||||
|
||||
while true; do
|
||||
read -r 'APPLY?apply? [y/N] '
|
||||
|
||||
case "${APPLY:-}" in
|
||||
'y'|'Y'|'YES'|'yes'|'Yes')
|
||||
echo 'applying changes'
|
||||
chezmoi apply
|
||||
exit 0
|
||||
;;
|
||||
|
||||
'n'|'N'|'NO'|'no'|'No'|'')
|
||||
echo 'not applying changes'
|
||||
exit 0
|
||||
;;
|
||||
esac
|
||||
done
|
||||
)
|
||||
|
|
Loading…
Reference in a new issue