Latest
This commit is contained in:
parent
54f924697d
commit
25b3f620c0
16 changed files with 320 additions and 265 deletions
12
docs/TODO.md
12
docs/TODO.md
|
@ -11,6 +11,17 @@ adobe-creative-cloud curl: (18) HTTP/2 stream 1 was reset
|
||||||
* export PATH="$HOME/.jenv/bin:$PATH"
|
* export PATH="$HOME/.jenv/bin:$PATH"
|
||||||
* eval "$(jenv init -)"
|
* eval "$(jenv init -)"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Create the $HOME/opt destination folder
|
||||||
|
mkdir -p ~/opt
|
||||||
|
# Download the AppImage inside it
|
||||||
|
wget -O ~/opt/Espanso.AppImage 'https://github.com/federico-terzi/espanso/releases/download/v2.1.8/Espanso-X11.AppImage'
|
||||||
|
# Make it executable
|
||||||
|
chmod u+x ~/opt/Espanso.AppImage
|
||||||
|
# Create the "espanso" command alias
|
||||||
|
sudo ~/opt/Espanso.AppImage env-path register
|
||||||
|
|
||||||
# TODOs
|
# TODOs
|
||||||
|
|
||||||
This page outlines various projects and tasks that we are currently working on. Creating a GitHub issue for each of these items would be overkill.
|
This page outlines various projects and tasks that we are currently working on. Creating a GitHub issue for each of these items would be overkill.
|
||||||
|
@ -21,6 +32,7 @@ This page outlines various projects and tasks that we are currently working on.
|
||||||
- Consider https://formulae.brew.sh/cask/parallels-client#default
|
- Consider https://formulae.brew.sh/cask/parallels-client#default
|
||||||
- https://github.com/tadamcz/updates.sh/blob/main/updates.sh (Homebrew download parallelism)
|
- https://github.com/tadamcz/updates.sh/blob/main/updates.sh (Homebrew download parallelism)
|
||||||
- Add Mamba
|
- Add Mamba
|
||||||
|
- Come up with some sensible defaults for https://espanso.org/
|
||||||
- https://docs.pkgx.sh/using-pkgx/shell-integration
|
- https://docs.pkgx.sh/using-pkgx/shell-integration
|
||||||
- https://containertoolbx.org/install/
|
- https://containertoolbx.org/install/
|
||||||
- https://github.com/todotxt/todo.txt-cli
|
- https://github.com/todotxt/todo.txt-cli
|
||||||
|
|
|
@ -38,15 +38,9 @@ if [ -d /Applications ] && [ -d /Library ] && [ -z "$NO_RESTART" ]; then
|
||||||
if [ ! -f "$HOME/.zshrc" ] || ! cat "$HOME/.zshrc" | grep '# TEMPORARY FOR INSTALL DOCTOR MACOS' > /dev/null; then
|
if [ ! -f "$HOME/.zshrc" ] || ! cat "$HOME/.zshrc" | grep '# TEMPORARY FOR INSTALL DOCTOR MACOS' > /dev/null; then
|
||||||
echo 'bash <(curl -sSL https://install.doctor/start) # TEMPORARY FOR INSTALL DOCTOR MACOS' >> "$HOME/.zshrc"
|
echo 'bash <(curl -sSL https://install.doctor/start) # TEMPORARY FOR INSTALL DOCTOR MACOS' >> "$HOME/.zshrc"
|
||||||
fi
|
fi
|
||||||
if command -v gtimeout > /dev/null; then
|
logg info 'Applying OS upgrades (if available)'
|
||||||
logg info 'Ensuring system software is upgraded (timing out after 50 minutes if system upgrade fails)'
|
sudo softwareupdate -i -a --agree-to-license --background || logg error 'Failed to trigger a system update via sudo softwareupdate -i -a --agree-to-license --background'
|
||||||
sudo gtimeout 3000 softwareupdate -i -a -R --agree-to-license || logg warn 'The system update command timed out after 50 minutes'
|
logg info 'If system updates are downloaded / installed, a reboot might be required.'
|
||||||
else
|
|
||||||
# If gtimeout is unavailable, then attempt system upgrade without a timeout (which usually works on fresh systems)
|
|
||||||
logg info 'Applying OS upgrades (if available)'
|
|
||||||
sudo softwareupdate -i -a -R --agree-to-license || logg error 'Failed to perform a system update via sudo softwareupdate -i -a -R'
|
|
||||||
fi
|
|
||||||
logg info 'If system updates were downloaded / installed, a reboot might be required.'
|
|
||||||
if command -v gsed > /dev/null; then
|
if command -v gsed > /dev/null; then
|
||||||
sudo gsed -i '/# TEMPORARY FOR INSTALL DOCTOR MACOS/d' "$HOME/.zshrc" || logg warn "Failed to remove kickstart script from .zshrc"
|
sudo gsed -i '/# TEMPORARY FOR INSTALL DOCTOR MACOS/d' "$HOME/.zshrc" || logg warn "Failed to remove kickstart script from .zshrc"
|
||||||
else
|
else
|
||||||
|
|
|
@ -112,7 +112,7 @@ if command -v postfix > /dev/null; then
|
||||||
### Re-generate the /etc/aliases.db file
|
### Re-generate the /etc/aliases.db file
|
||||||
if [ -f /etc/aliases ]; then
|
if [ -f /etc/aliases ]; then
|
||||||
logg info 'Ensuring proper permissions on the /etc/aliases file' && sudo chown $(stat -c "%U:%G" /etc/sudoers) /etc/aliases
|
logg info 'Ensuring proper permissions on the /etc/aliases file' && sudo chown $(stat -c "%U:%G" /etc/sudoers) /etc/aliases
|
||||||
logg info 'Generating Postfix aliases' && sudo postalias /etc/aliases
|
logg info 'Generating Postfix aliases' && sudo postalias /etc/aliases > /dev/null
|
||||||
else
|
else
|
||||||
logg warn '/etc/aliases is missing which is required for Postfix'
|
logg warn '/etc/aliases is missing which is required for Postfix'
|
||||||
fi
|
fi
|
||||||
|
@ -133,10 +133,10 @@ if command -v postfix > /dev/null; then
|
||||||
fi
|
fi
|
||||||
if ! sudo postfix status > /dev/null; then
|
if ! sudo postfix status > /dev/null; then
|
||||||
logg info 'Starting postfix'
|
logg info 'Starting postfix'
|
||||||
sudo postfix start
|
sudo postfix start > /dev/null
|
||||||
else
|
else
|
||||||
logg info 'Reloading postfix'
|
logg info 'Reloading postfix'
|
||||||
sudo postfix reload
|
sudo postfix reload > /dev/null
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
### Enable / restart postfix on Linux
|
### Enable / restart postfix on Linux
|
||||||
|
|
|
@ -16,8 +16,7 @@
|
||||||
if command -v docker > /dev/null; then
|
if command -v docker > /dev/null; then
|
||||||
DOCKERHUB_TOKEN="{{ if (stat (joinPath .chezmoi.sourceDir ".chezmoitemplates" "secrets" "DOCKERHUB_TOKEN")) }}{{- includeTemplate "secrets/DOCKERHUB_TOKEN" | decrypt | trim -}}{{ else }}{{- env "DOCKERHUB_TOKEN" -}}{{ end }}"
|
DOCKERHUB_TOKEN="{{ if (stat (joinPath .chezmoi.sourceDir ".chezmoitemplates" "secrets" "DOCKERHUB_TOKEN")) }}{{- includeTemplate "secrets/DOCKERHUB_TOKEN" | decrypt | trim -}}{{ else }}{{- env "DOCKERHUB_TOKEN" -}}{{ end }}"
|
||||||
DOCKERHUB_USER="{{ .user.docker.username }}"
|
DOCKERHUB_USER="{{ .user.docker.username }}"
|
||||||
logg info 'Headlessly authenticating with DockerHub registry'
|
logg info 'Headlessly authenticating with DockerHub registry' && echo "$DOCKERHUB_TOKEN" | docker login -u "$DOCKERHUB_USER" --password-stdin > /dev/null && logg success 'Successfully authenticated with DockerHub registry'
|
||||||
echo "$DOCKERHUB_TOKEN" | docker login -u "$DOCKERHUB_USER" --password-stdin
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
{{- if (ne .host.distro.family "darwin") -}}
|
{{- if (eq .host.distro.family "darwin") -}}
|
||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# @file macOS System Settings
|
# @file macOS System Settings
|
||||||
# @brief Applies an optimized set of macOS system configurations intended to provide more sensible system defaults
|
# @brief Applies an optimized set of macOS system configurations intended to provide more sensible system defaults
|
||||||
|
@ -216,6 +216,8 @@ sudo pmset -b sleep 5
|
||||||
sudo pmset -a standbydelay 86400
|
sudo pmset -a standbydelay 86400
|
||||||
|
|
||||||
# Never go into computer sleep mode
|
# Never go into computer sleep mode
|
||||||
|
sudo systemsetup -setdisplaysleep 30 > /dev/null
|
||||||
|
sudo systemsetup -setharddisksleep Off > /dev/null
|
||||||
sudo systemsetup -setcomputersleep Off > /dev/null
|
sudo systemsetup -setcomputersleep Off > /dev/null
|
||||||
|
|
||||||
# Hibernation mode
|
# Hibernation mode
|
||||||
|
|
|
@ -20,8 +20,7 @@ if [ -f "$ASDF_DIR/asdf.sh" ] && [ -f ~/.tool-versions ]; then
|
||||||
logg info 'Sourcing asdf.sh'
|
logg info 'Sourcing asdf.sh'
|
||||||
. ${ASDF_DIR}/asdf.sh
|
. ${ASDF_DIR}/asdf.sh
|
||||||
cat .tool-versions | while read TOOL; do
|
cat .tool-versions | while read TOOL; do
|
||||||
logg info 'Installing ASDF plugin '"$(echo "$TOOL" | sed 's/ .*//')"''
|
logg info 'Installing ASDF plugin '"$(echo "$TOOL" | sed 's/ .*//')"'' && asdf plugin add "$(echo "$TOOL" | sed 's/ .*//')" > /dev/null && logg success "Successfully added $(echo "$TOOL" | sed 's/ .*//') via ASDF"
|
||||||
asdf plugin add "$(echo "$TOOL" | sed 's/ .*//')"
|
|
||||||
done
|
done
|
||||||
# Only proceed with installation if either DEBUG_MODE is enabled or ~/.cache/megabyte-labs/asdf-install is missing
|
# Only proceed with installation if either DEBUG_MODE is enabled or ~/.cache/megabyte-labs/asdf-install is missing
|
||||||
# Added to save time between tests because PHP takes awhile to install
|
# Added to save time between tests because PHP takes awhile to install
|
||||||
|
|
|
@ -70,7 +70,7 @@ if [ -f "${XDG_DATA_HOME:-$HOME/.local/share}/gas-station/requirements.yml" ]; t
|
||||||
if command -v ansible-galaxy > /dev/null; then
|
if command -v ansible-galaxy > /dev/null; then
|
||||||
logg info 'Ensuring Ansible Galaxy collections are installed'
|
logg info 'Ensuring Ansible Galaxy collections are installed'
|
||||||
export ANSIBLE_CONFIG="${XDG_DATA_HOME:-$HOME/.local/share}/ansible/ansible.cfg"
|
export ANSIBLE_CONFIG="${XDG_DATA_HOME:-$HOME/.local/share}/ansible/ansible.cfg"
|
||||||
ansible-galaxy install -r "${XDG_DATA_HOME:-$HOME/.local/share}/ansible/requirements.yml" || EXIT_CODE=$?
|
ansible-galaxy install -r "${XDG_DATA_HOME:-$HOME/.local/share}/ansible/requirements.yml" > /dev/null || EXIT_CODE=$?
|
||||||
if [ -n "$EXIT_CODE" ]; then
|
if [ -n "$EXIT_CODE" ]; then
|
||||||
logg error 'Failed to install Ansible requirements from Ansible Galaxy'
|
logg error 'Failed to install Ansible requirements from Ansible Galaxy'
|
||||||
if [ -d "${XDG_DATA_HOME:-$HOME/.local/share}/gas-station/collections" ]; then
|
if [ -d "${XDG_DATA_HOME:-$HOME/.local/share}/gas-station/collections" ]; then
|
||||||
|
|
|
@ -36,4 +36,8 @@ if [ -d /Applications ] && [ -d /System ]; then
|
||||||
if command -v m > /dev/null; then
|
if command -v m > /dev/null; then
|
||||||
logg info 'Emptying trash' && m trash clean
|
logg info 'Emptying trash' && m trash clean
|
||||||
fi
|
fi
|
||||||
|
logg info 'Checking if there is a pending update'
|
||||||
|
defaults read /Library/Updates/index.plist InstallAtLogout
|
||||||
|
elif [ -f /var/run/reboot-required ]; then
|
||||||
|
logg info '/var/run/reboot-required is present so a reboot is required'
|
||||||
fi
|
fi
|
|
@ -20,10 +20,6 @@ if [ -n "$KEYID" ] && command -v gpg > /dev/null; then
|
||||||
chown -Rf "$(whoami)" "$HOME/.gnupg/"
|
chown -Rf "$(whoami)" "$HOME/.gnupg/"
|
||||||
find "$HOME/.gnupg" -type f -exec chmod 600 {} \;
|
find "$HOME/.gnupg" -type f -exec chmod 600 {} \;
|
||||||
find "$HOME/.gnupg" -type d -exec chmod 700 {} \;
|
find "$HOME/.gnupg" -type d -exec chmod 700 {} \;
|
||||||
if [ -f "${XDG_DATA_HOME:-$HOME/.local/share}/chezmoi/home/private_dot_gnupg/public/${KEYID}.asc" ]; then
|
|
||||||
logg info "Importing GPG key stored in ${XDG_DATA_HOME:-$HOME/.local/share}/chezmoi/home/private_dot_gnupg/public/${KEYID}.asc since its name matches the GPG key ID in .chezmoi.yaml.tmpl"
|
|
||||||
gpg --import "${XDG_DATA_HOME:-$HOME/.local/share}/chezmoi/home/private_dot_gnupg/public/${KEYID}.asc" && logg success 'Successfully imported master GPG key'
|
|
||||||
fi
|
|
||||||
if [ ! -f "$HOME/.gnupg/gpg.conf" ]; then
|
if [ ! -f "$HOME/.gnupg/gpg.conf" ]; then
|
||||||
logg 'Downloading hardened gpg.conf file to ~/.gpnupg/gpg.conf'
|
logg 'Downloading hardened gpg.conf file to ~/.gpnupg/gpg.conf'
|
||||||
curl -sSL "{{ .config.gpg }}" > "$HOME/.gnupg/gpg.conf"
|
curl -sSL "{{ .config.gpg }}" > "$HOME/.gnupg/gpg.conf"
|
||||||
|
@ -31,12 +27,12 @@ if [ -n "$KEYID" ] && command -v gpg > /dev/null; then
|
||||||
fi
|
fi
|
||||||
KEYID_TRIMMED="$(echo "$KEYID" | sed 's/^0x//')"
|
KEYID_TRIMMED="$(echo "$KEYID" | sed 's/^0x//')"
|
||||||
if ! gpg --list-secret-keys --keyid-format=long | grep "$KEYID_TRIMMED" > /dev/null; then
|
if ! gpg --list-secret-keys --keyid-format=long | grep "$KEYID_TRIMMED" > /dev/null; then
|
||||||
logg info 'Killing dirmngr instance and reloading daemon with standard-resolver'
|
if [ -f "${XDG_DATA_HOME:-$HOME/.local/share}/chezmoi/home/private_dot_gnupg/public/${KEYID}.asc" ]; then
|
||||||
sudo pkill dirmngr
|
logg info "Importing GPG key stored in ${XDG_DATA_HOME:-$HOME/.local/share}/chezmoi/home/private_dot_gnupg/public/${KEYID}.asc since its name matches the GPG key ID in .chezmoi.yaml.tmpl"
|
||||||
dirmngr --daemon --standard-resolver
|
gpg --import "${XDG_DATA_HOME:-$HOME/.local/share}/chezmoi/home/private_dot_gnupg/public/${KEYID}.asc" && logg success 'Successfully imported master GPG key'
|
||||||
if [ -f "$HOME/.gnupg/public/$KEYID.sig" ]; then
|
|
||||||
gpg --import "$HOME/.gnupg/public/$KEYID.sig"
|
|
||||||
else
|
else
|
||||||
|
logg info 'Killing dirmngr instance and reloading daemon with standard-resolver' && sudo pkill dirmngr
|
||||||
|
dirmngr --daemon --standard-resolver
|
||||||
logg info 'Attempting to download the specified public GPG key ({{ .user.gpg.id }}) from public keyservers'
|
logg info 'Attempting to download the specified public GPG key ({{ .user.gpg.id }}) from public keyservers'
|
||||||
gpg --keyserver https://pgp.mit.edu --recv "$KEYID" || EXIT_CODE=$?
|
gpg --keyserver https://pgp.mit.edu --recv "$KEYID" || EXIT_CODE=$?
|
||||||
if [ -n "$EXIT_CODE" ]; then
|
if [ -n "$EXIT_CODE" ]; then
|
||||||
|
@ -48,9 +44,9 @@ if [ -n "$KEYID" ] && command -v gpg > /dev/null; then
|
||||||
logg success 'Successfully imported configured public user GPG key'
|
logg success 'Successfully imported configured public user GPG key'
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
logg info 'Stopping dirmngr'
|
||||||
|
gpgconf --kill dirmngr && logg info 'Stopped dirmngr' || info warn 'Failed to stop dirmngr'
|
||||||
fi
|
fi
|
||||||
logg info 'Stopping dirmngr'
|
|
||||||
gpgconf --kill dirmngr && logg info 'Stopped dirmngr' || info warn 'Failed to stop dirmngr'
|
|
||||||
else
|
else
|
||||||
logg info 'Key is already in keyring'
|
logg info 'Key is already in keyring'
|
||||||
fi
|
fi
|
||||||
|
|
0
home/dot_config/espanso/config/default.yml
Normal file
0
home/dot_config/espanso/config/default.yml
Normal file
4
home/dot_config/espanso/config/vscode.yml
Normal file
4
home/dot_config/espanso/config/vscode.yml
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
filter_title: "Visual Studio Code"
|
||||||
|
|
||||||
|
extra_includes:
|
||||||
|
- "../match/_code_snippets.yml"
|
0
home/dot_config/espanso/match/base.yml
Normal file
0
home/dot_config/espanso/match/base.yml
Normal file
|
@ -342,6 +342,15 @@ async function generateInstallOrders(pkgsToInstall) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Handle the _app definition
|
||||||
|
const appName = softwarePackages[packageKey]['_app']
|
||||||
|
if (appName) {
|
||||||
|
if(fileExists(`/Applications/${appName}`) || fileExists(`${process.env.HOME}/Applications/${appName}`)) {
|
||||||
|
processPluginOrders(pkg)
|
||||||
|
continue pkgFor
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Handle the _deps attribute
|
// Handle the _deps attribute
|
||||||
currentSelector = 'deps'
|
currentSelector = 'deps'
|
||||||
doubleScoped =
|
doubleScoped =
|
||||||
|
@ -582,9 +591,9 @@ async function afterInstall(packageManager) {
|
||||||
log('info', logStage, `Ensuring temporary passwordless sudo privileges used by Ansible are removed`)
|
log('info', logStage, `Ensuring temporary passwordless sudo privileges used by Ansible are removed`)
|
||||||
const gsed = which.sync('gsed', { nothrow: true })
|
const gsed = which.sync('gsed', { nothrow: true })
|
||||||
if (gsed) {
|
if (gsed) {
|
||||||
await $`sudo gsed -i '/# TEMPORARY FOR ANSIBLE INSTALL DOCTOR/d' /etc/sudoers`
|
await $`sudo gsed -i '/# TEMPORARY FOR INSTALL DOCTOR ANSIBLE/d' /etc/sudoers`
|
||||||
} else {
|
} else {
|
||||||
await $`sudo sed -i '/# TEMPORARY FOR ANSIBLE INSTALL DOCTOR/d' /etc/sudoers`
|
await $`sudo sed -i '/# TEMPORARY FOR INSTALL DOCTOR ANSIBLE/d' /etc/sudoers`
|
||||||
}
|
}
|
||||||
} else if (packageManager === 'apk') {
|
} else if (packageManager === 'apk') {
|
||||||
} else if (packageManager === 'apt') {
|
} else if (packageManager === 'apt') {
|
||||||
|
@ -1837,10 +1846,9 @@ async function linkBin(installOrdersBinLink) {
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
log('warn', 'Bin', `Expected flatpak directory not available - ${flatpakDir}/app/${pkg}`)
|
log('warn', 'Bin', `Expected flatpak directory not available - ${flatpakDir}/app/${pkg}`)
|
||||||
}
|
}
|
||||||
} else if (binLink.preference === 'cask') {
|
} else if (softwarePackages[binLink.package]['_app']) {
|
||||||
try {
|
try {
|
||||||
const caskWhen = softwarePackages[binLink.package]['_when:cask'].replace(/blue/g, "red")
|
const appName = softwarePackages[binLink.package]['_app']
|
||||||
const appName = caskWhen.replace(/ && ! test -d .*/, '').replace(/! test -d "\/Applications\//, '').replace(/! test -d \/Applications\//, '').replace('"', '')
|
|
||||||
log('info', 'Bin', `Checking for existence of ${appName} application in /Applications and ~/Applications`)
|
log('info', 'Bin', `Checking for existence of ${appName} application in /Applications and ~/Applications`)
|
||||||
if (fileExists(`/Applications/${appName}`)) {
|
if (fileExists(`/Applications/${appName}`)) {
|
||||||
runCommand(
|
runCommand(
|
||||||
|
|
27
scripts/partials/reboot
Normal file
27
scripts/partials/reboot
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
# @description This function determines whether or not a reboot is required on the target system.
|
||||||
|
# On Linux, it will check for the presence of the `/var/run/reboot-required` file to determine
|
||||||
|
# whether or not a reboot is required. On macOS, it will reboot `/Library/Updates/index.plist`
|
||||||
|
# to determine whether or not a reboot is required.
|
||||||
|
#
|
||||||
|
# After determining whether or not a reboot is required, the script will attempt to automatically
|
||||||
|
# reboot the machine.
|
||||||
|
handleRequiredReboot() {
|
||||||
|
if [ -d /Applications ] && [ -d /System ]; then
|
||||||
|
### macOS
|
||||||
|
logg info 'Checking if there is a pending update' && defaults read /Library/Updates/index.plist InstallAtLogout
|
||||||
|
# TODO - Uncomment this when we can determine conditions for reboot
|
||||||
|
# sudo shutdown -r now
|
||||||
|
elif [ -f /var/run/reboot-required ]; then
|
||||||
|
### Linux
|
||||||
|
logg info '/var/run/reboot-required is present so a reboot is required'
|
||||||
|
if command -v systemctl > /dev/null; then
|
||||||
|
logg info 'systemctl present so rebooting with sudo systemctl start reboot.target' && sudo systemctl start reboot.target
|
||||||
|
elif command -v reboot > /dev/null; then
|
||||||
|
logg info 'reboot available as command so rebooting with sudo reboot' && sudo reboot
|
||||||
|
elif command -v shutdown > /dev/null; then
|
||||||
|
logg info 'shutdown command available so rebooting with sudo shutdown -r now' && sudo shutdown -r now
|
||||||
|
else
|
||||||
|
logg warn 'Reboot required but unable to determine appropriate restart command'
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
|
@ -79,6 +79,7 @@ setEnvironmentVariables() {
|
||||||
|
|
||||||
{{ include "partials" "basic-deps" }}
|
{{ include "partials" "basic-deps" }}
|
||||||
{{ include "partials" "homebrew" }}
|
{{ include "partials" "homebrew" }}
|
||||||
|
{{ include "partials" "reboot" }}
|
||||||
# @description Load default settings if it is in a CI setting
|
# @description Load default settings if it is in a CI setting
|
||||||
setCIEnvironmentVariables() {
|
setCIEnvironmentVariables() {
|
||||||
if [ -n "$CI" ]; then
|
if [ -n "$CI" ]; then
|
||||||
|
@ -385,5 +386,6 @@ provisionLogic() {
|
||||||
logg info "Running the Chezmoi provisioning" && runChezmoi
|
logg info "Running the Chezmoi provisioning" && runChezmoi
|
||||||
logg info "Ensuring temporary passwordless sudo is removed" && removePasswordlessSudo
|
logg info "Ensuring temporary passwordless sudo is removed" && removePasswordlessSudo
|
||||||
logg info "Handling post-provision logic" && postProvision
|
logg info "Handling post-provision logic" && postProvision
|
||||||
|
logg info "Determing whether or not reboot" && handleRequiredReboot
|
||||||
}
|
}
|
||||||
provisionLogic
|
provisionLogic
|
||||||
|
|
468
software.yml
468
software.yml
File diff suppressed because it is too large
Load diff
Loading…
Reference in a new issue