Files
SparkOS/CONTRIBUTING.md
2025-12-28 15:03:31 +00:00

1.5 KiB

Contributing to SparkOS

Thank you for your interest in contributing to SparkOS!

Project Goals

SparkOS aims to be:

  • Minimal: Only essential components
  • Clean: Well-documented, readable code
  • Portable: dd-able to USB drives
  • Extensible: Easy to add features incrementally

Development Setup

  1. Clone the repository:

    git clone https://github.com/johndoe6345789/SparkOS.git
    cd SparkOS
    
  2. Build the system:

    ./scripts/build.sh
    
  3. Make your changes

  4. Test your changes:

    make clean
    make all
    

Code Style

  • C/C++ Code: Follow Linux kernel style guidelines

    • Use tabs for indentation
    • Keep lines under 80 characters when reasonable
    • Comment complex logic
  • Shell Scripts: Follow Google Shell Style Guide

    • Use #!/bin/bash shebang
    • Quote variables
    • Use meaningful variable names
  • Documentation: Write clear, concise documentation

    • Update README when adding features
    • Comment non-obvious code
    • Include usage examples

Submitting Changes

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/my-feature)
  3. Make your changes
  4. Test thoroughly
  5. Commit with descriptive messages
  6. Push to your fork
  7. Open a Pull Request

What to Contribute

Priority areas:

  • Bug fixes
  • Documentation improvements
  • Build system enhancements
  • Testing infrastructure
  • Qt6/QML GUI components
  • Wayland integration
  • Package management
  • Network configuration

Questions?

Open an issue on GitHub for questions or discussions.