8.9 KiB
Reticulum MeshChatX
Liam Cottle 氏による Reticulum MeshChat を大幅に改修・機能拡張したフォークです。
本プロジェクトはオリジナルの Reticulum MeshChat とは独立しており、提携関係にありません。
- ソースコード: git.quad4.io/RNS-Things/MeshChatX
- リリース: git.quad4.io/RNS-Things/MeshChatX/releases
- 変更履歴:
CHANGELOG.md - TODO:
TODO.md - English README | Deutsch | Italiano | Русский | 中文
重要事項
- LXMF の完全サポートがプロジェクトの中核目標です。
- データ保存とマイグレーションは段階的に直接 SQL へ移行中です(レガシーの Peewee ORM パスを置換)。
Warning
MeshChatX は旧バージョンの Reticulum MeshChat とのデータ互換性を保証しません。マイグレーションやテスト前にデータをバックアップしてください。
Warning
レガシーシステムはまだ完全にはサポートされていません。現在の最低要件: Python
>=3.11、Node>=24。
デモとスクリーンショット
UI プレビュー
必要条件
- Python
>=3.11(pyproject.tomlより) - Node.js
>=24(package.jsonより) - pnpm
10.32.1(package.jsonより) - Poetry(
Taskfile.ymlおよび CI ワークフローで使用)
インストール方法
| 方法 | フロントエンド含む | アーキテクチャ | 最適な用途 |
|---|---|---|---|
| Docker イメージ | はい | linux/amd64, linux/arm64 |
Linux サーバーでの最速セットアップ |
Python wheel (.whl) |
はい | Python がサポートする全アーキテクチャ | Node ビルド不要のヘッドレス/Web サーバー |
| Linux AppImage | はい | x64, arm64 |
ポータブルデスクトップ |
Debian パッケージ (.deb) |
はい | x64, arm64 |
Debian/Ubuntu |
RPM パッケージ (.rpm) |
はい | CI 依存 | Fedora/RHEL/openSUSE |
| ソースから | ローカルビルド | ホストアーキテクチャ | 開発・カスタムビルド |
備考:
- リリースワークフローは Linux
x64およびarm64の AppImage + DEB を明示的にビルドします。 - RPM もビルドが試みられ、成功時にアップロードされます。
クイックスタート: Docker
docker compose up -d
デフォルトの compose ファイル:
- ホスト
127.0.0.1:8000-> コンテナポート8000 ./meshchat-config->/config(永続化用)
権限エラーが発生した場合:
sudo chown -R 1000:1000 ./meshchat-config
リリースアーティファクトからのインストール
1) Linux AppImage (x64/arm64)
- リリースから
ReticulumMeshChatX-v<バージョン>-linux-<アーキテクチャ>.AppImageをダウンロード。 - 実行権限を付与して起動:
chmod +x ./ReticulumMeshChatX-v*-linux-*.AppImage
./ReticulumMeshChatX-v*-linux-*.AppImage
2) Debian/Ubuntu .deb (x64/arm64)
ReticulumMeshChatX-v<バージョン>-linux-<アーキテクチャ>.debをダウンロード。- インストール:
sudo apt install ./ReticulumMeshChatX-v*-linux-*.deb
3) RPM ベースのシステム
- リリースに
ReticulumMeshChatX-v<バージョン>-linux-<アーキテクチャ>.rpmがある場合はダウンロード。 - インストール:
sudo rpm -Uvh ./ReticulumMeshChatX-v*-linux-*.rpm
4) Python wheel (.whl)
リリースの wheel にはビルド済みの Web アセットが含まれています。
pip install ./reticulum_meshchatx-*-py3-none-any.whl
meshchat --headless
pipx もサポート:
pipx install ./reticulum_meshchatx-*-py3-none-any.whl
ソースからの実行(Web サーバーモード)
git clone https://git.quad4.io/RNS-Things/MeshChatX.git
cd MeshChatX
corepack enable
pnpm install
pip install poetry
poetry install
pnpm run build-frontend
poetry run meshchat --headless --host 127.0.0.1
サンドボックスで実行(Linux)
ネイティブの meshchat バイナリを、ファイルシステムをより隔離した状態で動かすには、Reticulum と Web UI 向けの通常のネットワークアクセスを保ちつつ Firejail または Bubblewrap(bwrap)を使えます。詳しい例(pip/pipx、Poetry、USB シリアルの注意)は次を参照してください。
同じページは、同梱または同期された meshchatx-docs から配信される場合、アプリ内の ドキュメント(MeshChatX ドキュメント)一覧にも表示されます。
ソースからのデスクトップパッケージビルド
Linux x64 AppImage + DEB
pnpm run dist:linux-x64
Linux arm64 AppImage + DEB
pnpm run dist:linux-arm64
RPM
pnpm run dist:rpm
アーキテクチャサポート
- Docker:
amd64,arm64 - Linux AppImage:
x64,arm64 - Linux DEB:
x64,arm64 - Windows:
x64,arm64(ビルドスクリプトあり) - macOS: ビルドスクリプトあり(
arm64,universal) - Android: リポジトリにプロジェクトと CI ワークフローあり
Android
設定
| 引数 | 環境変数 | デフォルト | 説明 |
|---|---|---|---|
--host |
MESHCHAT_HOST |
127.0.0.1 |
Web サーバーバインドアドレス |
--port |
MESHCHAT_PORT |
8000 |
Web サーバーポート |
--no-https |
MESHCHAT_NO_HTTPS |
false |
HTTPS を無効化 |
--headless |
MESHCHAT_HEADLESS |
false |
ブラウザを自動で開かない |
--auth |
MESHCHAT_AUTH |
false |
基本認証を有効化 |
--storage-dir |
MESHCHAT_STORAGE_DIR |
./storage |
データディレクトリ |
--public-dir |
MESHCHAT_PUBLIC_DIR |
自動 | フロントエンドファイルディレクトリ |
ブランチ
| ブランチ | 目的 |
|---|---|
master |
安定版リリース。本番環境対応コードのみ。 |
dev |
活発な開発中。不安定または不完全な変更を含む場合があります。 |
開発
task install
task lint:all
task test:all
task build:all
セキュリティ
SECURITY.md- 組み込みの整合性チェックと HTTPS/WSS デフォルト設定
.gitea/workflows/の CI スキャンワークフロー
言語の追加
ロケールの検出は自動です。新しい言語を追加するには JSON ファイル1つだけで済みます:
en.jsonからテンプレートを生成:
python scripts/generate_locale_template.py
- ファイル名を変更しロケールディレクトリに移動:
mv locales.json meshchatx/src/frontend/locales/xx.json
-
ファイル先頭の
_languageNameにその言語の母語名を設定 (例:"Espanol","Francais")。 -
残りの値をすべて翻訳。
-
キーの整合性を確認:
pnpm test -- tests/frontend/i18n.test.js --run
他のコード変更は不要です。
クレジット
- Liam Cottle - オリジナル Reticulum MeshChat
- RFnexus - JavaScript Micron パーサー
- markqvist - Reticulum, LXMF, LXST



