-
Notifications
You must be signed in to change notification settings - Fork 305
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
VOICEVOXのLinux用実行バイナリを作る #218
Comments
Linux版VOICEVOXの配布方法の候補は、zip配布、deb/rpm、PPA=Ubuntuの非公式パッケージリポジトリ、AppImage、snap、flatpakが考えられるかなと思っています。 Ubuntuを使っていてよく見るのはdebとAppImageです。rpmはCentOS, Red Hat Linux系におけるdebに相当するものだと思っています。 Electronの例だと、 |
なるほどです! 個人的には、GUIを使うユーザーにとってわかりやすいものが良いかなと思っています。 |
|
|
Makefile#!/usr/bin/env make
.PHONY: all
all:
mkdir -p build
wget -O build/index.html https://www.example.com/
.PHONY: install
install:
mkdir -p /opt/myexample
cp -r build/* /opt/myexample
.PHONY: uninstall
uninstall:
rm -rf /opt/myexample
.PHONY: clean
clean:
rm -rf build/ debパッケージを作成するコマンドsudo apt install checkinstall
make all
sudo checkinstall --install=no --fstrans=yes --pkgname=myexample --pkgversion=0.1.0
ls | grep .deb
# myexample_0.1.0-1_amd64.deb
make clean
sudo dpkg -i myexample_0.1.0-1_amd64.deb |
ユーザーが1つだけ操作を行えばVOICEVOXが使えるようになるのが良いのかなと思っています。(windowsの場合はインストーラーのダブルクリック) |
もしくは、インストール用のスクリプトを用意することになるかな、と思っています。 アプリケーション一覧に登録するには、$HOME/.local/share/applicationsのようなディレクトリに
ちなみに、Ubuntu (20.04)では、 |
どういう配布形式が良いのか全く検討つかなくて判断が難しいですね・・・ 一旦用意が簡単な方法で配布してみて、ツイッターなどで反応を確かめてもいいかなと思いました。 |
メモ #270 で、Linux版VOICEVOX終了時
TreeKillは、 子プロセスのkillが終わる前に親プロセスが停止しているのかもしれません。
Node.jsのリポジトリにも過去に似た問題が報告されていそうでしたが、同じ問題かはわかりません。 一応、tree-killのコードを書き換えて、 また、tree-kill の代わりに、
|
報告ありがとうございます! でもいい感じの方法が思いつかないので、ワークアラウンド的にwin以外の場合は普通にkillを実行しても良い気がしました。 |
* add VOICEVOX_ENGINE_DIR env for electron-builder * add linux electron-builder config * add workflow * pack VOICEVOX ENGINE * fix workflow * rm engine archive to free space * name steps * show disk space * update voicevox engine run path for linux * revert linux diff * remove original engine after artifact build * env check; empty string or undefined * fail-fast false * upload win unpacked * stage build * prepackaged * fix prepackage * add disk space disp * merge nsis-web artifact * engine-prepackage * upload to release * fix dir * fix merge condition * rename job; distributable * fix engine copy * fix matrix var name * fix step name * fix matrix var ref * add fixme note to rename before upload to asset * disable cpu build * enable cpu engine prepackage * build distributable only on release * build on push master * fix commented step name * build on push main * revert removeOriginalEngine diff * temporary use Hiroshiba/voicevox_engine check-2021-09-25 * use env to define voicevox engine repo/ver * use env directly (env cannot be used in matrix) * add noengine-prepackage name and path in matrix * windows build-workflow diff * add linux appimage build config * add linux matrix * overwrite .env.production for linux * appimage build * upload linux appimage to release as splitted archives * fix listing * fix engine-prepackage artifact name * split log * recover file permissions before packaging to AppImage * remove artifact dir layer in asset * remove linux cpu asset * fix recover file permissions * impl upload-distributable-to-release * generate public/licenses.json * ci licenses.json * mkdir * engine * Update build.yml * npm ci * license: use packageName if name is undefined * revert packageName substitution * skip uploading to release * parentheses * add comment * env SKIP_UPLOADING_RELEASE_ASSET * commonize os matrix * temporarily upload splitted appimage to artifact * fix indent * add tar.gz artifact * replace github.ref * add size, hash in list * change engine repo and version * swap order * add comment: tar.gz
可能なら、tar.gz形式のvoicevoxバイナリもダブルクリックで実行可能にしたいところなのですが、ダブルクリックしても実行できない問題はそもそもどんな感じですか・・・? |
いえ、共有ライブラリではなく、Ubuntu(GNOME)のファイルエクスプローラであるNautilusの挙動が問題です。 ターミナルから実行すると、tar.gzから展開したVOICEVOXを起動することができます。 $ **/linux-nvidia-prepackage-targz/VOICEVOX/voicevox
[02:11:19.186] [info] Starting ENGINE in GPU mode
[02:11:19.676] [error] Error: Failed to fetch Failed to fetch AudioQuery for the text "".
[02:11:19.683] [error] TypeError: Failed to fetch
[02:11:20.651] [info] waiting engine...
[02:11:21.652] [info] waiting engine...
... ダブルクリックで実行しようとするには、わたしの環境(Ubuntu 20.04, GNOME nautilus 3.36.3)では、
その上で実行しようとすると、Nautilusのログに以下のように表示され、起動しませんでした。Electronのプロセスがそもそも立ち上がりません。なにかファイルシステムが仮想化されていそうです。
Nautilusの 詳しく見ていませんが、いくつかIssueが立っています。
まだ調査が必要そうです。 Nautilusのログ確認用コマンド killall nautilus
G_DEBUG="all" NAUTILUS_DEBUG="All" nautilus |
デスクトップ($HOME/Desktop/)に [Desktop Entry]
Name=VOICEVOX
Exec=/path/***/voicevox/voicevox
Terminal=false
Type=Application
Icon=/path/***/voicevox/voicevox.png
StartupWMClass=VOICEVOX
Categories=AudioVideo; ディレクトリから実行する方法はわかりません..(Run Softwareは上のコメントと同じ) |
おーなるほどです!!! 確認なのですが、AppImageインストーラー版はアイコンをダブルクリックすることでVOICEVOXを起動可能、という認識で合っていますか? |
はい、 WIndowsのスタートメニューに相当する場所に登録されるので、そこから起動する形です。 ちなみにAppImage単体は、実行権限を与えれば、ファイルエクスプローラからダブルクリックで起動可能です。 |
確かに!! それが一番手っ取り早い上にユーザーにとってもわかりやすい気がしました。 CPU版のAppImageもせっかくなので作っておくと喜ばれそうだと思います。 |
内容
VOICEVOXのコアライブラリが公開されました。 https://github.com/Hiroshiba/voicevox_core
これでLinux版のVOICEVOXを作成できるはずです。
このタスクは非常に長くなると思われます。
ちょっとでも取り掛かった方がいたら、ぜひコメントで知見ややり方を共有して頂けると・・・!
OSの種類/ディストリ/バージョン
The text was updated successfully, but these errors were encountered: