diff options
| -rw-r--r-- | todo.org | 330 |
1 files changed, 174 insertions, 156 deletions
@@ -120,83 +120,75 @@ The script handles edge cases gracefully, provides detailed error messages with *Why this is Method 1:* Can't build testing infrastructure or maintain packages if the script doesn't work. This is the foundation—everything else depends on reliable execution. *** TODO [#A] Make Hyprland Bulletproof and Comfy -**** DONE [#A] Fix Hyprland Configuration Issues -CLOSED: [2026-01-25 Sun] + All critical issues resolved. Remaining sub-items are "consider" tasks for future enhancements. -***** DONE [#B] Consider Hyprland Plugins -CLOSED: [2026-01-25 Sun] -Official plugins: https://github.com/hyprwm/hyprland-plugins -Install via hyprpm (added cpio dependency to archsetup). +**** TODO [#B] waybar's network monitor should change color when there's no network available. +If the network is down, the user will need some kind of indication to help them debug. The network icon change to a red color when there are no network connections available. we should also ensure we're using themed colors from the dupre theme. -Interesting plugins: +**** TODO [#B] waybar's temperature monitor should change color when hot. +Consider the temperature at which the CPU is getting "too hot". define two temperature thresholds that are "approaching too hot" (when the user should begin paying attention) and "nearly too hot" (when it's approaching a temperature where the user should take action). have the color change to yellow when it's approaching the first threshold, and red when it approaches the second. we'll be using themed colors from the dupre theme. -****** hyprscrolling (INTERESTED) -Arranges windows in vertical columns that scroll horizontally - like a paper tape. -Instead of tiling in a grid, windows line up side-by-side and you scroll through them. -Note: Still marked "work in progress" - may have rough edges. +**** TODO [#B] waybar's storage monitor should change color when approaching full. +waybar's storage monitor should change color when it approaches full, to allow the user to take action. note that since this system could be running on zfs, btrfs, and ext4 file systems, this should work no matter which of these filesystems we are running on. When storage is at or over 80% full, the color of the storage icon on the waybar panel should turn yellow. When the storage is at or over 90$ full, it should be red. we'll be using themed colors form the dupre theme. -Options: -- column_width: default column width (0.5 = half monitor) -- explicit_column_widths: widths to cycle through ("0.333, 0.5, 0.667, 1.0") -- fullscreen_on_one_column: maximize when only one column -- focus_fit_method: 0=center focused column, 1=just fit on screen -- follow_focus: auto-scroll when focusing a window +**** TODO [#B] waybar's volume module should not change color when muted. +When the monitor color darkens, it's difficult to see. It should always be clear. changing the icon and text to MUTED is enough of a visual cue. -****** xtra-dispatchers (INTERESTED) -Adds 4 new dispatcher commands: - -| Dispatcher | What it does | -|-------------------------------------+-----------------------------------------------| -| plugin:xtd:moveorexec WINDOW,CMD | Move window here, or launch if not running | -| plugin:xtd:throwunfocused WORKSPACE | Send all unfocused windows away (focus mode!) | -| plugin:xtd:bringallfrom WORKSPACE | Bring all windows from another workspace | -| plugin:xtd:closeunfocused | Close all unfocused windows | - -throwunfocused is useful for focus mode - declutter workspace, then bringallfrom to restore. -closeunfocused is handy for cleaning up. +**** TODO [#D] Consider Customizing Hyprland Animations +Current: windows pop in, scratchpads slide from bottom. -****** Other official plugins -- hyprbars: window title bars -- hyprexpo: workspace overview (like macOS Mission Control) -- hyprfocus: flash effect when changing focus -- hyprtrails: window trail effects (eye candy) -- borders-plus-plus: extra border layers (cosmetic) -- hyprwinwrap: use any app as wallpaper +Customizable animations: +- windows / windowsOut / windowsMove - window open/close/move +- fade - opacity changes +- border / borderangle - border color and gradient angle +- workspaces - workspace switching +- specialWorkspace - scratchpads (currently slidevert) +- layers - waybar, notifications, etc. -***** DONE [#C] Evaluate Hyprland Layout Options -CLOSED: [2026-01-25 Sun] -Current layouts: master (left/top/center), dwindle. No deck layout available natively. +Styles: slide, slidevert, popin X%, fade +Parameters: animation = NAME, ON/OFF, SPEED, BEZIER, STYLE +Speed: lower = faster (1-10 typical) -Options to consider: -1. Restrict to commonly used layouts only (remove unused from cycle) -2. Add hy3 plugin for i3-style manual tiling (horizontal/vertical/tab groups) +Example tweaks: +#+begin_src conf +animation = windows, 1, 2, myBezier, popin 80% +animation = workspaces, 1, 4, default, slide +animation = fade, 1, 2, default +animation = layers, 1, 2, default, fade +#+end_src -hy3 plugin: -- URL: https://github.com/outfoxxed/hy3 -- Provides: horizontal splits, vertical splits, tab groups, autotiling -- Does NOT provide deck layout -- Requires different dispatchers (hy3:movefocus, hy3:makegroup, etc.) +**** VERIFY [#C] Verify gammastep and geoclue fix +Ensure after reboot there is no error. +Ensure gamma changes at night +**** VERIFY [#D] Test wlogout menu on laptop +Test wlogout exit menu on laptop to verify sizing works on different display. +Current config uses fixed pixel margins - may need adjustment for laptop screen. -Other layout plugins (none have deck): -- hyprNStack: N-stack tiling -- hyprscroller: PaperWM-style scrolling -- hyprRiver: River-inspired layouts +**** VERIFY [#D] Test hy3 tab bar theming colors +Test the monocle/tab group mode to verify hy3 tab bar colors look correct with dupre and hudson themes. +Run =set-theme dupre= and =set-theme hudson= while in tab group mode ($mod SHIFT M). -Decision: Keep current setup or adopt hy3 for more flexible manual tiling. +**** DONE [#B] Review scripts and configs in dotfiles +CLOSED: [2026-01-27 Tue 05:34] +112 scripts across system and hyprland dotfiles. Many are from DWM/X11 era. +- Identify scripts still in use vs obsolete +- Migrate useful dmenu scripts to fuzzel for Wayland +- Remove or archive unused scripts +- Remove config files for apps no longer installed -***** CANCELLED [#C] Consider Pywal for Dynamic Theming +**** CANCELLED [#C] Consider Pywal for Dynamic Theming CLOSED: [2026-01-26 Mon] Use pywal to generate color schemes from wallpaper. Reference: reference-repos/kastrbl4nik-dots/ Tools: swww (wallpaper), wal (colors), pywalfox (Firefox), pywal-spicetify (Spotify) -****** How pywal works +***** How pywal works 1. Run =wal -i /path/to/wallpaper.jpg= 2. Analyzes image and extracts 16-color palette 3. Colors written to =~/.cache/wal/colors.json= (and other formats) 4. Apps read from these files or use templates that pywal fills in -****** Reverting to original theme +***** Reverting to original theme Pywal doesn't overwrite original configs - you either: - Use templates (pywal fills in colors, copies to config locations) - Have configs that source from =~/.cache/wal/= files @@ -205,14 +197,14 @@ Pywal doesn't overwrite original configs - you either: Save/restore themes: =wal --theme= lists saved themes, =wal -f theme-name= restores. Could save current goldenrod scheme and switch back anytime. -****** Emacs integration +***** Emacs integration - Pywal works with Emacs but requires extra setup - =ewal= package reads pywal colors from =~/.cache/wal/colors.json= and creates Emacs theme - Terminal Emacs (=-nw=) inherits terminal colors automatically - GUI Emacs (emacsclient -c) needs ewal or similar explicit integration - Adds complexity; replaces carefully-tuned theme with auto-generated colors -****** Auto-trigger on wallpaper change +***** Auto-trigger on wallpaper change Option 1 - Wrapper script (simplest): #+begin_src sh #!/bin/sh @@ -228,13 +220,13 @@ Waypaper has post-command setting in config - set to run =wal -i= after wallpape Option 3 - File watcher: Watch =~/.cache/swww/= for changes and trigger wal automatically. More complex. -****** Considerations +***** Considerations - Best for: unified colors across apps, variety, matching wallpaper - Less ideal for: specific color scheme you love, consistency, carefully tuned app colors - Some wallpapers produce great palettes; others produce muddy low-contrast results - Current goldenrod/dark gray theme works well - pywal would replace it -***** CANCELLED [#D] Consider improving waybar netspeed click responsiveness +**** CANCELLED [#D] Consider improving waybar netspeed click responsiveness CLOSED: [2026-01-26 Mon] The network module has a 1-second sleep to measure throughput, causing occasional missed clicks when toggling the scratchpad. Options if this becomes annoying: @@ -242,30 +234,7 @@ missed clicks when toggling the scratchpad. Options if this becomes annoying: 2. Background daemon approach (separate process writes to file, script just reads it) Current interval: 2 seconds. Script runtime: ~1 second. -***** TODO [#C] Consider Customizing Hyprland Animations -Current: windows pop in, scratchpads slide from bottom. - -Customizable animations: -- windows / windowsOut / windowsMove - window open/close/move -- fade - opacity changes -- border / borderangle - border color and gradient angle -- workspaces - workspace switching -- specialWorkspace - scratchpads (currently slidevert) -- layers - waybar, notifications, etc. - -Styles: slide, slidevert, popin X%, fade -Parameters: animation = NAME, ON/OFF, SPEED, BEZIER, STYLE -Speed: lower = faster (1-10 typical) - -Example tweaks: -#+begin_src conf -animation = windows, 1, 2, myBezier, popin 80% -animation = workspaces, 1, 4, default, slide -animation = fade, 1, 2, default -animation = layers, 1, 2, default, fade -#+end_src - -***** CANCELLED [#D] Consider "show desktop" toggle via empty special workspace +**** CANCELLED [#D] Consider "show desktop" toggle via empty special workspace CLOSED: [2026-01-25 Sun 21:13] I think what I really want is the throw to other workspace dispatcher. @@ -276,34 +245,95 @@ Implementation: bind = $mod, Z, togglespecialworkspace, desktop #+end_src -***** DONE Scratchpads not spawning on keybind +**** DONE [#B] Consider Hyprland Plugins +CLOSED: [2026-01-25 Sun] +Official plugins: https://github.com/hyprwm/hyprland-plugins +Install via hyprpm (added cpio dependency to archsetup). + +Interesting plugins: + +***** hyprscrolling (INTERESTED) +Arranges windows in vertical columns that scroll horizontally - like a paper tape. +Instead of tiling in a grid, windows line up side-by-side and you scroll through them. +Note: Still marked "work in progress" - may have rough edges. + +Options: +- column_width: default column width (0.5 = half monitor) +- explicit_column_widths: widths to cycle through ("0.333, 0.5, 0.667, 1.0") +- fullscreen_on_one_column: maximize when only one column +- focus_fit_method: 0=center focused column, 1=just fit on screen +- follow_focus: auto-scroll when focusing a window + +***** xtra-dispatchers (INTERESTED) +Adds 4 new dispatcher commands: + +| Dispatcher | What it does | +|-------------------------------------+-----------------------------------------------| +| plugin:xtd:moveorexec WINDOW,CMD | Move window here, or launch if not running | +| plugin:xtd:throwunfocused WORKSPACE | Send all unfocused windows away (focus mode!) | +| plugin:xtd:bringallfrom WORKSPACE | Bring all windows from another workspace | +| plugin:xtd:closeunfocused | Close all unfocused windows | + +throwunfocused is useful for focus mode - declutter workspace, then bringallfrom to restore. +closeunfocused is handy for cleaning up. + +***** Other official plugins +- hyprbars: window title bars +- hyprexpo: workspace overview (like macOS Mission Control) +- hyprfocus: flash effect when changing focus +- hyprtrails: window trail effects (eye candy) +- borders-plus-plus: extra border layers (cosmetic) +- hyprwinwrap: use any app as wallpaper + +**** DONE [#C] Evaluate Hyprland Layout Options +CLOSED: [2026-01-25 Sun] +Current layouts: master (left/top/center), dwindle. No deck layout available natively. + +Options to consider: +1. Restrict to commonly used layouts only (remove unused from cycle) +2. Add hy3 plugin for i3-style manual tiling (horizontal/vertical/tab groups) + +hy3 plugin: +- URL: https://github.com/outfoxxed/hy3 +- Provides: horizontal splits, vertical splits, tab groups, autotiling +- Does NOT provide deck layout +- Requires different dispatchers (hy3:movefocus, hy3:makegroup, etc.) + +Other layout plugins (none have deck): +- hyprNStack: N-stack tiling +- hyprscroller: PaperWM-style scrolling +- hyprRiver: River-inspired layouts + +Decision: Keep current setup or adopt hy3 for more flexible manual tiling. + +**** DONE Scratchpads not spawning on keybind mod+shift+return toggles special workspace (screen dims) but foot terminal doesn't spawn. - Manual spawn works: =foot -T spterm tmux= - Fixed pgrep self-match issue (bracket trick) - Fixed windowrule syntax (match:class first, then rule) - Still not working - need further investigation -***** DONE Wofi launcher can't be dismissed +**** DONE Wofi launcher can't be dismissed CLOSED: [2026-01-25 Sun 20:50] mod+space launches wofi but mod+space and mod+shift+c don't dismiss it. Need to configure proper dismiss keybinding. -***** DONE No wallpaper displaying +**** DONE No wallpaper displaying Desktop has no wallpaper. Need to set up swww or similar. -***** DONE Verify foot -T flag sets window title correctly +**** DONE Verify foot -T flag sets window title correctly Need to confirm foot uses -T for title (vs -t or --title). -***** DONE Pulsemixer scratchpad sizing different from others +**** DONE Pulsemixer scratchpad sizing different from others mod+a pulsemixer scratchpad appears to be sized differently than other scratchpads. All use same rules: size (monitor_w*0.6) (monitor_h*0.6). Investigate why it differs. -***** DONE Waybar wireplumber volume control not working +**** DONE Waybar wireplumber volume control not working CLOSED: [2026-01-25 Sun 20:50] Click to mute and scroll to adjust not responding. Config uses wpctl commands. May need to verify wpctl is working or try different approach. -***** DONE Waybar clock not displaying +**** DONE Waybar clock not displaying Clock module is configured correctly but not showing on bar. - Config and style.css are stowed correctly - Font (FiraCode Nerd Font Mono) is installed @@ -311,120 +341,67 @@ Clock module is configured correctly but not showing on bar. - Other modules (tray, disk, workspaces) appear to work - Reference config in reference-repos/hyprland-dotfiles/waybar/ -***** DONE [#B] Add caffeine replacement for Hyprland +**** DONE [#B] Add caffeine replacement for Hyprland CLOSED: [2026-01-26 Sun] Added waybar idle_inhibitor module as caffeine replacement. Click to toggle; prevents screen lock/sleep when activated. -***** DONE [#B] Fill out the exit menu for Hyprland +**** DONE [#B] Fill out the exit menu for Hyprland CLOSED: [2026-01-26 Sun] Created wlogout exit menu with dupre theme and nerd font icons. Keybinding: $mod SHIFT Q. Uses pgrep to prevent multiple instances. -***** TODO [#C] Test wlogout menu on laptop -Test wlogout exit menu on laptop to verify sizing works on different display. -Current config uses fixed pixel margins - may need adjustment for laptop screen. - -***** DONE [#B] Fix rseed32 issue in console at boot +**** DONE [#B] Fix rseed32 issue in console at boot CLOSED: [2026-01-26 Mon] Attempted clearcpuid=rdseed kernel parameter but it doesn't suppress the message. The kernel detection runs separately and still logs the warning. Proper fix requires a BIOS update from Framework with newer AGESA microcode. Reverted the workaround since it's cosmetic only - the kernel already mitigates the actual security issue. -***** DONE [#B] Prune desktop files from application menu +**** DONE [#B] Prune desktop files from application menu CLOSED: [2026-01-26 Mon] Hide unwanted .desktop entries from fuzzel/app launcher. Created ~90 NoDisplay=true overrides in dotfiles/hyprland/.local/share/applications/. -***** TODO [#B] Review scripts and configs in dotfiles -112 scripts across system and hyprland dotfiles. Many are from DWM/X11 era. -- Identify scripts still in use vs obsolete -- Migrate useful dmenu scripts to fuzzel for Wayland -- Remove or archive unused scripts -- Remove config files for apps no longer installed - -***** DONE [#C] Standardize font size and name across theme configs +**** DONE [#C] Standardize font size and name across theme configs CLOSED: [2026-01-26 Mon] - Changed font to BerkeleyMono Nerd Font (patched version) across all configs - Standardized point-based configs (foot, fuzzel, dunstrc, Xresources) to 13pt - Added comments explaining unit type (points vs pixels) in each config - Waybar CSS kept at 14px with explanatory comment -***** DONE [#B] Color theming the hy3 tab bar in monocle view +**** DONE [#B] Color theming the hy3 tab bar in monocle view CLOSED: [2026-01-26 Mon] Added hy3 plugin tab bar colors to set-theme script for both dupre and hudson themes. Replaces default bright cyan with theme-appropriate colors. Dupre: active bg+2/steel, inactive gray+2, urgent red, locked cyan. Hudson: active #444/#bbb, inactive #c5c8c6, urgent red, locked cyan. -***** TODO [#C] Test hy3 tab bar theming colors -Test the monocle/tab group mode to verify hy3 tab bar colors look correct with dupre and hudson themes. -Run =set-theme dupre= and =set-theme hudson= while in tab group mode ($mod SHIFT M). - -***** DONE [#C] Consider breaking out Hardware Workarounds as separate section +**** DONE [#C] Consider breaking out Hardware Workarounds as separate section CLOSED: [2026-01-26 Mon] Removed the Hardware Workarounds section from archsetup entirely. The only workaround (AMD Zen 5 RDSEED32) didn't actually suppress the warning message - the kernel detection runs separately. Proper fix requires BIOS updates from vendors with AGESA microcode. -*** TODO [#A] Fix sleep/suspend on Framework Laptop (velox only) +*** TODO [#A] Ensure sleep/suspend works on laptops Critical functionality for laptop use - current battery drain unacceptable **NOTE:** This applies to Framework Laptop (velox), not Framework Desktop (ratio) Add kernel parameter: ~rtc_cmos.use_acpi_alarm=1~ (will become systemd default) Consider: ~acpi_mask_gpe=0x1A~ for battery drain, suspend-then-hibernate config See Framework community notes on logind.conf and sleep.conf settings -*** TODO [#B] Review slow and failed packages from 8GB RAM test -See [[file:docs/slow-failed-packages.org][Slow and Failed Packages Analysis]] - -Test run from 2025-11-09 with 8GB RAM, 50GB disk identified: -- 2 packages that hang indefinitely (anki, tageditor) -- 4 packages that fail to install (nitrogen, gtk-engine-murrine, adwaita-color-schemes, vagrant) -- Several slow but successful packages (multimarkdown, ptyxis, thunderbird, etc.) - -High priority actions: -- Remove or make optional: anki (hangs 98 min), tageditor (hangs on qt5-webengine) -- Investigate repository/build issues for failing packages - -*** TODO [#B] Improve error handling: UFW firewall, rmmod pcspkr, mkdir missing quotes -**** DONE [#B] Fix UFW firewall error handling (archsetup:395,410) -CLOSED: [2026-01-21 Wed] -Firewall failures use ~|| error "error"~ which logs but continues - system may be left exposed -Should use ~|| error "crash"~ or validate rules were applied successfully -RESOLVED: Added firewall verification after setup (checks "ufw status | grep Status: active"). -If verification fails, displays CRITICAL SECURITY WARNING in outro with manual fix commands. -**** DONE [#B] Fix rmmod pcspkr error (archsetup:588) -CLOSED: [2026-01-21 Wed] -~rmmod pcspkr~ doesn't check if module is loaded, produces error if already unloaded -Should use ~rmmod pcspkr 2>/dev/null || true~ or check with ~lsmod~ -RESOLVED: Changed to ~rmmod pcspkr 2>/dev/null || true~ -**** DONE [#B] Fix mkdir missing quotes (archsetup:247) -CLOSED: [2026-01-21 Wed] -Line 247: ~mkdir -p $source_dir~ should be ~mkdir -p "$source_dir"~ - fails if path contains spaces -RESOLVED: Current code at line 577 properly quotes: ~(mkdir -p "$source_dir")~ - -*** TODO [#B] Test complete end-to-end run on fresh VM -Validates the script actually works in a clean environment (blocks claiming Method 1 complete) - -*** TODO [#B] Make all error messages actionable with recovery steps +*** TODO [#B] All error messages should be actionable with recovery steps Currently just reports errors without guidance on how to fix them -*** TODO [#B] Improve progress indicators throughout install -Enhance existing indicators to show what's happening in real-time - -*** TODO [#B] Check that full install logs have timestamps +*** TODO [#B] Full install logs should contain timestamps Verify timestamps exist for debugging failures -*** TODO [#B] Add retry logic to git_install function -pacman_install and aur_install have retry logic, but git_install doesn't - *** TODO [#B] Add input validation for username and paths Variables like ~$username~, ~$source_dir~, and paths are not validated Special characters or malicious input could break the script or cause security issues Should validate inputs match expected patterns (alphanumeric, valid paths, etc.) -*** TODO [#B] Enable TLP power management for Framework Laptop +*** TODO [#B] Enable TLP power management for laptops TLP manages power-saving modes for Wi-Fi, USB, PCIe, Bluetooth, CPU scheduler Install tlp, enable service, add custom Framework 13 config to /etc/tlp.d/01-custom.conf Improves battery life and prevents power-related issues during install/post-install @@ -434,14 +411,20 @@ Some operations log to ~$logfile~, others don't - standardize logging All package installs should log, all system modifications should log, all errors should log with context Makes debugging failed installations easier -*** TODO [#C] Add backup before system file modifications +*** TODO [#B] Add backup before system file modifications Safety net for /etc/X11/xorg.conf.d and other system file edits Files like ~/etc/sudoers~, ~/etc/pacman.conf~, ~/etc/default/grub~ modified without backup If modifications fail or are incorrect, difficult to recover - should backup files to ~.backup~ before modifying -*** TODO [#C] Parse and improve AUR error reporting +*** TODO [#D] Parse and improve AUR error reporting Parse yay errors and provide specific, actionable fixes instead of generic error messages +*** TODO [#D] Improve progress indicators throughout install +Enhance existing indicators to show what's happening in real-time + +*** TODO [#D] Add retry logic to git_install function +pacman_install and aur_install have retry logic, but git_install doesn't + *** TODO [#D] Add cpupower installation and enabling to archsetup cpupower service configures the default CPU scheduler (powersave or performance) Install cpupower, configure /etc/default/cpupower, enable service: ~systemctl enable --now cpupower.service~ @@ -449,6 +432,19 @@ Install cpupower, configure /etc/default/cpupower, enable service: ~systemctl en *** VERIFY [#C] FZF works everywhere Especially the ** expander for all files - may already be fixed, needs verification +*** CANCELLED [#B] Review slow and failed packages from 8GB RAM test +CLOSED: [2026-01-27 Tue 06:24] +See [[file:docs/slow-failed-packages.org][Slow and Failed Packages Analysis]] + +Test run from 2025-11-09 with 8GB RAM, 50GB disk identified: +- 2 packages that hang indefinitely (anki, tageditor) +- 4 packages that fail to install (nitrogen, gtk-engine-murrine, adwaita-color-schemes, vagrant) +- Several slow but successful packages (multimarkdown, ptyxis, thunderbird, etc.) + +High priority actions: +- Remove or make optional: anki (hangs 98 min), tageditor (hangs on qt5-webengine) +- Investigate repository/build issues for failing packages + *** DONE [#A] Fix: no dotfiles were set up on last run CLOSED: [2025-11-13 Wed] RESOLVED - VM test confirms dotfiles are properly stowed as symlinks; all configs and scripts in place @@ -500,6 +496,28 @@ CLOSED: [2026-01-20 Mon] NVMe devices weren't available when ZFS hook tried to import pool at boot. RESOLVED: Added has_nvme_drives() detection and auto-add nvme to mkinitcpio MODULES. +*** DONE [#B] Improve error handling: UFW firewall, rmmod pcspkr, mkdir missing quotes +CLOSED: [2026-01-27 Tue 06:24] +**** DONE [#B] Fix UFW firewall error handling (archsetup:395,410) +CLOSED: [2026-01-21 Wed] +Firewall failures use ~|| error "error"~ which logs but continues - system may be left exposed +Should use ~|| error "crash"~ or validate rules were applied successfully +RESOLVED: Added firewall verification after setup (checks "ufw status | grep Status: active"). +If verification fails, displays CRITICAL SECURITY WARNING in outro with manual fix commands. +**** DONE [#B] Fix rmmod pcspkr error (archsetup:588) +CLOSED: [2026-01-21 Wed] +~rmmod pcspkr~ doesn't check if module is loaded, produces error if already unloaded +Should use ~rmmod pcspkr 2>/dev/null || true~ or check with ~lsmod~ +RESOLVED: Changed to ~rmmod pcspkr 2>/dev/null || true~ +**** DONE [#B] Fix mkdir missing quotes (archsetup:247) +CLOSED: [2026-01-21 Wed] +Line 247: ~mkdir -p $source_dir~ should be ~mkdir -p "$source_dir"~ - fails if path contains spaces +RESOLVED: Current code at line 577 properly quotes: ~(mkdir -p "$source_dir")~ + +*** DONE [#B] Test complete end-to-end run on fresh VM +CLOSED: [2026-01-27 Tue 06:24] +Validates the script actually works in a clean environment (blocks claiming Method 1 complete) + *** DONE [#B] Add random.trust_cpu=off to kernel parameters CLOSED: [2026-01-20 Mon] AMD RDSEED warnings appearing at boot ("RDSEED32 is broken"). |
