This commit is contained in:
jay 2023-03-04 18:35:16 +08:00
parent ce24cd5e38
commit 84e3c9d89a
3 changed files with 43 additions and 8 deletions

View File

@ -2,30 +2,30 @@
{{- if hasKey . "email" -}} {{- if hasKey . "email" -}}
{{- $email = .email -}} {{- $email = .email -}}
{{- else -}} {{- else -}}
{{- $email = promptString "email" -}} {{- $email = promptStringOnce . "email" "email address" -}}
{{ end }} {{ end }}
{{- $gitUser := "" -}} {{- $gitUser := "" -}}
{{- if hasKey . "gitUser" -}} {{- if hasKey . "gitUser" -}}
{{- $gitUser = .gitUser -}} {{- $gitUser = .gitUser -}}
{{- else -}} {{- else -}}
{{- $gitUser = promptString "gitUser" -}} {{- $gitUser = promptStringOnce . "gitUser" "git username" -}}
{{- end -}} {{- end -}}
{{- $jsLinter := promptString "jsLinter" "standard" -}} {{- $jsLinter := promptStringOnce . "jsLinter" "js linter" "standard" -}}
{{- if eq $jsLinter "" -}} {{- if eq $jsLinter "" -}}
{{- $jsLinter = "standard" -}} {{- $jsLinter = "standard" -}}
{{- end -}} {{- end -}}
{{- $jsFixer := promptString "jsFixer" "standard" -}} {{- $jsFixer := promptStringOnce . "jsFixer" "js fixer" "standard" -}}
{{- if eq $jsFixer "" -}} {{- if eq $jsFixer "" -}}
{{- $jsFixer = "standard" -}} {{- $jsFixer = "standard" -}}
{{- end -}} {{- end -}}
{{- $installGo := promptBool "installGo" true -}} {{- $installGo := promptBoolOnce . "installGo" "install golang bin" true -}}
{{- $installNode := promptBool "installNode" true -}} {{- $installNode := promptBoolOnce . "installNode" "install nodejs bin" true -}}
{{- $installRust := promptBool "installRust" true -}} {{- $installRust := promptBoolOnce . "installRust" "install rust bin" true -}}
{{- $enableTmux := promptBool "enableTmux" true -}} {{- $enableTmux := promptBoolOnce . "enableTmux" "install enable tmux autostart" true -}}
[data.shell] [data.shell]
tmux = {{ $enableTmux }} tmux = {{ $enableTmux }}

5
home/.chezmoiignore.tmpl Normal file
View File

@ -0,0 +1,5 @@
# ignore template
{{- if not .shell.tmux }}
.tmix.conf
{{- end }}

30
install.sh Executable file
View File

@ -0,0 +1,30 @@
#!/bin/sh
# -e: exit on error
# -u: exit on unset variables
set -eu
if ! chezmoi="$(command -v chezmoi)"; then
bin_dir="${HOME}/.local/bin"
chezmoi="${bin_dir}/chezmoi"
echo "Installing chezmoi to '${chezmoi}'" >&2
if command -v curl >/dev/null; then
chezmoi_install_script="$(curl -fsSL get.chezmoi.io)"
elif command -v wget >/dev/null; then
chezmoi_install_script="$(wget -qO- get.chezmoi.io)"
else
echo "To install chezmoi, you must have curl or wget installed." >&2
exit 1
fi
sh -c "${chezmoi_install_script}" -- -b "${bin_dir}"
unset chezmoi_install_script bin_dir
fi
# POSIX way to get script's dir: https://stackoverflow.com/a/29834779/12156188
script_dir="$(cd -P -- "$(dirname -- "$(command -v -- "$0")")" && pwd -P)"
set -- init --apply --source="${script_dir}"
echo "Running 'chezmoi $*'" >&2
# exec: replace current process with chezmoi
exec "$chezmoi" "$@"