TTUL browser Linux ================== Cloudflare serves these static assets. v86 translates the guest's x86 instructions into WebAssembly inside your browser. There is no server-side VM and no SSH connection to an external host. xterm.js connects to the guest's serial console. Each tab has its own machine and localhost network. The 2005 mailbox and websites are authored fiction, not recovered archives. The programs are real: Alpine Linux, Bash, Mutt, Lynx, nano, BusyBox, p4 and p4d. The clock starts on November 9, 2005. Most kernel and binary versions are newer. uname and distro release files wear a fictional Debian 3.1 sarge / Linux 2.6.12 identity. Use /bin/busybox uname -a for the actual kernel; original distribution files are in /usr/share/ttul/runtime. Git is the real July 2005 version 0.99. There is no Internet network adapter, external email delivery or telemetry. Save session writes an entire VM snapshot and terminal screen to IndexedDB. Restore uses that snapshot when it matches the current guest image. Browser storage can be cleared or evicted, so don't keep anything irreplaceable here. Source, build instructions, package provenance and third-party notices: https://github.com/ttulttul/ttul-homepage/tree/main/scripts/linux Components ---------- v86 0.5.472+gcc37f35: BSD-2-Clause, https://github.com/copy/v86 xterm.js: MIT, https://github.com/xtermjs/xterm.js TinyCC 0.9.27: LGPLv2.1, exact source at /linux/tcc-source.tar.bz2 Git 0.99: GPLv2, exact source at /linux/git-0.99-source.tar.gz Git source: https://github.com/git/git/tree/v0.99 Git's epoch sorter statically links OpenSSL 1.0.2u bignums (no TLS transport). OpenSSL source: https://github.com/openssl/openssl/tree/OpenSSL_1_0_2u License in guest: /usr/share/licenses/git099-openssl.txt SeaBIOS: LGPLv3, https://github.com/coreboot/seabios Linux kernel: GPLv2, https://www.kernel.org Alpine packages: individual licenses, listed by `cat /etc/ttul-packages`. Package sources and APKBUILD recipes: https://gitlab.alpinelinux.org/alpine/aports Alpine 3.20 x86 package repository: https://dl-cdn.alpinelinux.org/alpine/v3.20/ GNU libc 2.31: LGPLv2.1+, https://sources.debian.org/src/glibc/ GNU libc copyright notice: /usr/share/licenses/glibc.txt inside the guest Mutt: GPLv2+, https://www.mutt.org Lynx: GPLv2, https://lynx.invisible-island.net BusyBox: GPLv2, https://busybox.net Bash: GPLv3+, https://www.gnu.org/software/bash/ Perforce p4/p4d 2016.2: Copyright Perforce Software, all rights reserved. Unmodified public binaries: https://ftp.perforce.com/perforce/r16.2/bin.linux26x86/ Run `p4 help legal` for its bundled OpenSSL notices. Perforce software terms: https://www.perforce.com/legal The image is rebuilt with scripts/linux/build.sh using Docker. The site repository includes the complete authored overlay, depot and build recipe. SHA256SUMS lists the published boot assets. /etc/ttul-packages lists the installed package versions; Alpine's source recipes identify the upstream source tarballs and patches for each exact package.