Commit Graph

554 Commits

Author SHA1 Message Date
vasilito bea8595fd4 docs: update local driver-manager execution notes 2026-05-09 01:34:16 +01:00
vasilito 4c6a53c76d fix: update phase0 boot evidence diagnostics 2026-05-09 01:33:45 +01:00
vasilito 4672ddd20c fix: expose driver-manager boot observability 2026-05-09 01:33:34 +01:00
vasilito bf803aed94 fix: pass driver-manager PCI targets to wifi 2026-05-09 01:33:22 +01:00
vasilito 8ea2ac82ed fix: add driver-core removal lifecycle 2026-05-09 01:33:08 +01:00
vasilito 84416f679e fix: harden driver-manager lifecycle 2026-05-09 01:32:57 +01:00
vasilito c1f2082a72 docs: -i interactive TUI convention in local/AGENTS.md
All Red Bear desktop apps use -i/--interactive for TUI mode.
Pattern: ratatui 0.30 + termion, feature-gated behind 'tui' feature.
Apps: cub, redbear-info, redbear-netctl.
2026-05-08 12:16:19 +01:00
vasilito 987350d9f5 fix: cub -i interactive flag, -S auto-build on Linux 2026-05-08 12:09:51 +01:00
vasilito cd6d23b3b4 fix: cub production recipe, serde_derive import, minor cleanup
- recipe: use cargo install for proper binary installation
- aur.rs: serde_derive for explicit derive path
- main.rs: final noconfirm/force flow cleanup
2026-05-08 11:58:36 +01:00
vasilito 12d773a380 feat: -i interactive ratatui TUI for redbear-info and redbear-netctl
- redbear-info: -i launches ratatui dashboard (System/Hardware/Network/Integrations/Health tabs)
- redbear-netctl: -i wires existing netctl-console ratatui TUI
- Same -i switch convention as cub
- Feature-gated behind 'tui' feature for both apps
2026-05-08 11:56:55 +01:00
vasilito 01d3cec897 fix: TUI spawns current_exe() instead of hardcoded 'cub' in PATH 2026-05-08 11:48:45 +01:00
vasilito 7ec448504f fix: PKGBUILD shell variable resolver, TUI auto-fetch before build, AurClient Result fix
- resolve_shell_vars(): handles ${var}, $var, ${var%suffix} patterns
- nushell-git ($_pkgname-git) now resolves correctly to nushell-git
- TUI start_build_selected() auto-fetches AUR PKGBUILD if not cached
- Fix AurClient::new() Result handling in app.rs
- 70 tests pass (1 new: resolves_shell_variables)
2026-05-08 11:40:36 +01:00
vasilito ee66b92218 fix: TUI always launches CubApp (infallible init), depresolve module, cub binary unified
- lib.rs: removed fallback help screen, always launches ratatui CubApp
- app.rs: CubApp::new() infallible — fallback to /tmp/.cub if HOME missing
- app.rs: AUR client graceful fallback (None on error or AUR_OFFLINE)
- storage.rs: from_root() made pub for fallback store construction
- depresolve.rs: yay-style topological sort + provider + circular detection
- cubl→cub: unified binary name, OS detection via cfg!(target_os)
- 69 tests pass, 0 failures, clean build
2026-05-08 11:23:44 +01:00
vasilito 8b5d9209c0 feat: yay-style dependency resolution (topological sort, providers, circular detection)
- depresolve.rs: resolve_build_order() with iterative topological sort
- Provider resolution for virtual packages
- Circular dependency detection and component extraction
- resolve_deps_recursive() for AUR→Redox recursive resolution
- 4 tests: linear, circular, providers, make deps
2026-05-08 11:17:07 +01:00
vasilito 1a46659555 fix: noconfirm auto-selects first AUR match 2026-05-08 11:01:02 +01:00
vasilito 2fb61f3cde feat: yay-style combined flags (-Sdy, -Sdd, -Sfyu), --noconfirm, -Gp, -Scc
- Combined short flags expand: -Sdy → install --noconfirm
- -Gp prints raw PKGBUILD from AUR
- -Scc cleans all caches including ~/.cub/tmp/
- --noconfirm skips interactive prompts
- Deduplicated flag expansion, added to global flag list
2026-05-08 08:16:50 +01:00
vasilito ccb3e319bf fix: all cub/cubl operations now use ~/.cub/
- import saves to ~/.cub/recipes/ (primary, not CWD)
- build temp dirs use ~/.cub/tmp/ (not /tmp)
- AUR clone temp dirs use ~/.cub/tmp/
- cub_temp_dir() replaces create_temp_dir()
- removed old create_temp_dir (dead code)
2026-05-08 07:47:05 +01:00
vasilito 1a281b6805 fix: --import-aur now saves to both CWD and ~/.cub/ 2026-05-08 07:43:13 +01:00
vasilito 8557b30fd0 fix: extract PKGBUILD build()/package() bodies for Custom templates
- extract_bash_function() extracts bash function bodies by brace-matching
- Custom template now populates build_script from build() body
- Custom template now populates install_script from package() body
- Fixes 'custom builds require prepare/build/install instructions' error
2026-05-08 07:39:37 +01:00
vasilito 83fec96974 fix: cubl exact-match AUR search, numbered ambiguity menu, PKGBUILD-not-found handling 2026-05-08 07:32:38 +01:00
vasilito c7ed251250 fix: cubl AUR search on Linux, graceful pkgutils fallback
- search now queries AUR directly on Linux (skips pkgutils repo)
- install -S offers AUR fetch + recipe conversion on Linux
- update-all, remove, query-* show helpful error on Linux
- host_only_notice() helper for consistent messaging
2026-05-08 00:47:51 +01:00
vasilito 8b45905b5b fix: restore ratatui deps in cub-tui, add cubl host recipe 2026-05-08 00:41:13 +01:00
vasilito 950edaa65f cub: full AUR package manager + Phase 1-5 native build tools
cub redesign (local/recipes/system/cub/):
- AUR RPC v5 client (serde_json) with search/info
- ~/.cub/ user-local recipe/source/repo storage
- Enhanced PKGBUILD parser: optdepends, .SRCINFO, split packages, 19 linuxism patterns
- Recipe generation: host: prefix on dev-deps, shallow_clone, cargopath, installs, optional-packages
- Dependency resolver: scans build errors for missing commands/headers/libs/pkgconfig, maps to packages
- Dependency installation: checks installed packages, fetches AUR deps, interactive prompt
- ~110 Arc→Redox dependency mappings
- ratatui TUI: search, info, install, build, query views
- 14 Arch-style CLI switches (-S/-Si/-Syu/-G/-R/-Q/-Qi/-Ql)
- 65 tests, 0 failures, clean build

Phase 1-5 native build tools (local/recipes/dev/):
- P1 Substrate: tar, m4, diffutils (gnulib bypass), mkfifo kernel patch (1085 lines)
- P2 Build Systems: bison, flex, meson (standalone wrapper), ninja-build, libtool
- P3 Native GCC: gcc-native, binutils-native (cross-compiled for redox host)
- P4 Native LLVM: llvm-native (clang + lld from monorepo)
- P5 Native Rust: rust-native (rustc + cargo)
- Groups: build-essential-native, dev-essential expanded

Config:
- redbear-mini: +7 tools (diffutils, tar, bison, flex, meson, ninja, m4)
- redbear-full: +4 native tools (gcc, binutils, llvm, rust)
- All recipes moved to local/ with symlinks for cookbook discovery (Red Bear policy)

Docs:
- BUILD-TOOLS-PORTING-PLAN.md: phased porting roadmap
- CUB-WORKFLOW-ASSESSMENT.md: gap analysis and integration assessment
2026-05-08 00:13:31 +01:00
vasilito b3efb0e400 fix: handle nullable Cub AUR fields 2026-05-07 21:20:15 +01:00
vasilito 27daa8e1f0 feat: add Cub cook autodetect strategy 2026-05-07 21:19:24 +01:00
vasilito d2c1c1a5b1 fix: type Cub AUR out-of-date visitor 2026-05-07 21:18:34 +01:00
vasilito 3917bf5dfe style: format Cub TUI module 2026-05-07 21:17:45 +01:00
vasilito c03165e98d style: format Cub library modules 2026-05-07 21:17:24 +01:00
vasilito eeec04b0a9 style: format Cub CLI code 2026-05-07 21:17:06 +01:00
vasilito 7316ffc203 fix: parse Cub AUR responses with serde 2026-05-07 21:15:48 +01:00
vasilito 8cd3f6035a docs: document Cub package manager 2026-05-07 21:15:08 +01:00
vasilito f5d8431c08 fix: harden Cub git and tempdir handling 2026-05-07 21:14:48 +01:00
vasilito 6f431603a3 fix: harden Cub CLI runtime fallbacks 2026-05-07 21:08:55 +01:00
vasilito ce4c6beb24 feat: build Cub CLI and TUI workflows 2026-05-07 20:57:51 +01:00
vasilito a77325310b feat: add Cub recipe storage and TUI shell 2026-05-07 20:57:33 +01:00
vasilito 8920083308 feat: add Cub package backend modules 2026-05-07 20:57:11 +01:00
vasilito 37d6e51ad4 fix: adapt KF6 pty and language dialog 2026-05-07 20:56:52 +01:00
vasilito 8932eccf65 fix: add remaining KF6 PIC flags 2026-05-07 20:56:35 +01:00
vasilito f92886b990 fix: add KF6 widget PIC flags 2026-05-07 20:56:16 +01:00
vasilito 0aceb22e55 fix: add KF6 PIC build flags 2026-05-07 20:55:56 +01:00
vasilito 6949e3e869 fix: relax KF6 CMake link targets 2026-05-07 20:55:36 +01:00
vasilito e13b14cdeb fix: guard Qt Wayland empty cursors 2026-05-07 20:55:17 +01:00
vasilito 882c2974ec fix: harden Qt Wayland listener generation 2026-05-07 20:54:59 +01:00
vasilito 182f5dafa1 fix: stabilize linux-kpi mac80211 tx stats layout 2026-05-07 20:54:41 +01:00
vasilito bc7ca1f035 fix: clean linux-kpi memory helpers 2026-05-07 20:54:24 +01:00
vasilito 68cea5a830 fix: clean linux-kpi DRM shim warnings 2026-05-07 20:54:04 +01:00
vasilito de1398c772 fix: map virtio GPU BAR from pcid handoff 2026-05-07 20:53:44 +01:00
vasilito ebd3da74d0 fix: stop redox-drm on terminal scheme EBADF 2026-05-07 20:53:27 +01:00
vasilito e90a637fd3 fix: remove unreachable redox-drm driver match 2026-05-07 20:53:09 +01:00
vasilito 94f5ceed78 fix: wire redox-drm handoff patches 2026-05-07 20:52:51 +01:00