今の環境はFreeBSD13.2Rで、mattermost7.10をportsから入れています。
今流行りのChatGPTをmattermostからapi経由でアクセスしてみたいと思ったのが事の始まりです。
メモを残すに便利なmattermostですが、いかんせんplug-inが全滅で動かない。不快でしかない。
コロナが始まる3年前は少しビルドした記憶があります。
何故動かない原因が分かりにくいかと言うとエラーメッセージが的を得ていないに他ならない。
これはディレクトリーだとか、Peimipsion denyとかしか出ないけど、殆ど意味不明。
基本的には3つの問題があります。
- /usr/local/www/mattermost に client/plugins が無い
- FreeBSDのサーバーモジュールバイナリーが、目的Pluginのserver/distに存在しない。
- 同時にplugin.jsonにFreeBSDのバイナリー定義が無い。
の以上全ての原因です。ディレクトリーがなければ、Permission Denyと言われるし、バイナリーが存在しなくても、plug-inのディレクトリーはディレクトリーだと言われる。
ビルドは若干反則を使います。
Ubutuでプラグインをビルドしてもnodeで落ちたりするので、基本は配布されているパッケージのtar.gzを使う事にしてます。
なので、githubからはソースとパッケージの両方をcloneします。
ソースの方はgmake distしても落ちるから、Makefileに FreeBSDのエントリーを追加して、gmake serverします。これでFreeBSDのサーバーモジュールができるから、パッケージのdistにコピーして、plugin.jsonにエントリーを追加して、再びgzipすれば出来上がりです。
サイズが大きすぎてアップロードできない場合はsftpして展開し、chownすれば、動きます。
あ、Callsだけは何故かFreeBSDのモジュールが入っていてそのままインストールできました。
それ以外は全滅で、
6個程ビルドしてみました。
zoom plugin
1 ファイル 42.80 MB
Playbooks
1 ファイル 111.20 MB
open-ai
1 ファイル 71.46 MB
jitsi
1 ファイル 36.88 MB
gitlab
1 ファイル 74.71 MB
focalboad
1 ファイル 166.58 MB
mattermost-ai-0.4.0.targz
1 ファイル 66.16 MB
コメント