mirror of
https://github.com/HeyPuter/gex.git
synced 2026-11-13 18:34:21 -10:00
The tree by what each part is, behind the top-level Makefile: - shims/ -> hosts/ (the browser, kernel, native and Wayland hosts) - web/ -> page/ (the page's source, build and serve), ports/mesa, ports/xwayland and ports/tint (the ports the page loads), site/ (static sites and the eject page) - tools/gexcc -> toolchain/gexcc, with the sysroot and busybox builds from tools/wine-wasm in toolchain/sysroot and toolchain/busybox, and one toolchain/pins (musl, the LP64 musl, LLVM, busybox) - tools/wine-wasm -> wine/: dist.sh (was wine64-dist.sh), wine.pins (64-bit Wine, and the 32-bit tree its wineserver builds from), libs.pins (the Unix libraries), the 32-bit-only pieces in wine/legacy32 (its own pins and legacy.mk, which wine/Makefile includes) - tools/*.py and tools/*.sh -> scripts/ (the GL generators in scripts/gl) - wine32/src.sh is scripts/fetch-pinned.sh, which takes the trees the old script marked as its own References follow the moves: paths from the tree's root by the map, paths from a script's own directory by where their target went. Co-Authored-By: Claude Opus 5.5 <[email protected]> Claude-Session: https://claude.ai/code/session_e0aa53aa95eb4b86910519b4d14812a5
22 lines
1.0 KiB
JavaScript
22 lines
1.0 KiB
JavaScript
// The page lets the shim's and the kernel's bytes go once they are compiled:
|
|
// after boot and two programs, the runtime's module state holds neither
|
|
// (runtime.js `heldBytes`), and a second program still starts from the
|
|
// host's compiled shim.
|
|
import { System } from '../../page/runtime/src/index.js';
|
|
import { MemoryFilesystem } from '../../page/runtime/src/fs.js';
|
|
import { heldBytes } from '../../page/src/runtime.js';
|
|
|
|
export const meta = { hosts: ['browser', 'node'], images: ['busybox'], timeout: 120 };
|
|
|
|
export default async function (t) {
|
|
const { eq, timeout } = t;
|
|
const sys = new System({ baseUrl: t.baseUrl, debug: t.debug() });
|
|
const fs = new MemoryFilesystem(sys);
|
|
fs.addTar(t.work('bb.tar.zst'));
|
|
await timeout(sys.boot(), 60000, 'boot');
|
|
const env = { PATH: '/bin:/usr/bin' };
|
|
for (const n of [1, 2]) eq(`run ${n}`, (await timeout(sys.run(['echo', `hi ${n}`], { env }), 30000, `run ${n}`)).stdout, `hi ${n}\n`);
|
|
eq('the bytes the runtime holds after compiling', heldBytes(), { shim: false, kernel: false });
|
|
await sys.shutdown();
|
|
}
|