Skip to content

Conversation

@GreyhameAU
Copy link

@GreyhameAU GreyhameAU commented Feb 7, 2026

This PR adds support for a new output token to support SpruceOS: {spruce}

SpruceOS is an overhaul system similar to OnionOS, but supports more powerful hardware so allows more consoles than the ones supported in OnionOS. SpruceOS just had a major release adding support to the much more powerful Miyoo Flip, so the differences between SpruceOS and OnionOS's supported devices has grown significantly and I believe warrants being supported as a separate output token now.

My programming skills are not my current strength, so a lot of this is just from copying the {onion} token implementation, though in the outputFactorytest.ts it is hybridised with the {romm} implementation with the intention to catch bad extensions, as SpruceOS does support the Arduboy the OnionOS test was not appropriate.

I have included updated documentation for this change as well, though more than happy to make any changes to it.

Pull request checklist

  • Validate your change works as expected locally by running Igir (not just the unit tests)
  • Unit tests have been added to cover your change
  • npm test has been run locally for your change, to validate:
    • Your added and changed tests are passing
    • Your added and changed code adheres to the linter settings
  • Appropriate docs have been added or changed for your change
  • Your branch has no conflicts with the main (destination) branch

Added all systems that Spruce supports that Igir supports
fix typo from duplicating Onion token
unclosed ATARI quotations and list
Based on Onion OS test for known extensions
Based on ROMM test for unknown extensions, as Spruce supports Arduboy the Onion test was not appropriate
Add {spruce} token explanation
Fixed numerous whitespace typos from "hand writing" file
Add spruceos.md to usage/handheld with basic usage
Added {spruce} token to tokens.md
Updated mkdocs.yml
@github-actions
Copy link

github-actions bot commented Feb 7, 2026

👋 Welcome

Thank you for your first pull request, @GreyhameAU! If you haven't yet, please familiarize yourself with Igir's contribution guidelines.

Some GitHub Actions CI workflows may not automatically run for you due to GitHub's security best practices, so a maintainer may need to manually approve the workflows to run. As a result, it is important to make sure tests pass locally before submitting a pull request to help ensure a fast review. Thank you!

Comment generated by the GitHub First Interaction workflow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant