Add dev script, build prereq installer, and Getting Started docs - #4
Merged
Finesssee merged 4 commits intoFeb 28, 2026
Merged
Conversation
- Add dev.ps1: one-command orchestrator that checks prerequisites, installs them if missing, builds, and launches CodexBar - Add scripts/setup-windows.ps1: automated installer for Rust (rustup + x86_64-pc-windows-gnu target) and MinGW-w64 (WinLibs) - Update README.md with a Getting Started section covering quick start, download, and manual build paths - Update .gitignore to allow tracked PowerShell scripts (dev.ps1, scripts/*.ps1) while keeping local .ps1 files ignored The GNU toolchain requires MinGW-w64 (for dlltool.exe and the linker), which was not documented. New contributors can now clone and run .\dev.ps1 to get a working build environment automatically. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The test_server references were added in 73a3703 (upstream port) but the module file and declaration were never included, causing build failures. This adds the missing module that provides a TCP-based test input server for automated UI testing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
dev.ps1 now prepends known tool paths (~/.cargo/bin, C:\mingw64\bin) to the current session PATH if the directories exist, so builds work without requiring a terminal restart after setup. Also fixes .EXAMPLE references from start.ps1 to dev.ps1. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
cargo with x86_64-pc-windows-gnu places binaries under
target/x86_64-pc-windows-gnu/{debug,release}/ instead of
target/{debug,release}/. Search both paths.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Collaborator
|
Thanks for the PR! Great developer experience improvements — the one-click dev script and setup installer make onboarding much smoother. Merged. |
darknight105
added a commit
to darknight105/Win-CodexBar
that referenced
this pull request
Jul 3, 2026
…Show Window Addresses review items nesszer#3 and nesszer#4 (structure, not behavior). The "Pop Out Dashboard" flyout and "Show Window" were two mutually-exclusive states of the single main window, so opening one closed the other. Give the flyout its own OS window (label "flyout", modeled on the detached settings/ floatbar windows) so the two coexist; the flyout keeps blur-to-dismiss. StoredSize map (load_size/save_size) in geometry_store backs set_flyout_size, so the surface command layer no longer leaks geometry-store coordinate details or blurs size-vs-position semantics. window rather than a "mode != TrayPanel" negative special-case threaded through shared window-layout code. - New shell/flyout_window.rs: builder with disable_drag_drop_handler() (required for the provider-grid HTML5 drag-reorder), open/toggle/hide/is_open, and its own Focused-blur handler porting all four anti-flicker guards. - Tray left-click and "Pop Out Dashboard" open the flyout window; "Show Window" stays on the main window. Both can now be open at once.
20 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
dev.ps1— One-command orchestrator: checks for Rust and MinGW-w64, installs them if missing viascripts/setup-windows.ps1, then builds and launches CodexBarscripts/setup-windows.ps1— Automated prerequisite installer that sets up Rust (rustup +x86_64-pc-windows-gnutarget) and MinGW-w64 (WinLibs UCRT) with PATH configuration.\dev.ps1), download, and manual build paths; fixed code block language tags frombashtopowershell.gitignore— Added negation rules fordev.ps1andscripts/*.ps1so tracked project scripts aren't ignored by the existing*.ps1ruleMotivation
Building from source currently requires undocumented prerequisites — specifically MinGW-w64 (for
dlltool.exeand the GNU linker), which is needed because the project targetsx86_64-pc-windows-gnu. New contributors hit cryptic errors like:This PR makes the onboarding experience a single command:
What
dev.ps1supportscodexbar menubar-Release-Verbose-vto CodexBar for debug logging-SkipBuildWhat
setup-windows.ps1installsrustup-init.exe(ifcargonot found)x86_64-pc-windows-gnutarget viarustup target add(if not installed)C:\mingw64(ifdlltoolnot found)~/.cargo/binandC:\mingw64\binto the user PATHrustc,cargo,dlltool, andgccare all accessibleTest plan
.\dev.ps1and verify it installs prerequisites and builds successfully.\dev.ps1on a machine with Rust + MinGW already installed — verify it skips setup and goes straight to build.\dev.ps1 -Releaseand confirm release binary is produced.\dev.ps1 -Verboseand confirm debug logging output.\scripts\setup-windows.ps1standalone and verify all 4 tools pass verification🤖 Generated with Claude Code