Skip to content

[android] stick to yarn on proot by default - #2

Merged
luisguzman-adfa merged 1 commit into
appdevforall:mainfrom
iiab:main
Jun 5, 2026
Merged

[android] stick to yarn on proot by default#2
luisguzman-adfa merged 1 commit into
appdevforall:mainfrom
iiab:main

Conversation

@luisguzman-adfa

Copy link
Copy Markdown
Collaborator

yarn helps prevent syscalls bugs under proot over npm

@luisguzman-adfa
luisguzman-adfa merged commit 9d7f713 into appdevforall:main Jun 5, 2026
1 check passed
luisguzman-adfa added a commit that referenced this pull request Jul 30, 2026
…n, lifecycle guard

- #1: mount the feedback FAB on LibraryActivity only at boot-gate dismiss (onServerReady), so it
  never floats over the boot animation / install progress; and remove it from SetupProgressActivity
  (the install index is itself a progress/gate surface). Wizard + Get More keep it (normal screens).
- #2: installOn(activity, screenTag, bottomMarginDp) overload — LibraryActivity passes 88dp to clear
  the bottom nav; nav-less screens use the default 16dp (flush).
- #4: guard the async screenshot callback with isFinishing()/isDestroyed() before using the activity.
luisguzman-adfa added a commit that referenced this pull request Jul 31, 2026
#1 Cancel: the notification Cancel now runs the full terminal cleanup (release EnvironmentLock,
post terminal) via a done-guard, instead of a bare teardown that stranded the environment stopped
and the lock held. Cancel is offered ONLY for backup (read-only); restore has no Cancel action
(destructive, hard gate). A clean restore clears InstallGuard; a FAILED restore leaves it set so
next-launch recovery repairs the torn rootfs.

#2 Boot handoff: the service no longer boots the environment. Mirroring InstallService (whose server
restart is owned by the install index), DeepOpService leaves it stopped and the hosting Activity boots
via serverController.startEnvironment() on return / next launch — so the service and ServerController
never both own the proot container. Removes sBootEngine and the now-unused EnvironmentControl.start().
luisguzman-adfa added a commit that referenced this pull request Jul 31, 2026
#1 CloneShareService: on a START_STICKY null-intent restart with no active clone (session + daemon
died with the process), stopSelf instead of resurrecting a stale 'transferring' notification / locks.
#2 CloneSendSession.begin: set the volatile active flag last so a reader that sees it also sees the
rest of the fields.
luisguzman-adfa added a commit that referenced this pull request Jul 31, 2026
#1 SyncStateViewModel.getTransport(): double-checked lazy init on a volatile field, so the now
process-global transport is never built twice by the main thread + a probe's IO thread (a stray
RsyncManager/rsync child a later stop() couldn't reach).
#2 SyncFragment.onDestroyView() (old UI): don't stop the shared transport / drop the network binding
while a clone is in flight — that old-UI teardown would otherwise kill the clone daemon and strand its
lock + keep-alive. Follow-ups noted in the PR: daemon liveness check on re-bind; CONFIRM-phase network
binding on onCleared.
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.

2 participants