detached 41ea797

feat(ux): add pacman config and fix extra.packages download

commit
41ea7973bc63d7beb9a91605e15803eb6e961132
author
bnema · · 2025-10-21 17:41 UTC
committer
bnema · · 2025-10-21 16:38 UTC
parent
e3c2051
signature
unsigned
4 files · +26 -3
M CHANGELOG.md +4 -0
@@ -7,10 +7,14 @@ All notable changes to this project will be documented in this file.
77 ### Added
88 - **UFW firewall**: Added ufw with default deny incoming policy for basic network protection
99 - **First-boot branding**: Display ArchUp logo and completion message during first-boot setup
10+- **Pacman configuration**: Enable color output, parallel downloads, and ILoveCandy progress bar
1011 - **zram swap**: Configured zram-generator for compressed in-memory swap with optimized sysctl parameters
1112 - **Broadcom WiFi**: Added broadcom-wl driver to base packages for Broadcom wireless support
1213 - **Multilib support**: Enabled multilib repository on ISO and installed system with reusable helper
1314
15+### Fixed
16+- **Download script**: Added missing extra.packages to download list
17+
1418 ### Changed
1519 - **Disk selection**: Enhanced disk listing with model, serial, and vendor information using JSON output
1620 - **Install URL**: Updated to archup.run domain with /install and /i shortcuts
@@ -7,10 +7,14 @@ All notable changes to this project will be documented in this file.
7 ### Added7 ### Added
8 - **UFW firewall**: Added ufw with default deny incoming policy for basic network protection8 - **UFW firewall**: Added ufw with default deny incoming policy for basic network protection
9 - **First-boot branding**: Display ArchUp logo and completion message during first-boot setup9 - **First-boot branding**: Display ArchUp logo and completion message during first-boot setup
10+- **Pacman configuration**: Enable color output, parallel downloads, and ILoveCandy progress bar
10 - **zram swap**: Configured zram-generator for compressed in-memory swap with optimized sysctl parameters11 - **zram swap**: Configured zram-generator for compressed in-memory swap with optimized sysctl parameters
11 - **Broadcom WiFi**: Added broadcom-wl driver to base packages for Broadcom wireless support12 - **Broadcom WiFi**: Added broadcom-wl driver to base packages for Broadcom wireless support
12 - **Multilib support**: Enabled multilib repository on ISO and installed system with reusable helper13 - **Multilib support**: Enabled multilib repository on ISO and installed system with reusable helper
13 14
15+### Fixed
16+- **Download script**: Added missing extra.packages to download list
17+
14 ### Changed18 ### Changed
15 - **Disk selection**: Enhanced disk listing with model, serial, and vendor information using JSON output19 - **Disk selection**: Enhanced disk listing with model, serial, and vendor information using JSON output
16 - **Install URL**: Updated to archup.run domain with /install and /i shortcuts20 - **Install URL**: Updated to archup.run domain with /install and /i shortcuts
M install/helpers/download.sh +4 -3
@@ -58,15 +58,16 @@ download_archup_files() {
5858
5959 # Post-install
6060 download_section "Downloading post-install scripts..." "post-install" \
61- all.sh boot-logo.sh plymouth.sh snapper.sh ufw.sh post-boot-setup.sh hooks.sh shell-config.sh verify.sh unmount.sh
61+ all.sh boot-logo.sh plymouth.sh snapper.sh ufw.sh pacman.sh post-boot-setup.sh hooks.sh shell-config.sh verify.sh unmount.sh
6262
6363 # Post-boot
6464 download_section "Downloading post-boot scripts..." "post-boot" \
6565 all.sh snapper.sh ssh-keygen.sh archup-cli.sh archup-first-boot.service
6666
67- # Base packages
67+ # Package lists
6868 curl -sL "$GITHUB_RAW/install/base.packages" -o "$ARCHUP_INSTALL/base.packages" 2>/dev/null
69- gum style --foreground 2 "[OK] Package list downloaded"
69+ curl -sL "$GITHUB_RAW/install/extra.packages" -o "$ARCHUP_INSTALL/extra.packages" 2>/dev/null
70+ gum style --foreground 2 "[OK] Package lists downloaded"
7071
7172 echo ""
7273 gum style --foreground 2 --bold "[OK] All files downloaded successfully"
@@ -58,15 +58,16 @@ download_archup_files() {
58 58
59 # Post-install59 # Post-install
60 download_section "Downloading post-install scripts..." "post-install" \60 download_section "Downloading post-install scripts..." "post-install" \
61- all.sh boot-logo.sh plymouth.sh snapper.sh ufw.sh post-boot-setup.sh hooks.sh shell-config.sh verify.sh unmount.sh61+ all.sh boot-logo.sh plymouth.sh snapper.sh ufw.sh pacman.sh post-boot-setup.sh hooks.sh shell-config.sh verify.sh unmount.sh
62 62
63 # Post-boot63 # Post-boot
64 download_section "Downloading post-boot scripts..." "post-boot" \64 download_section "Downloading post-boot scripts..." "post-boot" \
65 all.sh snapper.sh ssh-keygen.sh archup-cli.sh archup-first-boot.service65 all.sh snapper.sh ssh-keygen.sh archup-cli.sh archup-first-boot.service
66 66
67- # Base packages67+ # Package lists
68 curl -sL "$GITHUB_RAW/install/base.packages" -o "$ARCHUP_INSTALL/base.packages" 2>/dev/null68 curl -sL "$GITHUB_RAW/install/base.packages" -o "$ARCHUP_INSTALL/base.packages" 2>/dev/null
69- gum style --foreground 2 "[OK] Package list downloaded"69+ curl -sL "$GITHUB_RAW/install/extra.packages" -o "$ARCHUP_INSTALL/extra.packages" 2>/dev/null
70+ gum style --foreground 2 "[OK] Package lists downloaded"
70 71
71 echo ""72 echo ""
72 gum style --foreground 2 --bold "[OK] All files downloaded successfully"73 gum style --foreground 2 --bold "[OK] All files downloaded successfully"
M install/post-install/all.sh +1 -0
@@ -5,6 +5,7 @@ source "$ARCHUP_INSTALL/post-install/boot-logo.sh"
55 source "$ARCHUP_INSTALL/post-install/plymouth.sh"
66 source "$ARCHUP_INSTALL/post-install/snapper.sh"
77 source "$ARCHUP_INSTALL/post-install/ufw.sh"
8+source "$ARCHUP_INSTALL/post-install/pacman.sh"
89 source "$ARCHUP_INSTALL/post-install/post-boot-setup.sh"
910 source "$ARCHUP_INSTALL/post-install/hooks.sh"
1011 source "$ARCHUP_INSTALL/post-install/shell-config.sh"
@@ -5,6 +5,7 @@ source "$ARCHUP_INSTALL/post-install/boot-logo.sh"
5 source "$ARCHUP_INSTALL/post-install/plymouth.sh"5 source "$ARCHUP_INSTALL/post-install/plymouth.sh"
6 source "$ARCHUP_INSTALL/post-install/snapper.sh"6 source "$ARCHUP_INSTALL/post-install/snapper.sh"
7 source "$ARCHUP_INSTALL/post-install/ufw.sh"7 source "$ARCHUP_INSTALL/post-install/ufw.sh"
8+source "$ARCHUP_INSTALL/post-install/pacman.sh"
8 source "$ARCHUP_INSTALL/post-install/post-boot-setup.sh"9 source "$ARCHUP_INSTALL/post-install/post-boot-setup.sh"
9 source "$ARCHUP_INSTALL/post-install/hooks.sh"10 source "$ARCHUP_INSTALL/post-install/hooks.sh"
10 source "$ARCHUP_INSTALL/post-install/shell-config.sh"11 source "$ARCHUP_INSTALL/post-install/shell-config.sh"
A install/post-install/pacman.sh +17 -0
@@ -0,0 +1,17 @@
1+#!/bin/bash
2+# Configure pacman for better UX
3+
4+gum style --foreground 6 --padding "1 0 0 $PADDING_LEFT" "Configuring pacman..."
5+
6+# Enable Color output
7+sed -i 's/^#Color$/Color/' /mnt/etc/pacman.conf
8+
9+# Enable ParallelDownloads
10+sed -i 's/^#ParallelDownloads = 5$/ParallelDownloads = 5/' /mnt/etc/pacman.conf
11+
12+# Enable ILoveCandy (Pac-Man progress bar)
13+sed -i '/^Color$/a ILoveCandy' /mnt/etc/pacman.conf
14+
15+gum style --foreground 2 --padding "0 0 1 $PADDING_LEFT" "[OK] Pacman configured (color, parallel downloads, candy)"
16+
17+echo "Pacman configured: Color, ParallelDownloads=5, ILoveCandy" >> "$ARCHUP_INSTALL_LOG_FILE"
@@ -0,0 +1,17 @@
1+#!/bin/bash
2+# Configure pacman for better UX
3+
4+gum style --foreground 6 --padding "1 0 0 $PADDING_LEFT" "Configuring pacman..."
5+
6+# Enable Color output
7+sed -i 's/^#Color$/Color/' /mnt/etc/pacman.conf
8+
9+# Enable ParallelDownloads
10+sed -i 's/^#ParallelDownloads = 5$/ParallelDownloads = 5/' /mnt/etc/pacman.conf
11+
12+# Enable ILoveCandy (Pac-Man progress bar)
13+sed -i '/^Color$/a ILoveCandy' /mnt/etc/pacman.conf
14+
15+gum style --foreground 2 --padding "0 0 1 $PADDING_LEFT" "[OK] Pacman configured (color, parallel downloads, candy)"
16+
17+echo "Pacman configured: Color, ParallelDownloads=5, ILoveCandy" >> "$ARCHUP_INSTALL_LOG_FILE"

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