diff options
| author | Craig Jennings <c@cjennings.net> | 2026-01-22 10:00:23 -0600 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-01-22 10:00:23 -0600 |
| commit | 99d487cef4fa6857db8a43209ad2cb727a6f1161 (patch) | |
| tree | cc82f4d42676a33ca687b8e865a11ff88f1a241e /archsetup | |
| parent | d6338d0c0c5bf58531ef9f851b1a55d483dba828 (diff) | |
fix(archsetup): add system config improvements and gnome-keyring setup
- Enable chrony service and create /etc/sysconfig/chronyd to suppress warning
- Configure wireless regulatory domain (US) for full WiFi capabilities
- Configure paccache to retain 3 package versions
- Pre-create gnome-keyring with 'login' default (auto-unlocks at login)
- Add rtkit package for pipewire realtime scheduling
- Add validation test for gnome-keyring setup
- Add system action .desktop files (logout, shutdown, reboot, suspend, lock)
Diffstat (limited to 'archsetup')
| -rwxr-xr-x | archsetup | 23 |
1 files changed, 22 insertions, 1 deletions
@@ -535,6 +535,12 @@ prerequisites() { action="synchronizing system time" && display "task" "$action" (chronyd -q 'server 0.us.pool.ntp.org iburst' >> "$logfile" 2>&1) || error "error" "$action" "$?" + # enable chrony for ongoing time sync and create config to suppress warning + action="enabling chrony time sync service" && display "task" "$action" + mkdir -p /etc/sysconfig + echo 'OPTIONS=""' > /etc/sysconfig/chronyd + systemctl enable chronyd.service >> "$logfile" 2>&1 || error "error" "$action" "$?" + action="configuring compiler to use all processor cores" && display "task" "$action" sed -i "s/-j2/-j$(nproc)/;s/^#MAKEFLAGS/MAKEFLAGS/" /etc/makepkg.conf >> "$logfile" 2>&1 @@ -743,6 +749,10 @@ wifi.cloned-mac-address=random ethernet.cloned-mac-address=stable EOF + # Configure wireless regulatory domain (enables full WiFi capabilities for region) + action="configuring wireless regulatory domain (US)" && display "task" "$action" + sed -i 's/^#WIRELESS_REGDOM="US"/WIRELESS_REGDOM="US"/' /etc/conf.d/wireless-regdom + # Encrypted DNS (DNS over TLS) action="configuring encrypted DNS (DNS over TLS)" && display "task" "$action" @@ -895,6 +905,9 @@ EOF action="enabling the package cache cleanup timer" && display "task" "$action" systemctl enable --now paccache.timer >> "$logfile" 2>&1 || error "error" "$action" "$?" + action="configuring paccache to keep 3 versions" && display "task" "$action" + sed -i 's/^PACCACHE_ARGS=.*/PACCACHE_ARGS=-k3/' /etc/conf.d/pacman-contrib + # Snapshot Service - filesystem-aware display "subtitle" "Snapshot Service" @@ -1217,6 +1230,14 @@ desktop_environment() { find /home/"$username"/.gnupg -type f -exec chmod 600 {} \; find /home/"$username"/.gnupg -type d -exec chmod 700 {} \; + # pre-create gnome-keyring structure so it uses 'login' keyring + # (auto-unlocks at login) instead of creating 'Default_keyring' (prompts for password) + keyring_dir="/home/$username/.local/share/keyrings" + mkdir -p "$keyring_dir" + echo "login" > "$keyring_dir/default" + chown -R "$username": "/home/$username/.local/share/keyrings" + chmod 700 "$keyring_dir" + # Power Management action="Power Management" && display "subtitle" "$action" @@ -1227,7 +1248,7 @@ desktop_environment() { action="Audio System" && display "subtitle" "$action" for software in alsa-utils pipewire wireplumber pipewire-pulse \ - pipewire-docs pamixer pulsemixer ffmpeg; do + pipewire-docs pamixer pulsemixer ffmpeg rtkit; do pacman_install "$software" done; # disable the pc speaker beep |
