Repository navigation
Releases: kevinzhow/Rungic
Releases · kevinzhow/Rungic
Release list
Rungic dev 20261008.2
Rungic dev release 20261008.2, origin/main at 95c89ee.
Merged pull requests since 20261005.7
- Install: transfer every file the verified manifest lists (#61) (0b73633)
- Uninstall: judge Android package steps by readback, not by pm's output or exit code (#60) (cc37d96)
- Uninstall: revoke Rungic's casting config bind in the init namespace before checking mounts (#59) (cc05396)
- Uninstall: stop older controllers without runtime-status, then check the resources directly (#58) (14e800b)
- standalone.py uninstall: preview first, keep the home by rename, block restarts until removal finishes (#56) (e93a35f)
- Acceptance: claim only the experiences the checks assert (#55) (0f1ac0e)
- Device page: show the translated message for an oversized response again (#54) (8ed061c)
- Tests: own the private D-Bus daemon instead of Gio.TestDBus (#53) (89a9706)
- Tests: stop and wait for detached boot fixture children (#52) (572cee1)
- Tests: fail offline tests that reach a phone or the build host (#51) (cccca1d)
- Tests: give device-panel tests the module path the installed package has (#50) (97ac979)
- Tests: stub the android-media backend in the container control fixture (#49) (0bbb4c2)
- Acceptance reports: a verdict with its scope, the phone's actual install, every attempt kept, a readable page (#48) (88f5aa7)
- Release: drift, how far a phone is from origin/main, part by part (#47) (ca2a428)
- Back to the front at once (APK 2.43): last frame shown, next frame asked at once, controller checks after; SSH shows the phone's addresses (#46) (0a8def6)
- Start Linux independently of the Android display app (#45) (fcf0e1f)
- Media: microphone, cameras and phone speaker in an independent root backend, out of the app (APK 2.42) (#44) (e992690)
- Network: Linux's own network as the Rungic app (Settings → Services, on by default); the resolver never left empty (#43) (353efca)
- Push-to-talk on the call's voice coordinator (press mode): work only from the user's words, results out of band (#42) (bb334dc)
- Voice: its own words start no task (a result or question of execution is no request) (#41) (9ad0ba0)
- Task control: step into work under way (director tell / take over / stop, steering inbox, verified stop, resume after restart) (#40) (efe085d)
- Release deploy: a snapshot kept from the last deploy is replaced, not a reason to stop (#39) (0d8a6fa)
Other commits
- rungic-migrate: one-time migrations by name, once each, in a ledger, on Android and in the container (docs/122 step 5) (95c89ee)
- Root provider: nothing assumes Magisk where KernelSU runs too (Kevin 2026-10-08) (97ac1da)
- Release: casting travels with the release and is installed where the phone has it (docs/122 step 4) (02f2abf)
- Deploy converges the Android settings after the Android files; drift compares them (docs/122 step 3) (cfaa327)
- First boot: the overlay and Magisk's grant are rungic-converge's; a stopped Linux still converges (docs/122 step 2) (a9907ac)
- Runtime: rungic-converge brings the Android settings back at every boot, before Linux (docs/122 step 1) (45f02f4)
- release/history.json: dev release 20261008.1 on the G100 and the G100 S (a failed first try rolled back) (507b59c)
- docs/122: Kevin's decisions (converge after deploy, ledger); runtime permissions reported until decided (107edce)
- docs/122: design of per-boot convergence of Android settings (P1) and ledger-based one-time migrations (P2) (77f6290)
- Acceptance: audio.playback plays and watches its stream in one script on the phone (a2b4e78)
- Deploy: bring the release's .debs only, not every build in the pool (2f27e46)
- Deploy: the settled-session checks get a folder for their picture (KeyError since 69a3219) (850434d)
- Pixel art skill: no setup step (Krita 6 has its Scripter on); first real drawing recorded (5e4fdeb)
- Skill: pixel art in Krita (rungic-krita-pixel-art) (6c9e207)
- docs/121, features: one list of Android-side files; per-boot settings in rungic-runtime (c7f2482)
- APK 2.45 (93): the root hint and RootShell reach phones with 2.44/2.43 (3ef636c)
- Runtime: the power-save allowlist each boot moves from first boot to rungic-runtime (b2f0de0)
- Release: update every Android-side file a first install puts down (root-provider, rungic-lxc) (d208f27)
- First boot: put Rungic on the power-save allowlist, so Linux's own network runs without the app (73454d7)
- docs/121: the fixes re-checked on the G100; own network waits for the app at boot (c484273)
- Shared: bindfs reaches Android's storage as the shell uid, so the media library follows Linux (42c7f7b)
- Floating keyboard: read the phone keyboard's languages without rewriting plasmakeyboardrc (5f8cb74)
- Own network: the netns directory is searchable whatever umask started it (63b147b)
- Merge pull request #57 from clansty/kernelsu-support (d827e72)
- Acceptance: the first run's results; keyboard-type reads the page again after a space; listen.py records with pw-record (fbc5d0c)
- Release acceptance: an agent operates the phone through a short checklist (78ddc09)
- docs/41, inventory: the new account's keyboard and the KWrite preedit, found and fixed on the G100 (6502c4d)
- A new account's keyboard is Rime with Chinese and English (748e86a)
- Rime: keep the pinyin composing in editors that count the preedit as their text (b41d106)
- rungic_device: RUNGIC_ADB_PORT selects the adb server for every command (95b165e)
- Keyboards: keys and candidates are accessible buttons with stable identifiers (2417b78)
- Fix workspace text fallback with KWin keysym input (4dec0b8)
- Preinstall KWrite and verify the editor through the mobile drawer (4ae66d5)
- Make application acceptance independent of UI language (4228b07)
- Distinguish Codex installation from sign-in and connection state (8304cd3)
- Name home rejection constant and document background delivery limits (b2ef837)
- Separate install action reminders and expose account rejection inline (d7e95fe)
- Reuse GLib name readiness and prove first systemd starts without retries (98b2a07)
- fix: wait for desktop dependencies before startup clients (1d5331a)
- docs: record reviewed image provenance and APT comparison (799adc1)
- fix: require explicit root image provenance mode (60c6ff6)
- docs: record native full root installation validation (f9119cf)
- Keep exact release arguments authoritative over runtime names (82a19e0)
- Use the APT list format for temporary bootstrap sources (5578478)
- Prepare CI2 roots with closed input and bound completion receipts (0cc40b2)
- Verify retained system APK independently of user installation (8937bb2)
- Make Termux prefix creation permissions deterministic (659b222)
- Align QA report documentation with device plan scope (b2c2bce)
- fix(qa): say the uncovered scenarios are outside the device plan (5e124b2)
- Preserve historical QA check descriptions and index Termux research (b9f2680)
- Keep process readiness separate from automatic experience coverage (3f48009)
- Require reviewed desktop pictures separately from process readiness (69a3219)
- Distinguish confirmed sign-out from unavailable Agent and preserve local records (1576a02)
- Notify first-install progress while the Activity is in the background (8a79b66)
- fix(qa): word the acceptance report for people, not for the program (c3787b6)
- fix(qa): locate drawer search by accessible semantics across languages (fab8b0c)
- fix(qa): separate planned executed and passing scenario coverage (a77b380)
- Record the exact independent Termux comparison boundary (d9e53f4)
- Make Termux seed compression deterministic and document bootstrap compatibility (e543de2)
- CI: compose and lock the Termux prefix from authenticated inputs (309cd0e)
- Guard the shell and Java removal message contract (1d6ef47)
- Check removal state only after controller failures (a72fee8)
- Explain interrupted removal in the APK before installation or startup (0adb755)
- docs(uninstall): render separate final failure reasons as a list (7f3ca65)
- fix(uninstall): preserve known absent Termux state and query errors (9cb27e5)
- fix(uninstall): validate the whole final state before completion (8a735d5)
- fix(uninstall): report the final snapshot and preview scope clearly (a0080b0)
- fix(workspaces): gate portal activation on compositor response (1de609b)
- fix(uninstall): verify user package state is durably saved (fe7c5bb)
- fix(account): restore desktop after first account setup (d654a14)
- Release history: 20261005.5 overnight standby on the USB G100 (connected power, Plasma in front) (21ddbbc)
- Release history: 20261005.7 on the G100 S (b939e7a)
Package versions
- kwin-common: 4:6.6.6-0ubuntu0.1+rungic11 -> 4:6.6.6-0ubuntu0.1+rungic12
- kwin-data: 4:6.6.6-0ubuntu0.1+rungic11 -> 4:6.6.6-0ubuntu0.1+rungic12
- kwin-dev: 4:6.6.6-0ubuntu0.1+rungic11 -> 4:6.6.6-0ubuntu0.1+rungic12
- kwin-wayland: 4:6.6.6-0ubuntu0.1+rungic11 -> 4:6.6.6-0ubuntu0.1+rungic12
- kwrite: (new) -> 4:25.12.3-0ubuntu1
- libkwin6: 4:6.6.6-0ubuntu0.1+rungic11 -> 4:6.6.6-0ubuntu0.1+rungic12
- plasma-keyboard: 6.6.6-0ubuntu0.1+rungic1 -> 6.6.6-0ubuntu0.1+rungic2
- rungic-agent-screen: 0.755 -> 0.841
- rungic-cua: 0.755 -> 0.841
- rungic-plasma-bridges: 0.755 -> 0.841
- rungic-plasma-config: 0.719 -> 0.855
- rungic-plasma-diagnostics: 0.713 -> 0.841
- rungic-plasma-input: 0.713 -> 0.841
- rungic-plasma-services: 0.713 -> 0.841
- rungic-plasma-session: 0.713 -> 0.841
- rungic-suggestions: 0.713 -> 0.841
- rungic-voice-agent: 0.755 -> 0.843
APK
- Rungic-2.45-93-6959a325d7e8.apk: 2.45 (versionCode 93), sha256 6959a325d7e853fade66fc01a61e7ee53b0ddf665c9070180013004f440982f5
Deploy
python3 tools/rungic_release.py deploy --all --from rungic-20261008.2.tarRungic dev 20261005.7
Rungic dev release 20261005.7, origin/main at 23d53df.
Merged pull requests since 20261005.6
- Call voice keeps its rules in every reply; heard words are acted on; work goes after or beside, as asked (#38) (c615a36)
- Agent: links to files on the phone open, also in a voice task's card (#32) (c762d0b)
- Voice: a long spoken reply never ends the conversation (#31) (e80f548)
- Add section contents to the top of README (#30) (19cb7d6)
- docs: rewrite project skills in clear technical English (#29) (ae50a14)
Other commits
- Release history: 20261005.6 on the G100 S (23d53df)
- Phone mode: the same executor as push-to-talk; calls go on locked; shared prompts (#33-#37) (3db2f19)
Package versions
- rungic-agent-screen: 0.726 -> 0.755
- rungic-cua: 0.726 -> 0.755
- rungic-design: 0.713 -> 0.755
- rungic-plasma-bridges: 0.719 -> 0.755
- rungic-voice-agent: 0.720 -> 0.755
APK
- Rungic-2.41-89-ebe85704af08.apk: 2.41 (versionCode 89), sha256 ebe85704af080e35aae68b6ad30efa687f5c3dfab4d094f6343bf0732ff559af
Deploy
python3 tools/rungic_release.py deploy --all --from rungic-20261005.7.tarRungic dev 20261005.6
Rungic dev release 20261005.6, origin/main at d88ac5d.
Merged pull requests since 20261005.5
- Firefox opens on the phone and in every agent workspace, with the user's sign-ins (#28) (d88ac5d)
- Release notes count from the last published dev release (#27) (fac8019)
Other commits
- Release history: 20261005.5 on both dev phones (e566188)
Package versions
- rungic-agent-screen: 0.713 -> 0.726
- rungic-cua: 0.713 -> 0.726
- rungic-firefox: 0.713 -> 0.726
APK
- Rungic-2.39-87-e59c85bc3577.apk: 2.39 (versionCode 87), sha256 e59c85bc35778b5504ffa8906d6adc8bdf5dccdc5c4127384e8331fe3941c4d3
Deploy
python3 tools/rungic_release.py deploy --all --from rungic-20261005.6.tarRungic dev 20261005.5
Rungic dev release 20261005.5, origin/main at f535977.
Merged pull requests since 20261005.2
- KWin stops drawing while the phone screen is off (#26) (f535977)
- Dev releases build the Android host library from their commit (#25) (81dbecc)
- Release deploy: phones take the packages straight from the build host (#24) (3cbf531)
- Fix Android hardware forwarding and migrate resident agent enable links (#23) (6999bee)
- Desktop session survives the Android host going away (#20) (68f640a)
- Separate resident agents and hardware services from the phone UI (#22) (9e738a2)
- docs: clarify quality requirements and interface contracts (#21) (4c72398)
Package versions
- kwin-common: 4:6.6.6-0ubuntu0.1+rungic10 -> 4:6.6.6-0ubuntu0.1+rungic11
- kwin-data: 4:6.6.6-0ubuntu0.1+rungic10 -> 4:6.6.6-0ubuntu0.1+rungic11
- kwin-dev: 4:6.6.6-0ubuntu0.1+rungic10 -> 4:6.6.6-0ubuntu0.1+rungic11
- kwin-wayland: 4:6.6.6-0ubuntu0.1+rungic10 -> 4:6.6.6-0ubuntu0.1+rungic11
- libkwin6: 4:6.6.6-0ubuntu0.1+rungic10 -> 4:6.6.6-0ubuntu0.1+rungic11
- rungic-plasma-bridges: 0.713 -> 0.719
- rungic-plasma-config: 0.618 -> 0.719
- rungic-voice-agent: 0.713 -> 0.720
APK
- Rungic-2.39-87-c539e45d9e57.apk: 2.39 (versionCode 87), sha256 c539e45d9e57edb7368a34af734e1c3a644df76a68ba02f82f91dc1df9a8f6db
Deploy
python3 tools/rungic_release.py deploy --all --from rungic-20261005.5.tarRungic dev 20261005.2
Rungic dev release 20261005.2, origin/main at c9d549c.
Merged pull requests since 20261005.1
- Release: ffmpeg-ubuntu +rungic2 for the codec client changes; history of the 20261005.1 deploys (#19) (c9d549c)
- Codec client: an old app closing the channel mid-configuration means version 1 (#18) (8d5c58c)
- KWin: only the device panel turns the phone (#17) (d4a96e8)
Package versions
- ffmpeg: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- kwin-common: 4:6.6.6-0ubuntu0.1+rungic9 -> 4:6.6.6-0ubuntu0.1+rungic10
- kwin-data: 4:6.6.6-0ubuntu0.1+rungic9 -> 4:6.6.6-0ubuntu0.1+rungic10
- kwin-dev: 4:6.6.6-0ubuntu0.1+rungic9 -> 4:6.6.6-0ubuntu0.1+rungic10
- kwin-wayland: 4:6.6.6-0ubuntu0.1+rungic9 -> 4:6.6.6-0ubuntu0.1+rungic10
- libavcodec-dev: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavcodec62: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavdevice-dev: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavdevice62: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavfilter-dev: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavfilter11: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavformat-dev: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavformat62: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavutil-dev: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libavutil60: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libkwin6: 4:6.6.6-0ubuntu0.1+rungic9 -> 4:6.6.6-0ubuntu0.1+rungic10
- libswresample-dev: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libswresample6: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libswscale-dev: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- libswscale9: 7:8.0.1-3ubuntu2+rungic1 -> 7:8.0.1-3ubuntu2+rungic2
- rungic-codec: 0.713 -> 0.715
- rungic-flatpak-codec: 0.713 -> 0.715
APK
- Rungic-2.34-82-da512d23982e.apk: 2.34 (versionCode 82), sha256 da512d23982e490a16d2334f32f6fbc23440d41cac763f1ef2ed58c5cef569f4
Deploy
python3 tools/rungic_release.py deploy --all --from rungic-20261005.2.tar