mirror of
https://github.com/LukeHagar/omarchy.git
synced 2025-12-06 04:20:23 +00:00
28 lines
755 B
Bash
Executable File
28 lines
755 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Where we store an empty file for each migration that has already been performed.
|
|
STATE_DIR="$HOME/.local/state/omarchy/migrations"
|
|
mkdir -p "$STATE_DIR"
|
|
|
|
# Skipped migrations are tracked separately
|
|
mkdir -p "$STATE_DIR/skipped"
|
|
|
|
# Run any pending migrations
|
|
for file in ~/.local/share/omarchy/migrations/*.sh; do
|
|
filename=$(basename "$file")
|
|
|
|
if [[ ! -f "$STATE_DIR/$filename" && ! -f "$STATE_DIR/skipped/$filename" ]]; then
|
|
echo -e "\e[32m\nRunning migration (${filename%.sh})\e[0m"
|
|
|
|
if bash $file; then
|
|
touch "$STATE_DIR/$filename"
|
|
else
|
|
if gum confirm "Migration ${filename%.sh} failed. Skip and continue?"; then
|
|
touch "$STATE_DIR/skipped/$filename"
|
|
else
|
|
exit 1
|
|
fi
|
|
fi
|
|
fi
|
|
done
|