About this project
Nixtastic establishes a unified workspace for Meshtastic development using Nix flakes. It creates a single directory structure that houses multiple Meshtastic repositories (firmware, android, apple, etc.) while providing each with its specific development environment. The tool automatically configures dev shells with precisely the required dependencies for each repository - including JDKs, Android SDK, PlatformIO, buf, and Node - eliminating manual setup.
Key capabilities include:
- Repository synchronization: fetches and reports drift across all repositories, with safe fast-forward pulling
- Context-aware development shells: automatically activates the correct toolchain when entering a repository directory
- Worktree management: creates isolated branches with proper tooling for concurrent development tasks
- Android SDK bootstrapping: installs and pins specific Android SDK packages
- Workspace diagnostics: verifies proper configuration with the 'doctor' command
- Integration with development tools: provides generated files for code intelligence and MCP support
The system uses direnv for automatic shell activation and requires Nix with flakes on Linux or Apple Silicon systems. It includes specialized shells for different repository types and provides commands through a justfile for common operations. Workspace setup involves defining MESHTASTIC_WORKSPACE, installing Nix, cloning the repository, configuring direnv, and running initial synchronization.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.