Files
nix-config-ryan4yin/home
ryan4yin | 二花 9f092808fd feat(aquamarine): serve Whisper transcription from the NPU (#472)
The goal is speech recognition on the NPU for vinput, and sherpa-onnx cannot
deliver it: every model it loads keeps a dynamic time axis, which the NPU
compiler rejects outright. Qwen3-ASR and SenseVoice both core-dumped in
vpux-compiler ("Got non broadcastable dimensions pair"), and reshaping the ONNX
inputs does not help because the dynamic dimensions sit inside the graph
(WA-037). Whisper is the only family OpenVINO publishes fully static IRs for,
and its fixed 30 s window is exactly what the compiler accepts.

The host now runs an OpenAI-compatible /v1/audio/transcriptions service backed
by whisper-large-v3-turbo int8 on the NPU: 1.5 s for 11 s of audio against
2.1 s on CPU, with the compiled graph cached in /var/cache so only a cold cache
pays the ~60 s NPU compile. vinput on the desktop sends raw PCM to it through a
small provider script.

Only the NPU driver and compiler still come from the unmerged branch in the
`nixpkgs-npu` input (NixOS/nixpkgs#570230), whose nixpkgs also happens to be
the one where openvino-genai 2026.4.0.0 builds at all.

Assisted-by: DeepSeek Harness 0.2.1-rc.2 (deepseek-v4.1-flash)
2026-10-18 08:34:50 +08:00
..

Home Manager's Submodules

This directory contains all Home Manager configurations organized by platform and functionality.

Current Structure

home/
├── base/              # Cross-platform home manager configurations (see base/README.md)
├── linux/             # Linux-specific home manager configurations
│   ├── base/          # Linux base configurations
│   ├── gui/           # Linux GUI applications
│   │   ├── i3/        # i3 — headless computer-use session (see i3/README.md)
│   │   ├── niri/      # Niri window manager
│   │   └── ...
│   └── ...
├── hosts/             # Host-specific home manager entry modules
│   ├── linux/         # Linux host home modules (idols-ai, 12kingdoms-shoukei, idols-kana, idols-ruby)
│   └── darwin/        # macOS host home modules (fern, frieren)
└── darwin/            # macOS-specific home manager configurations
    ├── proxy/         # Proxy configurations
    └── ...

Module Overview

  1. base: The base module suitable for both Linux and macOS

    • Cross-platform applications and settings
    • Shared configurations for editors, shells, and essential tools
  2. linux: Linux-specific configuration

    • Desktop environments (Noctalia Shell, Niri compositor)
    • Headless computer-use session (see linux/gui/i3/README.md)
    • Linux-specific GUI applications
    • System integration tools
  3. darwin: macOS-specific configuration

    • macOS applications and services
    • Platform-specific integrations (Squirrel, etc.)
  4. hosts: Host entry modules for Home Manager

    • Each output should reference only one host home module file
    • Host modules are responsible for importing shared stacks (home/linux/* or home/darwin) and applying host overrides