mirror of
https://github.com/LukeHagar/omarchy.git
synced 2025-12-06 04:20:23 +00:00
Remove interdependencies and ordering issues
This commit is contained in:
@@ -1,6 +1,4 @@
|
||||
source $OMARCHY_INSTALL/helpers/chroot.sh
|
||||
source $OMARCHY_INSTALL/helpers/layout.sh
|
||||
source $OMARCHY_INSTALL/helpers/logo.sh
|
||||
source $OMARCHY_INSTALL/helpers/gum.sh
|
||||
source $OMARCHY_INSTALL/helpers/presentation.sh
|
||||
source $OMARCHY_INSTALL/helpers/errors.sh
|
||||
source $OMARCHY_INSTALL/helpers/logging.sh
|
||||
|
||||
@@ -1,18 +0,0 @@
|
||||
# Ensure we have gum available
|
||||
if ! command -v gum &>/dev/null; then
|
||||
sudo pacman -S --needed --noconfirm gum
|
||||
fi
|
||||
|
||||
# Tokyo Night theme for gum confirm
|
||||
export GUM_CONFIRM_PROMPT_FOREGROUND="6" # Cyan for prompt
|
||||
export GUM_CONFIRM_SELECTED_FOREGROUND="0" # Black text on selected
|
||||
export GUM_CONFIRM_SELECTED_BACKGROUND="2" # Green background for selected
|
||||
export GUM_CONFIRM_UNSELECTED_FOREGROUND="7" # White for unselected
|
||||
export GUM_CONFIRM_UNSELECTED_BACKGROUND="0" # Black background for unselected
|
||||
export PADDING="0 0 0 $PADDING_LEFT" # Gum Style
|
||||
export GUM_CHOOSE_PADDING="$PADDING"
|
||||
export GUM_FILTER_PADDING="$PADDING"
|
||||
export GUM_INPUT_PADDING="$PADDING"
|
||||
export GUM_SPIN_PADDING="$PADDING"
|
||||
export GUM_TABLE_PADDING="$PADDING"
|
||||
export GUM_CONFIRM_PADDING="$PADDING"
|
||||
@@ -1,20 +0,0 @@
|
||||
# Get terminal size from /dev/tty (works in all scenarios: direct, sourced, or piped)
|
||||
if [ -e /dev/tty ]; then
|
||||
TERM_SIZE=$(stty size 2>/dev/null </dev/tty)
|
||||
|
||||
if [ -n "$TERM_SIZE" ]; then
|
||||
export TERM_HEIGHT=$(echo "$TERM_SIZE" | cut -d' ' -f1)
|
||||
export TERM_WIDTH=$(echo "$TERM_SIZE" | cut -d' ' -f2)
|
||||
else
|
||||
# Fallback to reasonable defaults if stty fails
|
||||
export TERM_WIDTH=80
|
||||
export TERM_HEIGHT=24
|
||||
fi
|
||||
else
|
||||
# No terminal available (e.g., non-interactive environment)
|
||||
export TERM_WIDTH=80
|
||||
export TERM_HEIGHT=24
|
||||
fi
|
||||
|
||||
export PADDING_LEFT=$((($TERM_WIDTH - $LOGO_WIDTH) / 2))
|
||||
export PADDING_LEFT_SPACES=$(printf "%*s" $PADDING_LEFT "")
|
||||
@@ -1,8 +0,0 @@
|
||||
export LOGO_PATH="$OMARCHY_PATH/logo.txt"
|
||||
export LOGO_WIDTH=$(awk '{ if (length > max) max = length } END { print max+0 }' "$LOGO_PATH" 2>/dev/null || echo 0)
|
||||
export LOGO_HEIGHT=$(wc -l <"$LOGO_PATH" 2>/dev/null || echo 0)
|
||||
|
||||
clear_logo() {
|
||||
printf "\033[H\033[2J" # Clear screen and move cursor to top-left
|
||||
gum style --foreground 2 --padding "1 0 0 $PADDING_LEFT" "$(<"$LOGO_PATH")"
|
||||
}
|
||||
48
install/helpers/presentation.sh
Normal file
48
install/helpers/presentation.sh
Normal file
@@ -0,0 +1,48 @@
|
||||
# Ensure we have gum available
|
||||
if ! command -v gum &>/dev/null; then
|
||||
sudo pacman -S --needed --noconfirm gum
|
||||
fi
|
||||
|
||||
# Get terminal size from /dev/tty (works in all scenarios: direct, sourced, or piped)
|
||||
if [ -e /dev/tty ]; then
|
||||
TERM_SIZE=$(stty size 2>/dev/null </dev/tty)
|
||||
|
||||
if [ -n "$TERM_SIZE" ]; then
|
||||
export TERM_HEIGHT=$(echo "$TERM_SIZE" | cut -d' ' -f1)
|
||||
export TERM_WIDTH=$(echo "$TERM_SIZE" | cut -d' ' -f2)
|
||||
else
|
||||
# Fallback to reasonable defaults if stty fails
|
||||
export TERM_WIDTH=80
|
||||
export TERM_HEIGHT=24
|
||||
fi
|
||||
else
|
||||
# No terminal available (e.g., non-interactive environment)
|
||||
export TERM_WIDTH=80
|
||||
export TERM_HEIGHT=24
|
||||
fi
|
||||
|
||||
export LOGO_PATH="$OMARCHY_PATH/logo.txt"
|
||||
export LOGO_WIDTH=$(awk '{ if (length > max) max = length } END { print max+0 }' "$LOGO_PATH" 2>/dev/null || echo 0)
|
||||
export LOGO_HEIGHT=$(wc -l <"$LOGO_PATH" 2>/dev/null || echo 0)
|
||||
|
||||
export PADDING_LEFT=$((($TERM_WIDTH - $LOGO_WIDTH) / 2))
|
||||
export PADDING_LEFT_SPACES=$(printf "%*s" $PADDING_LEFT "")
|
||||
|
||||
# Tokyo Night theme for gum confirm
|
||||
export GUM_CONFIRM_PROMPT_FOREGROUND="6" # Cyan for prompt
|
||||
export GUM_CONFIRM_SELECTED_FOREGROUND="0" # Black text on selected
|
||||
export GUM_CONFIRM_SELECTED_BACKGROUND="2" # Green background for selected
|
||||
export GUM_CONFIRM_UNSELECTED_FOREGROUND="7" # White for unselected
|
||||
export GUM_CONFIRM_UNSELECTED_BACKGROUND="0" # Black background for unselected
|
||||
export PADDING="0 0 0 $PADDING_LEFT" # Gum Style
|
||||
export GUM_CHOOSE_PADDING="$PADDING"
|
||||
export GUM_FILTER_PADDING="$PADDING"
|
||||
export GUM_INPUT_PADDING="$PADDING"
|
||||
export GUM_SPIN_PADDING="$PADDING"
|
||||
export GUM_TABLE_PADDING="$PADDING"
|
||||
export GUM_CONFIRM_PADDING="$PADDING"
|
||||
|
||||
clear_logo() {
|
||||
printf "\033[H\033[2J" # Clear screen and move cursor to top-left
|
||||
gum style --foreground 2 --padding "1 0 0 $PADDING_LEFT" "$(<"$LOGO_PATH")"
|
||||
}
|
||||
Reference in New Issue
Block a user