This repo is the working area for the DE1 plugin path.
The current inner loop is the native macOS Decent app, not the tablet. We use the desktop app to iterate on plugin loading, settings UI, release install behavior, and basic Tcl runtime issues before doing final device testing.
plugins/cmo_updater/A CMO-specific updater plugin for the main CMO plugin.plugins/de1-plugin-cmo/Git submodule for the main plugin repo atjeffbean/de1-plugin-cmo.scripts/macos-plugin-sync.shCopies local plugin directories into the Decent app plugin folder.
Today the updater can:
- optionally pin a specific release tag, or default to
latest - check a release
- install a release into the local Decent plugin directory
- persist installed version state with an install receipt
- prompt for restart and exit the app after a short delay
The primary local harness is the Decent macOS app bundle plugin directory:
/Applications/Decent.app/Contents/Resources/de1plus/plugins
Typical loop:
- Edit the plugin in this repo.
- Sync it into the Decent app:
scripts/macos-plugin-sync.sh \
--dst "/Applications/Decent.app/Contents/Resources/de1plus/plugins"- Quit and reopen the Decent app.
- Open the plugin settings page in Extensions.
- Use
Check releaseorInstall release.
For the main plugin release path:
- Update
plugins/de1-plugin-cmo/. - Commit and push in the submodule repo.
- Publish a GitHub release in
jeffbean/de1-plugin-cmo. - Use the updater to install that release locally.
The updater settings page is intentionally minimal for now:
RepositoryReleaseCheckedInstalledStatusLast error
This is currently a manual install flow. We removed the extra timestamp-heavy detail for now.
src/coffee_ingest/Python ingestion tooling for local DB inspection and sync work.apps/receiver/Go backup receiver service for future plugin payload ingestion.docs/Working notes and current setup docs. The active local workflow isdocs/macos-plugin-loop.md.
- Treat the macOS app as the primary development loop.
- Treat the tablet as later integration testing.
- Keep the updater simple and durable first.
- Keep
CMOsafe while bootstrapping the update path.