Lab machine: source code and licences
What the lab machine is
The interactive labs on this site run a real Linux system inside your browser. The emulator is v86 (BSD 2-Clause licence), with the SeaBIOS firmware (LGPL 3). The system it runs is built from Arch Linux 32 packages from the November 2022 release set, starting from the image the v86 project publishes for its own demonstration, trimmed for the course and with some packages added. We did not write that software. Its authors did, under the licences each package declares: mostly the GNU General Public Licence and GNU Lesser General Public Licence, plus others including MIT and BSD.
Getting the source code
Every program in the machine is free software, and you are entitled to its source code.
- From the distribution. Each package below links to its entry in the Arch Linux 32 package archive. Arch Linux 32 publishes the upstream source archives the packages were built from at sources.archlinux32.org, and its packaging recipes at git.archlinux32.org.
- From us, on request (written offer). For at least three years from the last date we distribute this machine, we will give anyone the complete corresponding source code for any package in it, for no more than our cost of physically performing the distribution. To ask, write to us through the contact page and name the packages you want.
The emulator's own source is at github.com/copy/v86. SeaBIOS's is at seabios.org.
What is in it (336 packages)
-
acl2.3.1-2.0 — package archive -
alsa-lib1.2.7.2-1.0 — package archive -
alsa-topology-conf1.2.5.1-1.0 — package archive -
alsa-ucm-conf1.2.7.2-1.0 — package archive -
alsa-utils1.2.5.1-1.0 — package archive -
archlinux-keyring20220927-1.0 — package archive -
archlinux32-keyring20220927-1.0 — package archive -
argon220190702-4.0 — package archive -
asp0.5.1-1.5 — package archive -
at3.2.5-2.0 — package archive -
attr2.5.1-2.0 — package archive -
audit3.0.7-1.0 — package archive -
base3-1.0 — package archive -
bash5.1.008-1.0 — package archive -
bc1.07.1-4.0 — package archive -
bind-tools9.16.5-1.0 — package archive -
binutils2.39-2.0 — package archive -
bison3.8.2-4.0 — package archive -
boost-libs1.80.0-2.0 — package archive -
brotli1.0.9-8.0 — package archive -
bzip21.0.8-4.0 — package archive -
c-ares1.18.1-1.0 — package archive -
ca-certificates20220905-1.0 — package archive -
ca-certificates-mozilla3.84-1.0 — package archive -
ca-certificates-utils20220905-1.0 — package archive -
calc2.14.1.0-1.0 — package archive -
chrony4.1-1.0 — package archive -
coreutils9.1-1.0 — package archive -
cronie1.6.1-1.0 — package archive -
cryptsetup2.4.1-1.0 — package archive -
curl7.79.0-3.0 — package archive -
db5.3.28-5.0 — package archive -
dbus1.12.20-1.1 — package archive -
device-mapper2.03.13-1.0 — package archive -
dhcpcd9.4.1-1.0 — package archive -
diffutils3.8-1.0 — package archive -
dillo3.0.5-11.0 — package archive -
dnssec-anchors20190629-3.0 — package archive -
dosfstools4.2-2.0 — package archive -
e2fsprogs1.46.5-4.1 — package archive -
ed1.18-1.0 — package archive -
elinks0.15.1-1.0 — package archive -
expat2.5.0-1.0 — package archive -
expect5.45.4-4.0 — package archive -
fakeroot1.29-1.0 — package archive -
fbdump0.4.2-6.0 — package archive -
fbset2.1-7.0 — package archive -
fbv1.0b-11.0 — package archive -
feh3.9.1-2.0 — package archive -
file5.43-1.0 — package archive -
filesystem2021.12.07-1.0 — package archive -
findutils4.9.0-1.2 — package archive -
flex2.6.4-3.0 — package archive -
fltk1.3.7-1.0 — package archive -
fluxbox1.3.7+205+g1d19662c-1.1 — package archive -
fontconfig2:2.13.94-1.0 — package archive -
freetype22.12.1-1.0 — package archive -
fribidi1.0.12-1.0 — package archive -
gawk5.2.0-3.0 — package archive -
gc8.2.2-1.0 — package archive -
gcc12.1.0-2.1 — package archive -
gcc-libs12.1.0-2.1 — package archive -
gdb12.1-1.0 — package archive -
gdb-common12.1-1.0 — package archive -
gdbm1.21-1.0 — package archive -
gettext0.21.1-1.0 — package archive -
giflib5.2.1-2.0 — package archive -
git2.38.1-1.0 — package archive -
glib22.70.3-1.1 — package archive -
glibc2.36-6.0 — package archive -
gmp6.2.1-2.0 — package archive -
gnu-netcat0.7.1-8.0 — package archive -
gnupg2.2.32-2.2 — package archive -
gnutls3.7.7-3.0 — package archive -
gpgme1.17.1-1.0 — package archive -
gpm1.20.7.r38.ge82d1a6-4.1 — package archive -
graphite1:1.3.14-2.5 — package archive -
grep3.8-2.0 — package archive -
groff1.22.4-7.0 — package archive -
guile2.2.7-2.7 — package archive -
gzip1.12-1.0 — package archive -
harfbuzz4.3.0-1.1 — package archive -
hicolor-icon-theme0.17-2.0 — package archive -
htop3.0.5-1.0 — package archive -
hwdata0.363-1.0 — package archive -
iana-etc20220915-1.0 — package archive -
icu71.1-1.4 — package archive -
imagemagick7.1.0.45-1.0 — package archive -
imlib21.9.1-1.0 — package archive -
inetutils2.1-1.0 — package archive -
iproute26.0.0-1.1 — package archive -
iptables1:1.8.8-2.1 — package archive -
iputils20211215-1.0 — package archive -
irssi1.2.3-3.1 — package archive -
jansson2.14-2.2 — package archive -
jq1.6-4.0 — package archive -
json-c0.16-1.0 — package archive -
kbd2.5.1-1.1 — package archive -
keyutils1.6.3-1.0 — package archive -
kmod30-1.2 — package archive -
krb51.19.3-3.7 — package archive -
lcms22.13.1-1.0 — package archive -
ldns1.8.3-1.0 — package archive -
less1:608-1.0 — package archive -
libaio0.3.113-1.0 — package archive -
libarchive3.5.2-1.0 — package archive -
libassuan2.5.5-1.0 — package archive -
libbpf1.0.1-1.2 — package archive -
libbsd0.11.7-1.0 — package archive -
libcap2.66-1.0 — package archive -
libcap-ng0.8.3-1.0 — package archive -
libdrm2.4.113-3.0 — package archive -
libedit20210714_3.1-1.0 — package archive -
libelf0.185-1.0 — package archive -
libepoxy1.5.10-1.0 — package archive -
libevdev1.13.0-1.0 — package archive -
libexif0.6.24-1.0 — package archive -
libffi3.4.3-1.0 — package archive -
libfontenc1.1.6-1.0 — package archive -
libgcrypt1.10.1-1.1 — package archive -
libglvnd1.5.0-1.0 — package archive -
libgpg-error1.46-1.0 — package archive -
libgudev237-1.0 — package archive -
libice1.0.10-4.0 — package archive -
libident0.32-8.0 — package archive -
libidn1.41-1.0 — package archive -
libidn22.3.3-1.0 — package archive -
libinih56-1.0 — package archive -
libinput1.20.0-1.0 — package archive -
libisl0.25-1.0 — package archive -
libjpeg-turbo2.1.4-2.3 — package archive -
libksba1.6.2-1.0 — package archive -
libldap2.6.3-1.0 — package archive -
liblqr0.4.2-3.0 — package archive -
libmaxminddb1.7.1-1.0 — package archive -
libmd1.0.4-1.0 — package archive -
libmnl1.0.5-1.0 — package archive -
libmpc1.2.1-2.0 — package archive -
libnetfilter_conntrack1.0.9-1.0 — package archive -
libnfnetlink1.0.2-1.0 — package archive -
libnftnl1.2.3-1.0 — package archive -
libnghttp21.50.0-1.0 — package archive -
libnl3.7.0-1.0 — package archive -
libnsl2.0.0-2.1 — package archive -
libomxil-bellagio0.9.3-3.0 — package archive -
libotr4.1.1-3.0 — package archive -
libp11-kit0.24.1-1.0 — package archive -
libpcap1.10.1-1.0 — package archive -
libpciaccess0.17-1.0 — package archive -
libpipeline1.5.6-1.0 — package archive -
libpng1.6.38-1.0 — package archive -
libpsl0.21.1-1.0 — package archive -
libraqm0.9.0-1.0 — package archive -
libsamplerate0.2.2-1.0 — package archive -
libsasl2.1.27-3.1 — package archive -
libseccomp2.5.4-1.0 — package archive -
libsecret0.20.5-2.0 — package archive -
libsm1.2.3-3.0 — package archive -
libssh21.10.0-1.0 — package archive -
libsysprof-capture3.44.0-2.1 — package archive -
libtasn14.19.0-1.0 — package archive -
libtiff4.3.0-1.0 — package archive -
libtirpc1.3.2-1.0 — package archive -
libtool2.4.7-2.0 — package archive -
libunistring1.0-1.0 — package archive -
libunwind1.6.2-1.1 — package archive -
liburcu0.13.2-1.0 — package archive -
libutempter1.2.1-3.0 — package archive -
libuv1.44.2-1.1 — package archive -
libwacom1.12-1.0 — package archive -
libx111.8.1-3.0 — package archive -
libxau1.0.10-1.0 — package archive -
libxaw1.0.14-1.0 — package archive -
libxcb1.15-1.1 — package archive -
libxcrypt4.4.28-2.0 — package archive -
libxcursor1.2.1-1.0 — package archive -
libxcvt0.1.2-1.1 — package archive -
libxdamage1.1.5-4.0 — package archive -
libxdmcp1.1.3-4.0 — package archive -
libxext1.3.4-4.0 — package archive -
libxfixes6.0.0-1.0 — package archive -
libxfont22.0.6-1.0 — package archive -
libxft2.3.6-1.0 — package archive -
libxinerama1.1.4-4.0 — package archive -
libxkbfile1.1.1-1.0 — package archive -
libxml22.10.2-2.0 — package archive -
libxmu1.1.4-1.0 — package archive -
libxpm3.5.13-3.0 — package archive -
libxrandr1.5.2-4.0 — package archive -
libxrender0.9.11-1.0 — package archive -
libxshmfence1.3.1-1.0 — package archive -
libxslt1.1.37-2.0 — package archive -
libxt1.2.1-1.0 — package archive -
libxxf86vm1.1.5-1.0 — package archive -
licenses20220125-1.0 — package archive -
linux5.19.7.arch1-1.0 — package archive -
linux-api-headers5.18.15-1.0 — package archive -
llvm-libs14.0.6-3.1 — package archive -
llvm13-libs13.0.1-3.0 — package archive -
lm_sensors1:3.6.0.r41.g31d1f125-1.0 — package archive -
lmdb0.9.29-1.0 — package archive -
logrotate3.20.1-1.0 — package archive -
lsof4.96.4-1.0 — package archive -
lua5.4.4-2.1 — package archive -
lua535.3.6-1.0 — package archive -
luit20220111-1.0 — package archive -
lvm22.03.13-1.0 — package archive -
lynx2.8.9-5.0 — package archive -
lz41:1.9.4-1.0 — package archive -
m41.4.19-1.0 — package archive -
make4.3-3.6 — package archive -
man-db2.11.0-1.0 — package archive -
mdadm4.2-2.0 — package archive -
mesa21.3.5-1.3 — package archive -
mg20220614-1.0 — package archive -
mkinitcpio32-2.0 — package archive -
mkinitcpio-busybox1.35.0-1.0 — package archive -
moreutils0.67-2.0 — package archive -
mpfr4.1.0.p13-3.0 — package archive -
mtdev1.1.6-2.0 — package archive -
nano6.4-1.0 — package archive -
nasm2.15.05-1.0 — package archive -
ncdu1.16-2.0 — package archive -
ncurses6.3-3.0 — package archive -
neofetch7.1.0-2.0 — package archive -
net-tools2.10-1.0 — package archive -
nettle3.8.1-1.1 — package archive -
nftables1:1.0.5-1.0 — package archive -
ngircd26.1-2.0 — package archive -
nmap7.91-1.0 — package archive -
npth1.6-3.0 — package archive -
ntp4.2.8.p15-1.0 — package archive -
oniguruma6.9.8-1.0 — package archive -
openrc0.43-2 — package archive -
openrc-sysvinit2.98-1 — package archive -
openssh8.7p1-2.0 — package archive -
openssl1.1.1.q-1.0 — package archive -
p11-kit0.24.1-1.0 — package archive -
pacman6.0.1-8.0 — package archive -
pacman-contrib1.4.0-4.0 — package archive -
pacman-mirrorlist20220318-1.6 — package archive -
pam1.5.2-1.0 — package archive -
pambase20221020-1.0 — package archive -
parted3.5-1.0 — package archive -
patch2.7.6-8.0 — package archive -
pciutils3.8.0-2.0 — package archive -
pcre8.45-3.0 — package archive -
pcre210.40-3.0 — package archive -
perl5.36.0-1.1 — package archive -
perl-error0.17029-4.1 — package archive -
perl-io-tty1.16-3.1 — package archive -
perl-ipc-run20220807.0-1.0 — package archive -
perl-mailtools2.21-6.1 — package archive -
perl-time-duration1:1.21-1.0 — package archive -
perl-timedate2.33-4.1 — package archive -
pinentry1.1.1-1.1 — package archive -
pixman0.40.0-2.0 — package archive -
popt1.18-3.0 — package archive -
procps-ng3.3.17-1.0 — package archive -
psmisc23.5-1.0 — package archive -
python3.10.8-2.0 — package archive -
python-attrs22.1.0-1.0 — package archive -
python-cffi1.15.1-1.0 — package archive -
python-cryptography37.0.2-1.2 — package archive -
python-packaging21.3-1.0 — package archive -
python-pip22.3-1.0 — package archive -
python-ply3.11-10.2 — package archive -
python-pycparser2.21-3.2 — package archive -
python-pyparsing3.0.9-1.0 — package archive -
python-wheel0.37.1-1.3 — package archive -
readline8.1.001-1.0 — package archive -
rlwrap0.46-1.0 — package archive -
rsync3.2.3-4.0 — package archive -
run-parts5.5-1.0 — package archive -
sed4.8-1.0 — package archive -
shadow4.8.1-4.0 — package archive -
source-highlight3.1.9-9.1 — package archive -
sqlite3.39.4-1.0 — package archive -
strace5.19-1.0 — package archive -
sudo1.9.12-1.0 — package archive -
syslinux6.04.pre2.r11.gbf6db5b4-3.0 — package archive -
sysstat12.6.0-1.0 — package archive -
systemd251.2-1.0 — package archive -
systemd-libs251.2-1.0 — package archive -
sysvinit2.99-2 — package archive -
tar1.34-1.0 — package archive -
tcc0.9.27-4.0 — package archive -
tcl8.6.12-3.0 — package archive -
tcpdump4.99.1-1.0 — package archive -
tcsh6.24.01-2.0 — package archive -
texinfo6.8-2.0 — package archive -
thin-provisioning-tools0.9.0-1.0 — package archive -
tpm2-tss3.2.0-1.1 — package archive -
tre0.8.0-6.0 — package archive -
tzdata2022e-1.0 — package archive -
unrealircd6.0.4.1-1.0 — package archive -
unzip6.0-19.0 — package archive -
util-linux2.38.1-1.3 — package archive -
util-linux-libs2.38.1-1.3 — package archive -
vi1:070224-6.0 — package archive -
vim9.0.0814-1.0 — package archive -
vim-runtime9.0.0814-1.0 — package archive -
vulkan-icd-loader1.3.221-1.2 — package archive -
w3m0.5.3.git20220409_1-1.0 — package archive -
wayland1.21.0-1.3 — package archive -
wget1.21.3-1.0 — package archive -
which2.21-5.10 — package archive -
whois5.5.14-1.0 — package archive -
xbitmaps1.1.2-3.0 — package archive -
xcb-proto1.15.2-1.0 — package archive -
xf86-input-libinput1.2.1-1.4 — package archive -
xf86-video-fbdev0.5.0-3.5 — package archive -
xf86-video-vesa2.5.0-3.1 — package archive -
xfsprogs5.19.0-1.0 — package archive -
xkeyboard-config2.37-1.0 — package archive -
xmlto0.0.28-4.0 — package archive -
xorg-fonts-encodings1.0.6-1.0 — package archive -
xorg-server21.1.4-1.0 — package archive -
xorg-server-common21.1.4-1.0 — package archive -
xorg-setxkbmap1.3.3-1.0 — package archive -
xorg-xauth1.1.2-1.0 — package archive -
xorg-xclock1.1.1-1.0 — package archive -
xorg-xinit1.4.1-3.0 — package archive -
xorg-xkbcomp1.4.5-1.0 — package archive -
xorg-xlogo1.0.5-3.0 — package archive -
xorg-xmodmap1.0.11-1.0 — package archive -
xorg-xrandr1.5.1-2.0 — package archive -
xorg-xrdb1.2.1-1.0 — package archive -
xorgproto2022.2-1.0 — package archive -
xterm374-1.0 — package archive -
xxhash0.8.1-1.0 — package archive -
xz5.2.7-1.0 — package archive -
yasm1.3.0-5.0 — package archive -
zlib1:1.2.13-1.0 — package archive -
zsh5.9-1.0 — package archive -
zstd1.5.2-7.3 — package archive
The machine runs entirely on your own computer. Nothing you type in it is sent to us.