Files
searchi/docs/LINUX-DESKTOP.md
T

86 lines
5.2 KiB
Markdown
Raw Normal View History

# Linux desktop release build evidence
Current download: [Ubuntu 24.04 x64 desktop 0.1.8](https://tea.karlcom.de/karl/searchi/releases/download/v0.1.8/searchi_0.1.8_amd64.deb).
See [final package checks](NATIVE-FINAL-VALIDATION.md) and
[checksum](https://tea.karlcom.de/karl/searchi/releases/download/v0.1.8/searchi_0.1.8_amd64.deb.sha256).
The current package includes the floating launcher, automatic local discovery,
application search and hybrid relevance cleanup. Native compilation, 56 desktop
tests, runtime provenance, loader checks and packaged CPU startup passed on
Ubuntu 24.04 WSL. Native graphical interaction and other distributions remain
unverified. The historical evidence below records preceding releases.
Source: `a6bf091`, desktop 0.1.3, Ubuntu 24.04 WSL x86-64, kernel
6.18.54.1-microsoft-standard-WSL2, two virtual CPU cores (AMD Ryzen 7 7800X3D).
Locked offline native Cargo release build with `custom-protocol` completed in
2m54s. The existing Windows-built production frontend was copied into the
immutable Linux source snapshot; no separate Linux Node build is claimed.
Verified normal Linux runtime files, decoder resources, licenses and extraction
helper were prepared before compilation. Release extraction verification passed;
normal Google runtime validation then passed 20 dependency records.
The executable is 35451968 bytes, SHA-256
`11cefe0a8ee0f23c7c736d409992b8fe217207c77f934918ccfbf2c8ed1089c4`.
`ldd` resolved 130 library lines with no missing dependencies on this machine.
The vendored reviewed GLib dependency emitted 34 known compiler warnings; this
is not a strict Linux Clippy result. No GPU/model inference was executed here.
Raw build target: `/home/karl/.cache/searchi-validation/desktop-target/release/searchi-desktop`.
Immutable source: `/home/karl/.cache/searchi-validation/linux-desktop-a6bf091`.
This proves native compilation and local loader dependency resolution, not
native UI interaction, runtime resource discovery, clean-machine deployment,
Wayland shortcut operation or broad Linux compatibility.
Native graphical checks remain open.
## Relocated startup
The release binary started outside the build tree in an owned `bin/` directory
with resources under `lib/searchi/`, as required by Tauri's product name.
An isolated test profile reused a copied index and verified local model cache.
The bundled Google process was observed with `--device cpu --role query
--threads 1`; the desktop remained alive afterward. Owned test process groups
were terminated. No user installation or system configuration was changed.
An owned Xvfb display plus `LIBGL_ALWAYS_SOFTWARE=true`, `GALLIUM_DRIVER=llvmpipe`
and WebKit compositor/DMABUF-disable flags were used. Mesa's software setting is
[documented upstream](https://docs.mesa3d.org/envvars.html). No pixel rendering,
keyboard/preview interaction or actual foreground latency is asserted here.
Initial fixture attempts failed because a filesystem-socket readiness check did
not suit WSL and then because resources used the Cargo name instead of product
name. Those were test-layout corrections; the final normal-discovery run passed.
Raw ignored report: `.searchi/qa/linux-desktop-startup-013.json`, SHA-256
`23bfebbd916e1d1e051efd58c5286b193b15014ebfcbaa621e6a5c650338bba5`.
## Debian package preparation
The official Tauri CLI 2.12.2 native tool was fetched from its upstream release
and verified against GitHub's published SHA-256
`35c7b50266256cb6d5f757608d7097a59a5faeb0c75879ee1f504652a9b6087e`.
Tauri generated a Debian package from the existing release binary. A first
candidate accidentally included build-cache files from the validation snapshot
and was never published. A fresh source snapshot now uses the existing verified
resource stager, yielding 33 resource files instead of copying a CMake build tree.
Linux staged `.so` files are excluded from Git like Windows DLLs.
The final Debian preview is published with v0.1.3:
[download](https://tea.karlcom.de/karl/searchi/releases/download/v0.1.3/searchi_0.1.3_amd64.deb)
and [checksum](https://tea.karlcom.de/karl/searchi/releases/download/v0.1.3/LINUX-DESKTOP-SHA256SUMS-0.1.3.txt).
It is 103871912 bytes, SHA-256
`2eb4252a16190353e7ad3074951d0c79ae03124b01bd3b048a72b6ad0efc0adb`.
Public unauthenticated download bytes were verified. Only the desktop executable
was stripped; verified Google and extraction worker resources were preserved.
XZ level-nine compression fits the existing upload limit without server changes.
Actual ELF requirements are GLIBC 2.39 and GLIBCXX 3.4.32; Debian dependencies
declare `libc6 (>= 2.39)` and `libstdc++6 (>= 13.2)` alongside GTK/WebKit.
This is an Ubuntu 24.04 x86-64 preview, not a general older-Linux package.
Canonical resource staging used immutable source `d0b8dbf`; application source
remains `a6bf091`. Later Rust fixes are not included in this package.
The final compressed package was extracted and started under an owned Xvfb/DBus
session using the CPU/software flags above. Its bundled genuine Google query
worker started with one CPU thread and the desktop remained alive afterward.
Raw report: `.searchi/qa/linux-deb-startup-013-stripped.json`.
This checks packaged startup and resource discovery, not interactive rendering,
system installation, GPU operation or clean-machine compatibility.