{{- if eq .host.distro.family "linux" -}} #!/usr/bin/env bash {{ includeTemplate "universal/profile" }} {{ includeTemplate "universal/logg" }} ### Create backups if [ -d "${XDG_CONFIG_HOME:-$HOME/.config}/dconf/settings" ]; then DCONF_TMP="$(mktemp)" gum log -sl info 'Moving ~/.config/dconf/settings to '"$DCONF_TMP" cp -rf "${XDG_CONFIG_HOME:-$HOME/.config}/dconf/settings" "$DCONF_TMP" fi ### Ensure ~/.config/dconf/settings exists mkdir -p "${XDG_CONFIG_HOME:-$HOME/.config}/dconf/settings" ### Overwrite ~/.config/dconf/settings configurations so we can diff with Chezmoi find "${XDG_CONFIG_HOME:-$HOME/.config}/dconf/settings" -mindepth 1 -maxdepth 1 -type f | while read DCONF_CONFIG_FILE; do DCONF_SETTINGS_ID="/$(basename "$DCONF_CONFIG_FILE" | sed 's/\./\//g')/" gum log -sl info 'Dumping '"$DCONF_SETTINGS_ID"' to '"$DCONF_CONFIG_FILE" dconf dump "$DCONF_SETTINGS_ID" > "$DCONF_CONFIG_FILE" gum log -sl info 'Saved new configuration to '"$DCONF_CONFIG_FILE" gum log -sl info 'Printing diff for '"$DCONF_CONFIG_FILE" chezmoi diff "$DCONF_CONFIG_FILE" || true done {{ end -}}