Development
Tools, workflows, and resources for contributing to ProteanOS.

Development Overview
This is where you'll find everything related to building and contributing to ProteanOS. We've got tools for compiling, packaging, and managing embedded software, plus docs on how it all fits together.
Whether you're fixing bugs, adding features, or packaging new software, start here.
Development Tools
ProKit
The ProteanOS Development Kit for building and packaging.
Git Repositories
Source code repositories and version control.
Packaging System
Packages are how software gets distributed in ProteanOS. If you're planning to contribute, you need to understand how they work.
Source Package Format 2.0
Specification for source package structure and metadata.
Packaging Requirements
What's required to create conformant packages.
Archive Layout
Structure and organization of package archives.
Specifications
Technical specifications and standards.
Project History
Documentation of historical development efforts and design decisions provides context for current architecture choices.
- Capstone 2012F — Early development milestone documentation
- Architecture Management — System architecture documentation
How to Contribute
Pretty straightforward:
- Get set up: Install ProKit following the install guide.
- Find something to work on: Check the mailing list for open issues or areas needing help.
- Make your changes: Follow the coding standards below.
- Test it: Make sure it builds and works. Cross-compile for relevant targets.
- Send patches: Email them to the dev list for review.
Coding Standards
Keep it clean and consistent:
- Use clear names that explain what things do
- One function, one job
- Comment weird stuff, but prefer code that explains itself
- Match the style of whatever file you're editing
- Write commit messages that explain the 'why', not just the 'what'
Testing
Embedded software is tricky to test since you need actual hardware. We use:
- Unit tests: Test individual pieces in isolation
- Build tests: Does it compile for all supported targets?
- Integration tests: Run on emulators or real hardware
Where to Talk
Most coordination happens on the mailing lists:
- proteanos-dev — Technical discussion, patches, code review
- proteanos-announce — Releases and news
Development Resources
Development FAQ
How do I get started contributing?
Set up your development environment using ProKit, then look for areas where you can help—documentation improvements, bug fixes, or feature development. Start with smaller contributions to learn the workflow.
What programming languages does ProteanOS use?
The core system uses C for low-level components and shell scripts for build tools. Higher-level utilities may use other languages. Check individual repositories for language-specific guidelines.
How are patches reviewed?
Patches sent to the development mailing list are reviewed by maintainers and community members. Reviewers provide feedback on code quality, style, and correctness. Iterate based on feedback until the patch is accepted.
Can I work on new features?
Yes, but discuss significant new features on the mailing list before investing substantial effort. This helps ensure alignment with project direction and avoids duplicate work.
How do I set up cross-compilation?
ProKit includes cross-compilation toolchains and configuration. The installation guide covers setup, and the ProKit documentation explains how to configure builds for different target architectures.