- Shell 59.1%
- Python 40.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
Рантайм-образ собирается с gigaam,osd-gtk4 без preedit: живой текст в поле ломал вставку при смене фокуса. Превью идёт через OSD, текст вставляется один раз после остановки записи. Тест фиксирует отсутствие preedit. |
||
| packaging | ||
| patches | ||
| tests | ||
| .gitignore | ||
| index.json | ||
| install.sh | ||
| README.md | ||
VoxtypeCapsule
Голосовой ввод для ALT Atomic Niri Plafon: демон Voxtype
(ветка gigaam-engine, распознавание русской речи моделью GigaAM v3) с нашими исправлениями,
упаковкой и капсулой — переносимым бинарём, который не требует системных библиотек.
Тяжёлые части (капсула ~540 МБ и модель ~850 МБ) не входят в образ и скачиваются только тогда, когда пользователь сам включает голосовой ввод (Tuner → Звук → «Голосовой ввод»).
Установка одной командой
Сначала рекомендуется прочитать скрипт, затем запустить его обычным пользователем:
curl -fsSL https://altlinux.space/plafonlinux/VoxtypeCapsule/raw/branch/main/install.sh -o install.sh && less install.sh && bash install.sh
Установщик проверяет каталог, размер и SHA-256 файлов, устанавливает пользовательскую службу
и по умолчанию добавляет Mod+B. Для вариантов запуска смотрите bash install.sh --help.
Пути установщика
| Переменная | Путь по умолчанию |
|---|---|
BIN_DIR |
~/.local/bin |
CAPSULE_PATH |
~/.local/bin/voxtype-capsule |
TOGGLE_PATH |
~/.local/bin/voxtype-toggle |
DATA_DIR |
~/.local/share/voxtype |
MODELS_DIR / MODEL_DIR |
~/.local/share/voxtype/models/gigaam-v3-e2e-rnnt |
TMP_DIR |
~/.local/share/voxtype/tmp |
CONFIG_DIR / CONFIG_FILE |
~/.config/voxtype/config.toml |
UNIT_DIR / UNIT_FILE |
~/.config/systemd/user/voxtype.service |
NIRI_BINDS / NIRI_CONFIG |
~/.config/niri/binds.kdl / ~/.config/niri/config.kdl |
YDOTOOL_UNIT |
/usr/lib/systemd/user/ydotool.service |
YDOTOOL_SOCKET |
/run/user/$UID/.ydotool_socket |
UINPUT_DEVICE |
/dev/uinput |
Команда bash install.sh --paths печатает эту таблицу без изменений файлов.
Совместимость
В niri сочетание добавляется в binds.kdl автоматически, в GNOME — через gsettings, в
других окружениях установщик печатает точную команду для ручной привязки. Вставка выполняется
через ydotool, затем wtype, а при их отсутствии — через буфер обмена; в терминалах обычно
нужно нажимать Ctrl+Shift+V. Нужны pipewire, curl, tar, zstd, python3 и
wl-clipboard. В ALT Atomic Onyx для ydotool: sudo apm install ydotool, затем нужна
перезагрузка. В остальных случаях перезагрузка не нужна.
Удаление
bash install.sh --uninstall
# удалить также модель и капсулу:
bash install.sh --uninstall --purge
Состав репозитория
| Каталог | Что внутри |
|---|---|
patches/ |
Патчи к форку Toxblh/voxtype: 0001, 0002 — коммиты, 0003 — незакоммиченные исправления (гонка session = None, обрывки текста, вставка через ydotool). BASE_COMMIT — база, к которой применяются. |
packaging/ |
voxtype.service (пользовательский юнит systemd), config.toml (умолчания: GigaAM, потоковый режим, вставка через ydotool), niri-bind.kdl (привязка Mod+B). |
index.json |
Каталог артефактов: имя, версия, размер, sha256, ссылка на релиз. Tuner проверяет размер и sha256 до установки. |
| Релизы | Файлы voxtype-capsule, gigaam-v3-e2e-rnnt.tar.zst (модель) и SHA256SUMS. |
Как это работает у пользователя
- Образ содержит только лёгкую часть: переключатель в Tuner, юнит и привязку клавиш (по умолчанию выключены).
- Пользователь включает «Голосовой ввод» — Tuner скачивает капсулу и модель из релиза этого репозитория,
проверяет
sha256, кладёт в~/.local/binи~/.local/share/voxtype, включает юнитvoxtype.service. Mod+B— начать/закончить запись; текст вставляется в фокусное окно (ydotool, режим paste).
Проверка и безопасность
- Скачивание только с
altlinux.spaceпо HTTPS, без перенаправлений на другие хосты. - Размер и
sha256сверяются сindex.jsonдо распаковки и запуска. - Ничего не запускается автоматически без явного согласия пользователя.
Лицензии
- Voxtype — MIT (Peter Jackson, 2025); форк и патчи распространяются на условиях MIT.
- Модель GigaAM v3 (SberDevices, https://github.com/salute-developers/GigaAM) — используйте на условиях лицензии её автора; перед распространением сверьте актуальный текст лицензии.
- Капсула — сборка Voxtype и зависимостей в один исполняемый файл.
Сборка из исходников
git clone https://github.com/Toxblh/voxtype && cd voxtype
git checkout $(cat ../VoxtypeCapsule/patches/BASE_COMMIT)
git am ../VoxtypeCapsule/patches/000[12]-*.patch && git apply ../VoxtypeCapsule/patches/0003-*.patch
cargo build --release --features gigaam,osd-gtk4 # БЕЗ фичи preedit: она ломает вставку при смене фокуса