Skip to content
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

エディタのディレクトリとエンジンのディレクトリを分離するべきか。 #1603

Closed
3 tasks done
sabonerune opened this issue Oct 9, 2023 · 9 comments · Fixed by #1611
Closed
3 tasks done

Comments

@sabonerune
Copy link
Contributor

内容

#1237 の問題は恐らくエンジンの配布物に含まれる共有ライブラリがエディタと干渉している可能性が高いようです。
エディタとエンジンのディレクトリを別々にすればこの問題を回避できるかもしれません。

Pros 良くなる点

Cons 悪くなる点

  • 既存サードパーティアプリがエンジンの場所を見失う可能性がある。

実現方法

from: VOICEVOX_ENGINE_DIR,
to: extraFilePrefix,

https://github.com/VOICEVOX/voicevox/blob/main/.github/workflows/build.yml
の変更
(workflow周りは良く分かっていません)

OSの種類/ディストリ/バージョン

  • Windows
  • macOS
  • Linux

その他

自分はLinux環境がないのでそれで本当に回避可能か要確認する必要がある

@Hiroshiba
Copy link
Member

Hiroshiba commented Oct 9, 2023

個人的には分離(思っているのは子ディレクトリ化)できるならしたほうが良いだろうなと感じています。
主な理由はLINUX版あれこれというより、zip版を展開した場合にVOICEVOX.exeが見つけやすくなりそうだからです。

ただconsに書かれている既存サードパーティアプリがエンジンの場所を見失う可能性があるは可能なら回避したい気はしています。
まあでも、ちょっとしょうがない気がしました。エンジンのrun.exeを起動するダミーのrun.exeを作る手もありそうですが、ゾンビプロセスにならないよう気を配ったり、stdin/outを良い感じに流してあげたり、環境変数やcwdをどうこうする手間が結構大変そうだなと・・・。

なので、個人的にはこうかなと!

  • エンジンのディレクトリを分離するべきか
    • したい
  • 既存サードパーティアプリがエンジンの場所を見失う可能性
    • 諦めた方が良い
    • 過去のバージョンと見分けがつくようにはしたい(といっても子ディレクトリ作るからほぼ自動達成)
    • 変わったよ〜という連絡はする。

@sabonerune
Copy link
Contributor Author

WSL2 Ubuntu 20.04でエンジンのディレクトリを移動していないAppimageと移動したAppimageを作成し、VirtualBox上のUbuntu 22.04で実行したところエンジンを移動したAppimageのみFcitx5 Mozcが正常に動作することが確認できました。

エンジンの移動は効果があると思います。

@Hiroshiba
Copy link
Member

Hiroshiba commented Oct 16, 2023

なるほどです!!調査ありがとうございます!!!
となると、issueのタイトルの問いの答えは「した方が良い」という感じになりそうですかね・・・!!

どうしましょう?せっかくなのでこのまま解決に進行するのも面白いのかなと思っています。(できれば解決できると良さそう)
ちょっとそこまではという感じでしたら、調査結果をまとめて別のissueにするか、タイトルを変更するかが良いのかなと思いました!

@sabonerune
Copy link
Contributor Author

解決に進行というのが自分がこのままPRを作成するということならやってみようと思います。

@Hiroshiba
Copy link
Member

@sabonerune あ、ですです! ぜひぜひ!!!

@Hiroshiba
Copy link
Member

@y-chan すみません、メンテナ判断を仰ぐの失念していました 🙇
こちらの判断に関してコメント等いただけると 🙇

@y-chan
Copy link
Member

y-chan commented Oct 18, 2023

遅くなりました...!
私としては、サードパーティアプリのために周知こそ必要だと思いますが、分離することによる恩恵がそこそこ大きいと思うので、いま出ているPRをマージする方針で問題ないと思います...!

@Hiroshiba
Copy link
Member

@y-chan ありがとうございます!! では全会一致ということで進められればと思います!!

@Hiroshiba
Copy link
Member

Hiroshiba commented Jan 20, 2024

すみません!
こちらの機能のことを忘れていて、大きな変更になるためアナウンスした後時間が経ってからアップデートするべきなことに気づきました。
なので0.15のアップデートに含めず、0.16からの追加にさせていただこうと思います。

この機能のブランチ戦略はこんな感じかなと。

  • release-0.15内でrevertをコミット
  • そのまま0.15系統をリリース
  • mainブランチに取り込む際、buffer-0.15ブランチ内でもう一度revert
  • 0.16で正式リリース(今月末を予定)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants