9 Commits

Author SHA1 Message Date
Torlando
e3cf0c75bf Merge pull request #8 from torlando-tech/fix/flasher-versioned-releases
Fix web flasher versioned releases (CORS)
2026-03-03 23:39:17 -05:00
torlando-tech
fd62d5042f Use exact match for HTTP status code check
grep -q 200 could match 2001 or other superstrings; -qx anchors
to the full line which is correct for curl's %{http_code} output.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 23:33:10 -05:00
torlando-tech
1c5dd9936a Add CI build check for pull requests
Runs both tdeck and tdeck-bluedroid builds on every PR to main.
Uploads firmware binaries as artifacts on the tdeck build for
easy testing by reviewers.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 21:17:14 -05:00
torlando-tech
8ebb637a78 Add landing page at GitHub Pages root from README.md
Generates a styled HTML page from README.md and deploys it to the root
of the GitHub Pages site, fixing the 404 at torlando-tech.github.io/pyxis/.
Includes navigation links to the web flasher, GitHub repo, and releases.

Closes #6

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 20:59:56 -05:00
torlando-tech
ee87edef7a Fix web flasher versioned releases failing with CORS error
GitHub release download URLs redirect to release-assets.githubusercontent.com
which doesn't return Access-Control-Allow-Origin headers. The browser blocks
cross-origin fetches from the GitHub Pages flasher, causing "Failed to fetch"
for any versioned release while the latest dev build (same-origin) works fine.

Fix: Deploy versioned firmware binaries to GitHub Pages alongside the dev
build at firmware/releases/{tag}/, so all versions are fetched same-origin.
The CI workflow now downloads existing release assets and deploys them to
Pages with keep_files: true to preserve across deploys.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-03 20:57:38 -05:00
torlando-tech
fd6fb4bcda Add firmware version picker to web flasher
Lets users choose between the latest dev build and tagged GitHub releases.
The dropdown queries the GitHub Releases API on page load and swaps
firmware fetch paths between Pages-relative and release-asset URLs.
CI now attaches all 4 firmware files to releases (bootloader, partitions,
boot_app0, firmware) so full installs work from any release version.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 16:36:03 -05:00
torlando-tech
ea586112e3 CI: auto-build and deploy firmware to GitHub Pages on every push to main
Rewrite release-firmware.yml to build the tdeck (NimBLE) env on pushes to
main (versioned as dev-<sha>) and on v* tags. Remove checked-in firmware
binaries from git tracking — CI now generates and deploys them to Pages.
Release creation is conditional on v* tags only.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-25 10:57:14 -05:00
torlando-tech
3dbb67f320 fix(ci): add tag_name for workflow_dispatch and make releases draft
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 20:11:05 -05:00
torlando-tech
ac6ceca9f8 Initial commit: standalone Pyxis T-Deck firmware
Split T-Deck firmware from microReticulum examples/lxmf_tdeck/ into its
own repo. microReticulum is consumed as a git submodule dependency pinned
to feat/t-deck. All include paths updated from relative symlinks to bare
includes resolved via library build flags.

Both tdeck (NimBLE) and tdeck-bluedroid environments compile successfully.
Licensed under AGPLv3.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-06 19:48:33 -05:00