# FieldLens Desktop Public build and release mirror for **FieldLens Print**. The private `Admin/fieldlens` repository remains the source of truth. This repository contains only the desktop client needed to build public Windows and Linux installers. ## Releases A push to `main` builds: - `fieldlens-print-windows-x64-setup.exe` - `fieldlens-print-linux-x64.deb` - signed updater artifacts when the persistent Tauri signing key is available - `downloads/latest.json` for the signed Tauri updater - `downloads/release.json` as the stable installer/version feed The workflow publishes them to the Gitea release matching the version in `package.json`. The desktop app uses the signed Tauri updater where supported and falls back to `release.json` for installer-based upgrades such as Debian packages. ## Local build ```bash npm install npm run build npm run bundle:deb ``` Windows cross-build: ```bash cargo install --locked cargo-xwin npm run bundle:windows ``` ## Linux install script Download and run the checked installer: ```bash curl -fsSL https://fieldlens.arrowstack.dev/downloads/install.sh | sh ``` The script supports x86_64/amd64 Debian/Ubuntu-style systems, downloads the public `.deb`, verifies its SHA-256, then installs it with the system package manager. ## Printer queue setup FieldLens Print can create an OS printer queue that appears in normal application print dialogs. 1. Open FieldLens Print. 2. Choose the installed physical printer under **Forward to installed printer**. 3. For network printers, FieldLens detects the RAW/TCP endpoint when the OS exposes it. Otherwise enter the printer address manually as `host:9100`. 4. Click **Create / repair FieldLens Print** and approve the Windows UAC / Linux CUPS elevation prompt. 5. Start RAW capture. 6. In the source application, print to **FieldLens Print**. Windows creates the virtual queue with the selected destination printer's existing driver and points it at `127.0.0.1:9100`, so the captured stream is already in the destination printer's language before FieldLens inspects and forwards it. Linux creates a CUPS queue named `FieldLens-Print` using the selected physical printer's capabilities and device URI. A FieldLens CUPS PDF pre-filter copies the original submitted PDF into `/var/spool/fieldlens-print` before the physical printer driver renders it, then passes the PDF onward unchanged through the normal CUPS filter chain. FieldLens Print watches that spool for capture/decoding while CUPS continues printing normally. USB/shared queues may not expose a RAW/TCP address. In that case the installed-printer selector still supplies the driver for the virtual Windows queue, while the physical destination address must be entered manually.