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
|
set -euo pipefail
|
||||||
|
|
||||||
|
@ -16,3 +17,33 @@
|
||||||
chezmoi completion zsh > "$COMPLETION_FILE"
|
chezmoi completion zsh > "$COMPLETION_FILE"
|
||||||
chmod +x "$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