install.fairie/home/.chezmoiscripts/universal/run_onchange_after_14-warp.tmpl
Brian Zalewski 5c0c00ad8a Update 8 files
- /home/.chezmoiscripts/universal/run_onchange_after_81-kubesphere.yml.tmpl
- /home/.chezmoiscripts/universal/run_onchange_after_80-bash-completions.tmpl
- /home/.chezmoiscripts/universal/run_onchange_before_11-install-docker.tmpl
- /home/.chezmoiscripts/universal/run_onchange_after_14-warp.tmpl
- /home/.chezmoiscripts/debian/run_onchange_before_14-warp.tmpl
- /home/.chezmoiscripts/ubuntu/run_onchange_before_14-warp.tmpl
- /home/.chezmoidata.yaml
- /software.yml
2023-02-05 08:09:07 +00:00

42 lines
1.7 KiB
Cheetah

{{- if (ne .host.distro.family "windows") }}
#!/usr/bin/env bash
### Configure CloudFlare WARP (if not WSL and warp-cli is installed)
if [[ ! "$(grep Microsoft /proc/version)" ]] && command -v warp-cli > /dev/null; then
### Register CloudFlare WARP
if warp-cli --accept-tos status | grep 'Registration missing' > /dev/null; then
logg info 'Registering CloudFlare WARP'
warp-cli --accept-tos register
else
logg info 'Already registered with CloudFlare WARP'
fi
### Connect CloudFlare WARP
if warp-cli --accept-tos status | grep 'Disconnected' > /dev/null; then
logg info 'Connecting to CloudFlare WARP'
warp-cli --accept-tos connect
else
logg info 'Already connected to CloudFlare WARP'
fi
### Enable Always-On mode
logg info 'Enabling always-on mode'
warp-cli --accept-tos enable-always-on
### Enable Family Mode
# logg info 'Enabling family-mode'
# warp-cli --accept-tos set-families-mode full
### Enable WARP+DNS mode
# logg info 'Enabling WARP+DNS mode'
# warp-cli set-mode warp+doh
# TODO
{{ if and (stat (joinPath .host.home ".config" "age" "chezmoi.txt")) (stat (joinPath (.chezmoi.sourceDir ".chezmoitemplates" "secrets" "key-cloudflare-teams-client-id"))) (stat (joinPath (.chezmoi.sourceDir ".chezmoitemplates" "secrets" "key-cloudflare-teams-client-secret"))) -}}
### Enroll with CloudFlare Teams
logg info 'Enrolling with CloudFlare Teams'
warp-cli teams-enroll '{{- includeTemplate "secrets/key-cloudflare-teams-client-id" | decrypt -}}' '{{- includeTemplate "secrets/key-cloudflare-teams-client-secret" | decrypt -}}'
{{- end }}
fi
{{ end -}}