[HYPERION] Ryoku update failed building the dictation engine
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 82/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- arch-linux, cmake, shell
- Domain
- build-system
Research direction
Start with ryoku/dictation/deploy.sh, which only installs build packages when cmake, ninja, g++, glslc, or the pkg-config modules are missing; add spirv-headers to that check and its pacman line. Then add it to makedepends in release/packages/ryoku-dictation/PKGBUILD and to release/repo/build-toolchain.packages. Reproduce by checking pacman -Q spirv-headers on a host with shaderc but without it, run ryoku update, and confirm the CMake configure no longer stops on find_package(SPIRV-Headers CONFIG REQUIRED); verify with ryoku-dictate --version and the installed Vulkan library.
Written by the indexing model from the issue text.
Description
Edition
Arch
Compositor
Hyprland
Update channel
Unstable
Ryoku version
Ryoku | v1.1.0 (Amaterasu, branch `hyperion`) deployed at `3c36f3f`.
System details
CPU | AMD Ryzen 7 260 w/ Radeon 780M Graphics | | GPU | NVIDIA GB207M RTX 5050 Max-Q (nvidia-open-dkms 620.70.06-2), AMD HawkPoint1 iGPU |
What's wrong?
Ryoku update failed building the dictation engine
Summary
The 2026-11-14 hyperion update fast-forwarded the checkout from ac4bad0 to 7dc3b34 and then stopped while configuring ryoku-dictate. ggml's Vulkan backend requires the CMake package SPIRV-Headers, and spirv-headers was not installed. Shaderc, Vulkan headers, and the Vulkan loader were already present, so the deploy script's dependency check did not try to install anything.
On 2026-11-15 spirv-headers 1:1.4.363.0-1 was installed and ryoku update was run again. The checkout moved 7dc3b34 → 3c36f3f (v1.1.0), the dictation piece configured and linked, and the update exited 0 after 17m 02s. /usr/bin/ryoku-dictate is ryoku-dictate 1.0.0 and /usr/lib/ryoku/dictation/libggml-vulkan.so is in place.
The terminal looked frozen after shell and Hub modules: 0.2s because the next deploy step is pacman -Syu for the packaged ryotunes build, and that output is written to ~/.cache/ryoku/deploy-pacman.log rather than the update window. That transaction also upgraded the base system, including both kernels, and spent several minutes in DKMS and UKI generation.
System Specifications
| Item | Value |
|---|---|
| Host | TheFoxhole |
| OS | CachyOS (Arch rolling; os-release NAME is Arch Linux) |
| Kernel running | 7.3.3-1-cachyos (uname -r; the 2026-11-15 upgrade installed linux-cachyos 7.3.4-1 and linux 7.3.4.arch1-2, which load on the next boot) |
| CPU | AMD Ryzen 7 260 w/ Radeon 780M Graphics |
| GPU | NVIDIA GB207M RTX 5050 Max-Q (nvidia-open-dkms 620.70.06-2), AMD HawkPoint1 iGPU |
| Display | eDP-2 1920x1200, scale 1.25 |
| Session | Hyprland (hyprland 0.57.2-1.1), Quickshell (quickshell 0.3.2-1.1) |
| Ryoku | v1.1.0 (Amaterasu, branch hyperion) deployed at 3c36f3f. /etc/ryoku-release still records the packaged stamp VERSION=1.0.9.r6109.g08ff328, RELEASE=v1.0.9, CHANNEL=stable, NAME=Amaterasu; this box updates from the checkout, not that package |
| Build tools | cmake 4.5.0-1.1, ninja 1.13.2-3.1, gcc 16.2.1+r23+gd564253eb6c8-3, shaderc 2026.4-1.1, vulkan-headers 1:1.4.363.0-1, vulkan-icd-loader 1.4.363.0-1.1, spirv-headers 1:1.4.363.0-1 |
Symptoms
ryoku update on 2026-11-14 printed ::piece:: end dictation failed and left the deployed stamp at ac4bad0 even though git HEAD was already 7dc3b34. Pieces before dictation (shell, compositor providers, ryogami, hub, Rashin, CLI) had been installed. Configuration, the desktop restart, and the doctor did not run.
CMake stopped in the fetched transcribe.cpp tree:
CMake Error at build/_deps/transcribe-src/ggml/src/ggml-vulkan/CMakeLists.txt:14 (find_package):
Could not find a package configuration file provided by "SPIRV-Headers"
pacman -Q spirv-headers reported the package was not installed. shaderc, vulkan-headers, vulkan-icd-loader, and glslang were installed. pacman -Ss spirv-headers showed extra/spirv-headers 1:1.4.363.0-1.
Cause
ryoku/dictation/CMakeLists.txt builds the Vulkan ggml backend by default (RYOKU_DICTATION_GPU ON, which forces TRANSCRIBE_VULKAN). ggml-vulkan then runs find_package(SPIRV-Headers CONFIG REQUIRED). Arch ships that config as /usr/share/cmake/SPIRV-Headers/SPIRV-HeadersConfig.cmake inside spirv-headers. On this machine spirv-tools does not depend on spirv-headers, so installing shaderc did not pull it in.
ryoku/dictation/deploy.sh only installs build packages when cmake, ninja, g++, glslc, or the pipewire/wayland/xkbcommon/vulkan pkg-config modules are missing. All of those were present, and the pacman line it would have run does not name spirv-headers. The same omission is in release/packages/ryoku-dictation/PKGBUILD (makedepends has shaderc and vulkan-headers) and in release/repo/build-toolchain.packages. No later hyperion commit between 7dc3b34 and 3c36f3f added the package.
Steps to reproduce
On a hyperion checkout that has shaderc and vulkan-headers but not spirv-headers:
pacman -Q spirv-headers
ryoku update
The fetch and the Go pieces succeed. The dictation CMake configure exits 1. ryoku status keeps the previous deployed commit.
Logs
Failed run, ~/.local/state/ryoku/update-log.txt (mtime 2026-11-14 15:55 +0200), and ~/.local/state/ryoku run state: deployed baseline ac4bad0, checkout advanced to 7dc3b34 (v1.1.0 hyperion), ::piece:: end dictation failed. The run-state error was deploy from /home/nate/ryoku-arch failed: exit status 1.
Successful run, /tmp/ryoku-update-finish.log:
Advanced 7dc3b34 → 3c36f3f (v1.1.0 hyperion)
ryoku-dictate, the voice typing engine: 1m 26s
configuration files: 1.0s
restarting the desktop: 4.7s
Update complete in 17m 02s. now on v1.1.0 · 3c36f3f
ryoku update exited 0
~/.local/state/ryoku/update-log.txt records ::piece:: end dictation ok and -- Configuring done for that build. ~/.cache/ryoku/deploy-pacman.log holds the pacman -Syu that followed the shell modules, including DKMS for nvidia 620.70.06 and UKI generation for linux-cachyos and linux.
Workaround / Fix
Installed the missing package, then reran the update from a terminal so sudo could copy the engine into /usr:
sudo pacman -S --needed --noconfirm spirv-headers
ryoku update
/usr/bin/ryoku-dictate and /usr/lib/ryoku/dictation/ (including libggml-vulkan.so) were installed at 08:57. The user unit ryoku-dictate.service is disabled and inactive, which matches the unit file: the shell starts it on demand.
The checkout was left unpatched. A local edit to deploy.sh would make the next ryoku update refuse to fast-forward. A fresh build host still needs spirv-headers added to ryoku/dictation/deploy.sh, the ryoku-dictation PKGBUILD makedepends, and release/repo/build-toolchain.packages.
After this run, ryoku status shows deployed 3c36f3f and one newer hyperion commit, 388c6cf (hub: mark Style's preview as an example, show the palette in use). That commit is not part of this failure. The doctor at the end of the update still warned about selected shells (ryostore has no shells-require), memory pressure, and a pending .pacnew. Those are the existing findings in topics 12 and the 2026-11-13 doctor report.
Verify
pacman -Q spirv-headers
test -f /usr/share/cmake/SPIRV-Headers/SPIRV-HeadersConfig.cmake
ryoku-dictate --version
ls /usr/lib/ryoku/dictation/libggml-vulkan.so
ryoku status
Observed on 2026-11-15 09:12 +0200: spirv-headers 1:1.4.363.0-1, the CMake config present, ryoku-dictate 1.0.0, the Vulkan library present, deployed commit 3c36f3f, update exit 0.
Rollback
ryoku rollback returns the desktop to an earlier checkout deploy. Removing spirv-headers makes the next dictation rebuild fail the same way. The kernel packages installed by the bundled pacman -Syu stay until a later upgrade or an explicit downgrade; the running kernel stays 7.3.3-1-cachyos until reboot.
- Dominant language
- QML
- Stars
- 1.9k
- Forks
- 122
- Avg merge
- 18h 45m
- Merged PRs (30d)
- 124
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Ryoku-dev/ryoku
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 85/100
Maintainers usually reply within 1 day
-
area:ryoku needs-info type:bug
Difficulty 4/5 3-5 days Newbie friendliness 28/100
Maintainers usually reply within 1 day
-
wallpaper glitchOpenarea:ryoku bug needs-info type:bug
Difficulty 3/5 1-2 days Newbie friendliness 40/100
Maintainers usually reply within 1 day
-
area:ryoku type:bug
Difficulty 3/5 1-2 days Newbie friendliness 68/100
Maintainers usually reply within 1 day
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
AykutSarac/jsoncrack.com#616 ·
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
h5bp/html5-boilerplate#3512 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
-
Difficulty 1/5 Under an hour Newbie friendliness 85/100