Contributing
Thank you for contributing to tuna-installer-xfce! This document details development prerequisites, local testing procedures, and submission guidelines.
Prerequisitesβ
- Python: 3.10+
- PyGObject & GTK3:
python3-gobject,gtk3 - Testing:
pytest
Fedora/RHEL Installationβ
sudo dnf install -y python3-gobject gtk3 python3-pytest
Running Unit Testsβ
Execute the unit test suite across tests/test_core.py and tests/test_readiness.py:
pytest tests/
Alternatively, run via Python's standard unittest module:
python3 -m unittest discover tests/
Local Development & Manual Testingβ
Run the GTK3 installer wizard directly:
./tuna-installer-xfce
Headless GUI screenshot generation and verification can be run via:
python3 tests/gui/capture-screens.py /tmp/screenshots
Flatpak Packagingβ
To build and test the Flatpak manifest locally:
flatpak-builder --user --install --force-clean build flatpak/org.tunaos.InstallerXfce.json
flatpak run org.tunaos.InstallerXfce
Pull Request Guidelinesβ
- Ensure all pytest unit tests pass cleanly before submitting changes.
- Verify GTK3 UI components operate properly via keyboard navigation.
- Include Developer Certificate of Origin (DCO) sign-off on all commits (
git commit -s).