oceanpacificpeace/lichii-shader-sync
GamesDownloads shared Vulkan shader caches into Lichii/Eden emulators to reduce first-play stutter.
What it does
Lichii Shader Sync fetches shared Vulkan shader cache packs and installs them into Lichii or Eden, the Nintendo Switch emulators. The goal is to avoid recompiling shaders locally on first play, which is the usual cause of early-game stutter and hitches.
Packs are published as releases with per-title manifests; a badge in the README advertises an Ocarina of Time pack with 88,982 shaders. Sync downloads are checksum-verified and validated, and the previous cache is retained as a .bak copy. The tool also has a command to build and publish packs from a local cache.bin.
Getting started
- Run the game once in Lichii, then close Lichii completely.
- Download the app from the latest release and run
Lichii-Shader-Sync.exe. Windows SmartScreen may warn; the README tells you to choose More info → Run anyway. - Click Update shaders, then launch Lichii.
A command-line equivalent is lichii-sync sync; add -dry-run to preview the downloads. The project is written in Go and the README lists Go 1.15+ in its badge.
Build-specific notes
- On builds 117 and later, keep
EDEN_NX2_PRELOAD_ALL_PIPELINESoff innx2_switches.txt. Those builds evict unused pipelines after roughly 2.5 minutes, and preloading a large pack then freezes the game for about 20 seconds. - The README suggests an optional warm-up after GPU driver updates: raise the GPU shader cache to 10 GB or Unlimited, enable preload, boot to the title screen until compilation finishes, quit, then disable preload. On Linux this is configured with
__GL_SHADER_DISK_CACHE,__GL_SHADER_DISK_CACHE_SIZEand__GL_SHADER_DISK_CACHE_PATHin.bashrc.
Publishing packs
The lichii-sync pack command turns a cache.bin into chunked output plus a manifest: lichii-sync pack -title <TITLEID> [-prev <TITLEID>.json] <cache.bin> out/ <TITLEID>-<date>. Release chunks must be uploaded before the manifest, and pack releases must not be marked Latest, or the README download button would point at a pack instead of the app.
Constraints
- Targets Lichii and Eden specifically; it is not a general-purpose shader cache tool.
- The graphical workflow documented for Windows is an unsigned prebuilt
.exethat requires bypassing a SmartScreen warning; on Linux, the README only shows environment-variable tuning, not a GUI route. - No license is declared, and the project is unofficial and unaffiliated with Lichii or Eden.
HotRepo's take
The repository appeared in HotRepo's Go new-project list on 2026-11-08 with 100 stars and 5 forks gained in roughly 12 hours, but it has no recorded GitHub daily rank. That is a short single-snapshot observation, not evidence of sustained adoption. The useful technical detail is the pack/manifest split and the note that build 117+ evicted pipelines make large preloads counterproductive; the binary-only distribution path is the main caveat for prospective users.
Written by AI from the project's README, updated . The project's own docs are the source of truth.