Contest mode layout and prompt flow

- Add contest layout selection and config

- Default PS1 mode to contest option
This commit is contained in:
2026-01-24 10:35:07 +00:00
parent 7ac8c926ec
commit b4a6579e4b
3 changed files with 149 additions and 54 deletions

View File

@@ -27,6 +27,7 @@ season_mode="dynamic"
season_choice=""
style_choice="aurora"
style_pack="standard"
contest_layout="day-time-user"
if [[ -t 0 ]]; then
echo "Install options:"
echo " 1) PS1 only"
@@ -66,14 +67,27 @@ if [[ -t 0 ]]; then
style_pack="standard"
;;
""|2)
2)
season_mode="dynamic"
style_pack="standard"
;;
3)
""|3)
season_mode="static"
style_pack="contest"
season_choice="winter"
contest_layout="day-time-user"
echo "Contest layout order:"
echo " 1) day-time-user"
echo " 2) user-time"
echo " 3) time-user"
echo " 4) day-time"
read -r -p "Choose [1]: " layout_pick
case "${layout_pick}" in
2) contest_layout="user-time" ;;
3) contest_layout="time-user" ;;
4) contest_layout="day-time" ;;
""|1) contest_layout="day-time-user" ;;
*) echo "Invalid choice, using day-time-user."; contest_layout="day-time-user" ;;
esac
;;
*)
echo "Invalid choice, using dynamic."
@@ -176,7 +190,13 @@ if [[ "$install_ps1" -eq 1 ]]; then
} > /etc/ps1-season
chmod 0644 /etc/ps1-season
printf 'PS1_STYLE=%s\n' "$style_choice" > /etc/ps1-style
{
printf 'PS1_STYLE=%s\n' "$style_choice"
printf 'PS1_STYLE_PACK=%s\n' "$style_pack"
if [[ "$style_pack" == "contest" ]]; then
printf 'PS1_CONTEST_LAYOUT=%s\n' "$contest_layout"
fi
} > /etc/ps1-style
chmod 0644 /etc/ps1-style
else
rm -f "$DST_PS1"

View File

@@ -16,6 +16,7 @@ MARKER_END="# <<< user ps1 (managed) <<<"
season_mode="dynamic"
season_choice=""
style_choice="aurora"
contest_layout="day-time-user"
if [[ -t 0 ]]; then
style_pack="standard"
echo "PS1 mode:"
@@ -42,14 +43,27 @@ if [[ -t 0 ]]; then
style_pack="standard"
;;
""|2)
2)
season_mode="dynamic"
style_pack="standard"
;;
3)
""|3)
season_mode="static"
style_pack="contest"
season_choice="winter"
contest_layout="day-time-user"
echo "Contest layout order:"
echo " 1) day-time-user"
echo " 2) user-time"
echo " 3) time-user"
echo " 4) day-time"
read -r -p "Choose [1]: " layout_pick
case "${layout_pick}" in
2) contest_layout="user-time" ;;
3) contest_layout="time-user" ;;
4) contest_layout="day-time" ;;
""|1) contest_layout="day-time-user" ;;
*) echo "Invalid choice, using day-time-user."; contest_layout="day-time-user" ;;
esac
;;
*)
echo "Invalid choice, using dynamic."
@@ -97,7 +111,13 @@ chmod 0644 "$DST_PS1"
} > "$SEASON_FILE"
chmod 0644 "$SEASON_FILE"
printf 'PS1_STYLE=%s\n' "$style_choice" > "$STYLE_FILE"
{
printf 'PS1_STYLE=%s\n' "$style_choice"
printf 'PS1_STYLE_PACK=%s\n' "$style_pack"
if [[ "$style_pack" == "contest" ]]; then
printf 'PS1_CONTEST_LAYOUT=%s\n' "$contest_layout"
fi
} > "$STYLE_FILE"
chmod 0644 "$STYLE_FILE"
add_source_block() {