このプロジェクトについて

Nixtasticは、Nix flakesを使用してMeshtastic開発のための統合ワークスペースを構築します。これにより、複数のMeshtasticリポジトリ(firmware, android, appleなど)を収容する単一のディレクトリ構造を作成しつつ、各リポジトリに固有の開発環境を提供します。このツールは、JDK、Android SDK、PlatformIO、buf、Nodeなど、各リポジトリに必要な依存関係を正確に備えたdev shellを自動的に構成し、手動セットアップの手間を省きます。 主な機能は以下の通りです: - リポジトリ同期:全リポジトリの差分を取得・報告し、安全なfast-forwardプルを実行 - コンテキスト認識型開発シェル:リポジトリディレクトリへの進入時に、適切なツールチェーンを自動的に有効化 - Worktree管理:並行開発タスク向けに、適切なツールを備えた独立したブランチを作成 - Android SDKブートストラップ:特定のAndroid SDKパッケージをインストールし、バージョンを固定 - ワークスペース診断:'doctor'コマンドによる構成の正当性検証 - 開発ツールとの統合:コードインテリジェンスおよびMCPサポート用の生成ファイルを提供 本システムは、シェルの自動有効化にdirenvを使用しており、LinuxまたはApple Siliconシステム上のNix (flakes有効) を必要とします。リポジトリタイプに応じた専用シェルが含まれており、一般的な操作はjustfileを通じてコマンドで提供されます。ワークスペースのセットアップには、MESHTASTIC_WORKSPACEの定義、Nixのインストール、リポジトリのクローン、direnvの設定、および初期同期の実行が含まれます。