install.fairie/home/.chezmoiscripts/_universal/run_onchange_before_08-install-zx.tmpl
2023-01-24 23:36:59 -05:00

53 lines
1.3 KiB
Cheetah

{{- if (ne .host.distro.family "windows") -}}
#!/usr/bin/env bash
{{ includeTemplate "universal/profile-before" }}
{{ includeTemplate "universal/logg-before" }}
### Ensure node is installed
if ! command -v node > /dev/null; then
if command -v brew; then
logg 'Installing `node` via Homebrew'
brew install node
else
logg '`brew` is unavailable. Cannot use it to perform a system installation of node.'
fi
else
logg '`node` is available'
fi
### Ensure volta is installed
if ! command -v volta > /dev/null; then
if command -v brew > /dev/null; then
logg 'Installing `volta` via `brew`'
brew install volta
fi
if [ -z "$VOLTA_HOME" ]; then
volta setup
fi
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
else
logg warn 'Could not find `~/.bashrc` to source the results of `volta setup` from'
fi
export PATH="$VOLTA_HOME/bin:$PATH"
logg 'Installing `node` via `volta`'
volta install node@latest
else
if ! node --version > /dev/null; then
volta install node@latest
fi
fi
### Ensure zx is installed
if ! command -v zx > /dev/null; then
if command -v volta > /dev/null; then
logg 'Installing `zx` via `volta`'
volta install zx
else
logg '`volta` is missing'
fi
else
logg '`zx` is already installed'
fi
{{ end -}}