Repository navigation
Tags
Tags
1. Installer & Upgrades Crashing WiX Fix ( tauri.conf.json ): Switched the bundle target from "all" to ["nsis"]. This prevents a virtual memory limit crash in WiX's 32-bit linker (light.exe) when bundling large runtime assets. Auto-Upgrade Process Killer ( hooks.nsi ): Added a PREINSTALL macro hook. When upgrading the app, it runs a silent PowerShell command to close any active Blinky or Python processes in AppData\Local\Blinky first, resolving the "Error opening file for writing" error. Bundled Missing Assets ( tauri.conf.json ): Added the root python/ directory (wake word engine) and windows/python/ (platform-specific capture and OCR scripts) into Tauri's bundle resources. Direct EXE Resolution ( lib.rs ): Programmed the Rust backend to resolve the portable Python executable directly in the root directory if it has no nested Scripts/ or bin/ folders. 2. Installer Size Shrinking (Saved ~230MB Installed / ~37MB Packaged) Playwright Browser Deferral: Removed the pre-downloaded chromium browser binary (~100MB compressed) from the bundle assets. Post-Install Downloader ( post_install.py ): Created a lightweight Tkinter setup GUI that launches automatically after installation to let users optionaly download the browser binary and Ollama on-demand. Requirements Cleanup ( requirements.txt ): Removed testing dependencies like pytest and pytest-asyncio from the production dependencies. Aggressive Python Pruning ( prepare-python-runtime.mjs ): Optimized the script to strip out: Python stdlib test suites (Lib/test), documentation (Doc/), IDLE editor (idlelib), and build headers (include, libs). .dist-info records and .chm help files. Recursively removed nested tests/ directories inside all dependencies (e.g. numpy/random/tests), fixing a build failure. Wiped pip itself once bootstrap setup was finished. Installer Size Reduction: Shrank the NSIS installer down to 94.9 MB (previously 131.6 MB). 3. SearXNG & Search Reliability IPv6 Loopback Fix ( pipeline.py & searxng_client.py ): Switched the default SearXNG address from localhost:8888 to 127.0.0.1:8888 to bypass Windows DNS resolving localhost to the IPv6 address ::1 (which Docker containers on Windows don't listen on by default). Public Fallbacks ( pipeline.py ): Added a fallback routing mechanism to try high-uptime public SearXNG instances (etsi.me, grep.vim.wtf, baresearch.org, failsearx.culturanerd.it) in order, if the local Docker container is offline. Environment Variable Support ( websocket.rs ): Forwarded BLINKY_SEARXNG_URL from .env to the Python backend so you can configure custom instances. 4. Subprocess Self-Healing Runtime Auto-Installers ( agent_router.py & browser_controller.py ): Programmed runtime exception handlers to automatically download/repair Playwright browser dependencies or fallback to alternative browsers (like Microsoft Edge) dynamically if a component crashes during execution.