detached 84a3844

feat(config): read timezone and hostname from config instead of interactive prompts

commit
84a38445a71465ba5673d54e5574b71f811fc49c
author
bnema · · 2025-10-19 19:10 UTC
committer
bnema · · 2025-10-19 19:06 UTC
parent
d1d899f
signature
unsigned
1 file · +8 -27
M install/config/system.sh +8 -27
@@ -2,29 +2,10 @@
22 # System configuration (timezone, locale, hostname)
33
44 gum style --foreground 6 --padding "1 0 0 $PADDING_LEFT" "System Configuration"
5-echo
65
7-# Fetch timezone from IP
8-DETECTED_TIMEZONE=$(curl -s "https://ipapi.co/timezone/" 2>/dev/null)
9-
10-if [ -n "$DETECTED_TIMEZONE" ]; then
11- # Show detected timezone and ask for confirmation
12- gum style --foreground 3 --padding "0 0 0 $PADDING_LEFT" "Detected timezone: $DETECTED_TIMEZONE"
13-
14- if gum confirm --padding "0 0 0 $PADDING_LEFT" "Is this correct?"; then
15- ARCHUP_TIMEZONE="$DETECTED_TIMEZONE"
16- else
17- # Ask for manual timezone entry
18- ARCHUP_TIMEZONE=$(gum input --placeholder "Enter timezone (e.g., America/New_York)" \
19- --prompt "Timezone: " \
20- --padding "0 0 0 $PADDING_LEFT")
21- fi
22-else
23- # Fallback to manual entry if API fails
24- gum style --foreground 3 --padding "0 0 0 $PADDING_LEFT" "Unable to detect timezone automatically"
25- ARCHUP_TIMEZONE=$(gum input --placeholder "Enter timezone (e.g., America/New_York)" \
26- --prompt "Timezone: " \
27- --padding "0 0 0 $PADDING_LEFT")
6+# Read timezone from config (already set in preflight/identify.sh)
7+if [ -z "$ARCHUP_TIMEZONE" ]; then
8+ ARCHUP_TIMEZONE=$(config_get "ARCHUP_TIMEZONE")
289 fi
2910
3011 if [ -z "$ARCHUP_TIMEZONE" ]; then
@@ -51,13 +32,13 @@ if [ -n "$ARCHUP_KEYMAP" ]; then
5132 echo "Console keymap: $ARCHUP_KEYMAP" >> "$ARCHUP_INSTALL_LOG_FILE"
5233 fi
5334
54-# Ask for hostname
55-ARCHUP_HOSTNAME=$(gum input --placeholder "Enter hostname" \
56- --prompt "Hostname: " \
57- --padding "0 0 0 $PADDING_LEFT")
35+# Read hostname from config (already set in preflight/identify.sh)
36+if [ -z "$ARCHUP_HOSTNAME" ]; then
37+ ARCHUP_HOSTNAME=$(config_get "ARCHUP_HOSTNAME")
38+fi
5839
5940 if [ -z "$ARCHUP_HOSTNAME" ]; then
60- ARCHUP_HOSTNAME="archlinux"
41+ ARCHUP_HOSTNAME="archup"
6142 fi
6243
6344 # Set hostname
@@ -2,29 +2,10 @@
2 # System configuration (timezone, locale, hostname)2 # System configuration (timezone, locale, hostname)
3 3
4 gum style --foreground 6 --padding "1 0 0 $PADDING_LEFT" "System Configuration"4 gum style --foreground 6 --padding "1 0 0 $PADDING_LEFT" "System Configuration"
5-echo
6 5
7-# Fetch timezone from IP6+# Read timezone from config (already set in preflight/identify.sh)
8-DETECTED_TIMEZONE=$(curl -s "https://ipapi.co/timezone/" 2>/dev/null)7+if [ -z "$ARCHUP_TIMEZONE" ]; then
9-8+ ARCHUP_TIMEZONE=$(config_get "ARCHUP_TIMEZONE")
10-if [ -n "$DETECTED_TIMEZONE" ]; then
11- # Show detected timezone and ask for confirmation
12- gum style --foreground 3 --padding "0 0 0 $PADDING_LEFT" "Detected timezone: $DETECTED_TIMEZONE"
13-
14- if gum confirm --padding "0 0 0 $PADDING_LEFT" "Is this correct?"; then
15- ARCHUP_TIMEZONE="$DETECTED_TIMEZONE"
16- else
17- # Ask for manual timezone entry
18- ARCHUP_TIMEZONE=$(gum input --placeholder "Enter timezone (e.g., America/New_York)" \
19- --prompt "Timezone: " \
20- --padding "0 0 0 $PADDING_LEFT")
21- fi
22-else
23- # Fallback to manual entry if API fails
24- gum style --foreground 3 --padding "0 0 0 $PADDING_LEFT" "Unable to detect timezone automatically"
25- ARCHUP_TIMEZONE=$(gum input --placeholder "Enter timezone (e.g., America/New_York)" \
26- --prompt "Timezone: " \
27- --padding "0 0 0 $PADDING_LEFT")
28 fi9 fi
29 10
30 if [ -z "$ARCHUP_TIMEZONE" ]; then11 if [ -z "$ARCHUP_TIMEZONE" ]; then
@@ -51,13 +32,13 @@ if [ -n "$ARCHUP_KEYMAP" ]; then
51 echo "Console keymap: $ARCHUP_KEYMAP" >> "$ARCHUP_INSTALL_LOG_FILE"32 echo "Console keymap: $ARCHUP_KEYMAP" >> "$ARCHUP_INSTALL_LOG_FILE"
52 fi33 fi
53 34
54-# Ask for hostname35+# Read hostname from config (already set in preflight/identify.sh)
55-ARCHUP_HOSTNAME=$(gum input --placeholder "Enter hostname" \36+if [ -z "$ARCHUP_HOSTNAME" ]; then
56- --prompt "Hostname: " \37+ ARCHUP_HOSTNAME=$(config_get "ARCHUP_HOSTNAME")
57- --padding "0 0 0 $PADDING_LEFT")38+fi
58 39
59 if [ -z "$ARCHUP_HOSTNAME" ]; then40 if [ -z "$ARCHUP_HOSTNAME" ]; then
60- ARCHUP_HOSTNAME="archlinux"41+ ARCHUP_HOSTNAME="archup"
61 fi42 fi
62 43
63 # Set hostname44 # Set hostname

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 0

    ↑↓ moveenter openesc close