Skip to content

[codex] Remove unused remote rootfs build#20

Merged
EYHN merged 10 commits into
mainfrom
codex/remove-remote-rootfs
May 13, 2026
Merged

[codex] Remove unused remote rootfs build#20
EYHN merged 10 commits into
mainfrom
codex/remove-remote-rootfs

Conversation

@EYHN

@EYHN EYHN commented May 13, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Remove the unused remote rootfs Docker context and build script.
  • Drop the stale remote-rootfs Makefile target so SandboxVM only exposes maintained local build targets.
  • Remove git from the local SandboxVM rootfs package list.
  • Remove erofs-utils from the local SandboxVM rootfs package list; EROFS image creation remains a build-host concern.
  • Keep net-tools and e2fsprogs in the local rootfs for runtime diagnostics and overlay formatting.
  • Remove the local VM SSH server/debug-access flow while preserving the SSH client package for outbound SSH usage.
  • Build the guest vmd binary with -trimpath -ldflags="-s -w" to strip debug metadata from the local rootfs init binary.
  • Remove unused socat and udhcpc packages now that the VM no longer starts an SSH forwarder or DHCP client.
  • Prune runtime rootfs cache/test/doc residue: Python __pycache__, Python stdlib tests, package docs/man/info/lintian data, debconf cache, and logs.
  • Remove unused AppIconCOOKIE and AppIconLIQUID assets, and narrow Release/Staging alternate app icons to the two icons exposed by product code.
  • Exclude Debug/TestFlight icon sources from production Release assets; Staging keeps TestFlight as its primary icon but excludes Debug-only icon sources.

Validation

  • make -C sandbox-vm -n framework
  • make -C sandbox-vm -n vm
  • make -C sandbox-vm proto
  • cd sandbox-vm && go test ./cmd/vmd/... ./sdk/apple/... ./internal/... ./pkg/...
  • xcodebuild -workspace OpenBridge.xcworkspace -scheme OpenBridge -configuration Release -showBuildSettings confirms ARCHS = arm64 and Release alternate icons are AppIconBLUEBLOCK AppIconMERCURY.
  • xcodebuild -workspace OpenBridge.xcworkspace -scheme OpenBridge -configuration Staging -showBuildSettings confirms Staging alternate icons are AppIconBLUEBLOCK AppIconMERCURY.
  • cd macos && BUILD_CONFIGURATION=UnsignedDebug bash DevKit/Scripts/workspace_build_debug.sh
  • cd macos && xcodebuild -workspace OpenBridge.xcworkspace -scheme OpenBridge -configuration Release -destination platform=macOS -derivedDataPath .build/DerivedDataReleaseAudit -skipPackagePluginValidation -skipMacroValidation CODE_SIGNING_ALLOWED=NO build
  • cd macos && xcodebuild -workspace OpenBridge.xcworkspace -scheme OpenBridge -configuration Staging -destination platform=macOS -derivedDataPath .build/DerivedDataReleaseAudit -skipPackagePluginValidation -skipMacroValidation CODE_SIGNING_ALLOWED=NO build
  • Built a temporary rootfs and verified sshd is absent while ssh, ssh-keygen, ifconfig, netstat, route, mkfs.ext4, python3, rg, curl, ip, ping, jq, fdfind, and file remain available.
  • Built a temporary stripped-vmd rootfs and verified /sbin/init is stripped.
  • Temporary rootfs size after vmd stripping: 69M compressed EROFS, 210M exported tar.
  • Built a temporary rootfs after removing socat and udhcpc; verified both are absent and required runtime tools remain available. Same-compressor comparison: lzma EROFS 65,294,336 -> 64,598,016 bytes; exported tar 220,562,432 -> 218,688,000 bytes.
  • Built a temporary rootfs after pruning cache/test/doc residue; verified Python imports, python3 -m pip, and python3 -m venv still work. Same-compressor comparison from previous step: lzma EROFS 64,598,016 -> 55,078,912 bytes; exported tar 218,688,000 -> 196,113,408 bytes.
  • Inspected rebuilt Release Assets.car: AppIcon, AppIconBLUEBLOCK, and AppIconMERCURY are present; AppIconDev, AppIconTESTFLIGHT, AppIconCOOKIE, and AppIconLIQUID are absent. Release Assets.car is 16M in the local unsigned build.
  • Inspected rebuilt Staging Assets.car: AppIconTESTFLIGHT, AppIconBLUEBLOCK, and AppIconMERCURY are present; AppIconDev, AppIconCOOKIE, and AppIconLIQUID are absent. Staging Assets.car is 15M in the local unsigned build.

@EYHN
EYHN marked this pull request as ready for review May 13, 2026 06:41
@EYHN
EYHN merged commit 73a94c8 into main May 13, 2026
3 checks passed
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.

1 participant