Commit Graph
42 Commits
Author SHA1 Message Date
NeilClack f74d8cb708 Make the baked app a real store-path dependency via builtins.storePath
Build Kiosk Image (Raspberry Pi) / rpi (push) Canceled after 9s
Build Kiosk Images (x86) / android (push) Successful in 3m56s
Build Kiosk Images (x86) / commercial (push) Successful in 3m32s
Build Kiosk Images (x86) / kiosk (push) Successful in 4m7s
The previous commit wrapped the manifest's storePath string in a
symlinkJoin. symlinkJoin passes its paths as a file, so a bare store-path
string registered no dependency: Nix never substituted the closure and the
symlinkJoin failed with 'radiantwave-9b57e48: No such file or directory'.

builtins.storePath turns the published path into a real store-path
dependency that Nix substitutes from the channel's Attic cache, so the app
is baked and never compiled. Keep the raw string (publishedPath) for the
updater's plain-string baseline pointer.
2026-10-07 10:48:15 -05:00
NeilClack a33a586485 Bake the channel manifest's closure instead of a pinned app version
Build Kiosk Image (Raspberry Pi) / rpi (push) Canceled after 9s
Build Kiosk Images (x86) / android (push) Failing after 19s
Build Kiosk Images (x86) / commercial (push) Failing after 18s
Build Kiosk Images (x86) / kiosk (push) Failing after 18s
Production builds failed CI's baseline preflight because flake.nix pinned
the app to tag 1.8 (channel.appVersion = "1.8") while the published
manifest had moved on to 1.9; dev was likewise pinned to a stale commit.

Stop pinning the app anywhere. flake.nix now fetches the channel's
published manifest at eval time (builtins.fetchurl) and bakes its
storePath verbatim, so every image carries exactly the closure RadiantWave
published to Attic and never compiles the app from source.

- flake.nix: drop the radiantwave/radiantwave-dev inputs, appInput,
  appVersion, channelVersion and baselineOutPaths; add channelAtticUrl,
  channelManifestDir and publishedApp; builders consume the published path.
- configuration.nix: wrap the published store path in a symlinkJoin so it
  can live in environment.systemPackages; add --impure to autoUpgrade
  flags and set tarball-ttl = 0 so eval reads the current manifest.
- radiantwave-updater.nix: baselinePackage (package) -> baselinePath (str),
  seeded from the exact manifest path.
- CI (build.yml, build-rpi.yml): replace the version-equality preflight with
  a fail-fast check that the announced closure is in the channel's Attic;
  set tarball-ttl = 0.
- build-rpi.sh: pass --impure.
- AGENTS.md: document the manifest-driven baseline.
2026-10-07 10:26:17 -05:00
NeilClack 8796feddd9 Declare app version per channel and fix Android live updates
- Add channel.appVersion and an appPackage override so pure builds bake the pinned version instead of RadiantWave's 0.1.0 default.

- Pin the radiantwave input to tag 1.8 and allow unfree in the RPi builder to match x86.

- radiantwaveUpdaterModule gains a manifestFile arg; Raspberry Pi polls aarch64-manifest.json.

- Launch the rotated/Android kiosk through /var/lib/radiantwave/current so the live updater actually applies.
2026-10-03 11:59:29 -05:00
NeilClack e6138d398d Update raspberry pi builds 2026-09-30 12:04:37 -05:00
NeilClack c18e158b69 Point dev branch at the dev RadiantWave channel
Build Dev ISOs / build-dev-kiosk (push) Successful in 4m29s
Build Dev ISOs / build-dev-android (push) Successful in 4m31s
Build Dev ISOs / build-dev-commercial (push) Successful in 4m36s
Fixes b136d17 which left the channel block on main values, so the dev
branch was building/tracking prod instead of radiantwave-dev.
2026-08-28 20:30:51 -05:00
NeilClack b136d1751b Merge -dev closures.
Build Dev ISOs / build-dev-kiosk (push) Successful in 4m55s
Build Dev ISOs / build-dev-android (push) Successful in 4m52s
Build Dev ISOs / build-dev-commercial (push) Successful in 4m53s
Consolidates 8 closures to only 4 by using a git branch selector that sets
the values for -dev variants of each closure.

Reference the 'Verifying KioskConfig builds are in the right branch' note
in Obsidian for more reference.
2026-08-28 20:15:32 -05:00
NeilClack 05bb98b107 Enable live app updater on production variants
Build Dev ISOs / build-dev-android (push) Canceled after 0s
Build Dev ISOs / build-dev-commercial (push) Canceled after 0s
Build Dev ISOs / build-dev-kiosk (push) Canceled after 1m10s
All variants now follow the same update procedure as the dev flakes;
prod variants pull the RadiantWave binary, Attic repo, and manifest
from the radiantwave channel instead of radiantwave-dev.
2026-08-28 16:37:13 -05:00
NeilClack d661162676 Add live RadiantWave updater (dev variants)
Build Dev ISOs / build-dev-android (push) Successful in 1m48s
Build Dev ISOs / build-dev-kiosk (push) Successful in 1m37s
Build Dev ISOs / build-dev-commercial (push) Successful in 1m46s
Add a radiantwave-updater NixOS module that polls a manifest on the
fileserver and swaps the app pointer /var/lib/radiantwave/current to new
closures fetched from the dev Attic cache. Closures are fetched with
'nix copy --from', never built from source; the swap is atomic via
mv -T.

Enable it on the -dev variants only for now: the login shell launches
from /var/lib/radiantwave/current/bin/radiantwave when enabled, and from
the immutable system path otherwise, so prod behavior is unchanged. The
pointer is seeded on first boot to the baseline copy already baked into
the closure (no duplication).
2026-08-27 20:58:07 -05:00
NeilClack b8d0f59c0a Remove EDID overwrite
Build Dev ISOs / build-dev-android (push) Successful in 4m50s
Build Dev ISOs / build-dev-kiosk (push) Successful in 4m49s
Build Dev ISOs / build-dev-commercial (push) Successful in 4m45s
2026-08-26 12:30:36 -05:00
NeilClack 4e36113636 Disable EDID Override
Build Dev ISOs / build-dev-android (push) Successful in 4m53s
Build Dev ISOs / build-dev-kiosk (push) Successful in 4m51s
Build Dev ISOs / build-dev-commercial (push) Successful in 4m45s
2026-08-26 11:38:17 -05:00
NeilClack 2bf762acac Add actual EDID from Android Kiosk
Build Dev ISOs / build-dev-android (push) Successful in 5m5s
Build Dev ISOs / build-dev-kiosk (push) Successful in 4m56s
Build Dev ISOs / build-dev-commercial (push) Successful in 4m53s
2026-08-26 10:12:45 -05:00
NeilClack 46a61a8397 Remove HDMI-A-1
Build Dev ISOs / build-dev-commercial (push) Successful in 4m17s
Build Dev ISOs / build-dev-android (push) Successful in 4m23s
Build Dev ISOs / build-dev-kiosk (push) Successful in 4m56s
HDMI-A-1 refers to the HDMI port closest to the power cable.
In all models, we end up connecting HDMI to port 2.
HDMI-A-1 was likely taking over, becuase it suddenly had a valid
EDID assigned, indicating 'a monitor is connected here'
2026-08-25 22:26:00 -05:00
NeilClack dfa7320a37 Test 1 - EDID Spoofing for Android 4K
Build Dev ISO / build-dev-iso (push) Canceled after 2m40s
2026-08-25 21:40:56 -05:00
NeilClack 65a6b256f9 Fix dev/prod split and dev ISOs; consolidate zero-touch installer
- Wire -dev variants to the radiantwave-dev input (?ref=dev); prod keeps main
- Fix android-dev upgradeFlakeRef (was upgrading into production config)
- Parameterize one installer module (zero-touch-installer.nix); replace the
  four near-duplicate ISO configs; mkIso pairs each ISO with its closure +
  disk layout, fixing commercial-dev/android-dev ISO eval errors
- Add missing packages outputs (commercial-dev, android-dev, rpi, rpi-dev)
- Set networking.hostName + system.configurationRevision per variant
- Remove gitea access token and dead netrc/JWT config (repos are public)
- Drop flake.lock update step from CI (lock updates are manual)
- Refresh AGENTS.md: variants/ISO tables, facter report procedure, gotchas
2026-08-23 09:58:46 -05:00
NeilClack 64b2a9cfc4 Shrink splash screen 2026-08-23 08:20:10 -05:00
NeilClack 9965e30152 Fix git urls 2026-08-22 17:07:47 -05:00
NeilClack f8cb1746af Release RadiantWave (C++) 2026-08-18 04:44:58 -05:00
NeilClack 553b06ea92 Fix closure naming' 2026-08-17 22:45:18 -05:00
NeilClack 8e8da490e4 Update radiantwave reference and add dev variants to all images 2026-08-17 22:44:14 -05:00
NeilClack d37c794be4 Fix repository pointers 2026-08-17 22:08:47 -05:00
NeilClack b26081046e Update RadiantWave
build-dev.yml / update-and-build (push) Canceled after 0s
2026-08-17 21:35:20 -05:00
NeilClack 2fb99175f7 Re-size Plymouth image to 1920x1080 2026-08-17 19:49:01 -05:00
NeilClack e09758a70e fix: switch radiantwave inputs to SSH for legacy Go repo
build-dev.yml / update-and-build (push) Failing after 4m9s
2026-08-17 12:54:06 -05:00
NeilClack 14463ad99b Just make RadiantWave-Legacy public
build-dev.yml / update-and-build (push) Failing after 9s
For now, to get builds working.
2026-08-17 12:52:11 -05:00
NeilClack 027d1a628f Update token
build-dev.yml / update-and-build (push) Failing after 8s
2026-08-17 12:50:20 -05:00
NeilClack fb2f861258 Revert back to Legacy Radiant Wave
build-dev.yml / update-and-build (push) Failing after 10s
2026-08-17 12:48:22 -05:00
NeilClack 2abdfa2b9b revert upgradeFlakeRef URLs to KioskConfig to match renamed repo
build-prod.yml / update-and-build (push) Canceled after 0s
2026-08-17 11:02:19 -05:00
NeilClack 0cb1337f18 add radiantwave-legacy input with auth token, update flake.lock 2026-08-17 10:57:16 -05:00
NeilClack 50176d8fd5 repoint production to radiantwave-legacy, dev to radiantwave (ref=main)
- Replace radiantwave-dev input with radiantwave-legacy
- Production configs (kiosk, commercial, android, rpi) now use radiantwave-legacy
- Dev configs (kiosk-dev, commercial-dev, rpi-dev) now use radiantwave (ref=main)
- Fix KioskConfig -> kioskconfig case mismatch in all upgradeFlakeRef URLs
2026-08-17 10:51:05 -05:00
NeilClack e3120f27c2 Pull back from radiantwave-cpp-dev to radiantwave-dev 2026-08-08 00:02:09 -05:00
NeilClack 42b68842ff Fix various small issues 2026-08-07 22:17:24 -05:00
NeilClack 2e3d88b57d Update Plymount dontUnpack = true; 2026-08-07 17:47:04 -05:00
NeilClack 50a1f3e99d Update repository location 2026-08-07 17:19:04 -05:00
NeilClack 37d18d3f47 Update repository location 2026-08-07 17:18:32 -05:00
NeilClack cbb3e05859 Update to radiantave-cpp, enable plymouth boot image 2026-08-07 17:13:59 -05:00
NeilClack 5e32552daf Cleanup comments 2026-08-02 01:04:19 -05:00
NeilClack ab64880281 Organize flakes and cleanup things.
Update SSH keys
Remove ISO 'VM' configuration
2026-08-02 00:56:34 -05:00
NeilClack 09bc293af3 Chore: Update RadiantWave 2026-07-29 19:40:04 -05:00
NeilClack 4af16d9df7 Specify main branch 2026-07-28 10:43:06 -05:00
NeilClack 7f2f19fe41 fix: use correct lowercase repo name radiantwave.git 2026-07-27 14:24:25 -05:00
NeilClack 5a6031a3fe refactor: migrate from Codeberg to Gitea and rename rhemawave to radiantwave
- Update all Codeberg URLs to gitea.radiantwavetech.com/RadiantWaveTech/
- Rename flake inputs: rhemawave → radiantwave, rhemawave-dev → radiantwave-dev
- Rename NixOS configs: rhemawavekiosk* → radiantwavekiosk*
- Update systemd services, data paths, and binary references
- Rename plymouth theme files
- Update CI workflow, documentation, and build scripts
2026-07-27 14:23:31 -05:00
NeilClack c06a3f7f92 init new repo 2026-07-27 14:13:58 -05:00