Missão Byte — código-fonte correspondente da imagem da VM v2fe24f280d9f ======================================================================== Esta pasta acompanha a imagem da VM publicada em https://cdn.bgsite.link/missao-byte-cdn/vm/v2fe24f280d9f/ e usada pelo jogo https://missao-byte-kids.iotfor.us (página "Licenças e créditos": https://missao-byte-kids.iotfor.us/creditos/). Ela traz, no mesmo servidor e nas mesmas condições de acesso (HTTPS público, sem custo, sem cadastro), o código-fonte dos componentes sob GPL, LGPL e MPL que a imagem distribui em forma binária. É a opção "acesso equivalente para copiar o fonte do mesmo lugar" (GPL-2.0, seção 3, último parágrafo; GPL-3.0, seção 6(d), que a LGPL-3.0 aplica à própria biblioteca) e o aviso de onde obter o fonte que a MPL-2.0 pede na seção 3.2(a). Binário publicado -> fonte nesta pasta -------------------------------------- - image/kernel.bin (Linux 6.18.50, i686, sha256 42416ca4d5bec17554199317c8dc560ba1bb26ed82b9d84f1222d0dcf789009f) -> linux-6.18.50/linux-6.18.50.tar.xz fonte upstream, sem nenhum patch -> linux-6.18.50/mb-kernel-9p-i686.config o .config usado no build -> linux-6.18.50/build-kernel.sh a receita: versão, checksums, deltas de configuração e o contêiner de build (Debian bookworm, gcc 12.2.0) - arquivos do Alpine Linux 3.24.1 (x86) servidos em image/base/ e indexados em image/fs.json, sem recompilar nem modificar: dos 78 arquivos da imagem que o banco do apk da minirootfs registra com checksum, 77 têm o mesmo sha1 no que a imagem serve; a exceção é /etc/shadow (dado, não programa), que a Alpine altera ao gerar a minirootfs. Pacotes com licença GPL, LGPL ou MPL e onde está o fonte de cada um: - busybox, busybox-binsh, ssl_client (busybox 1.37.0-r31) -> alpine-v3.24/busybox-1.37.0-r31/ APKBUILD, patches e configuração do aports no commit c3ef5d10e6ef6528852c51f0564963e2f8c1be19; fonte upstream: busybox-1.37.0.tar.bz2 - alpine-baselayout, alpine-baselayout-data (alpine-baselayout 3.7.2-r1) -> alpine-v3.24/alpine-baselayout-3.7.2-r1/ APKBUILD, patches e configuração do aports no commit 60a7585bbab2fa0f762504eb617dbca90216e31f; fonte upstream: protocols-6.4, services-6.4 - apk-tools, libapk (apk-tools 3.0.6-r0) -> alpine-v3.24/apk-tools-3.0.6-r0/ APKBUILD, patches e configuração do aports no commit 1403ea7a8ae3fb8e5a11207ddb1ff536eb8de912; fonte upstream: apk-tools-v3.0.6.tar.gz - musl, musl-utils (musl 1.2.6-r2) -> alpine-v3.24/musl-1.2.6-r2/ APKBUILD, patches e configuração do aports no commit f5640d3a10f664c9119720c60515265d3d6f6d01; fonte upstream: musl-1.2.6.tar.gz - scanelf (pax-utils 1.3.9-r1) -> alpine-v3.24/pax-utils-1.3.9-r1/ APKBUILD, patches e configuração do aports no commit c61801eeacb3ffcd9c2025b09e402153bb93fb39; fonte upstream: pax-utils-1.3.9.tar.xz - ca-certificates-bundle (ca-certificates 20260611-r0) -> alpine-v3.24/ca-certificates-20260611-r0/ APKBUILD, patches e configuração do aports no commit e41cbd2ae991adfe8df298ba8e8e777e90bd0e03; fonte upstream: ca-certificates-20260611.tar.bz2 - libutmps, ligada estaticamente dentro do /bin/busybox (utmps 0.1.3.2-r0) -> alpine-v3.24/busybox-1.37.0-r31/estaticas/utmps-0.1.3.2-r0/ APKBUILD, patches e configuração do aports no commit 39152506f5fa7957fd0e722bca56e22c1c86fa37; fonte upstream: utmps-0.1.3.2.tar.gz - libskarnet, ligada estaticamente dentro do /bin/busybox (skalibs 2.14.5.0-r0) -> alpine-v3.24/busybox-1.37.0-r31/estaticas/skalibs-2.14.5.0-r0/ APKBUILD, patches e configuração do aports no commit 6840f45f1b722e2dbfeb2c0ad975ebe84a85f850; fonte upstream: skalibs-2.14.5.0.tar.gz A utmps e a skalibs não são pacotes da imagem: são as bibliotecas estáticas que o builder da Alpine instalou (utmps-static 0.1.3.2-r0 e skalibs-static 2.14.5.0-r0) e ligou dentro do /bin/busybox, e por isso o fonte delas faz parte do fonte do BusyBox. Log do build: https://build.alpinelinux.org/buildlogs/build-edge-x86/main/busybox/busybox-1.37.0-r31.log Os demais pacotes da imagem não pedem fonte: musl (MIT; o fonte vem junto por causa do musl-utils), libcrypto3 e libssl3 (OpenSSL 3.5.7, Apache-2.0), zlib 1.3.2 (Zlib), alpine-keys e alpine-release (MIT), file e libmagic 5.47 (BSD-2-Clause). Os avisos deles estão na página de créditos. - engine/seabios.bin (sha256 73e3f359102e3a9982c35fce98eb7cd08f18303ac7f1ba6ebfbe6cdc1c244d98) e engine/vgabios.bin (sha256 a4bc0d80cc3ca028c73dafa8fee396b8d054ce87ebd8abfbd31b06b437607880) -> seabios-1.16.2/seabios-rel-1.16.2.tar.gz SeaBIOS na tag rel-1.16.2 (commit ea1b7a0733906b8425d948ae94fba63c32b1d425) -> seabios-1.16.2/v86-bios-b8a39b11/ seabios.config e fetch-and-build-seabios.sh do projeto v86 (commit b8a39b11dd2076870699e6cac053556271b9bfab), que geram as duas ROMs Textos das licenças: licencas/ (GPL-2.0, LGPL-3.0, GPL-3.0, MPL-2.0, Apache-2.0). Avisos de todos os componentes de terceiros, inclusive os permissivos (MIT, BSD, ISC, NTP, Zlib, Apache-2.0 e o aviso da Sun, SunPro), com os avisos por arquivo do musl, do BusyBox, da libfetch e da libmagic: https://missao-byte-kids.iotfor.us/creditos/ Conferência ----------- - manifest.json: cada arquivo com tamanho, sha256, origem e como foi conferido. - SHA256SUMS: shasum -a 256 -c SHA256SUMS (ou sha256sum -c SHA256SUMS) Esta pasta fica publicada enquanto a imagem v2fe24f280d9f estiver publicada. English summary --------------- Corresponding source for the GPL/LGPL/MPL binaries in the Missão Byte VM image v2fe24f280d9f (https://cdn.bgsite.link/missao-byte-cdn/vm/v2fe24f280d9f/), offered from the same server under the same access conditions (GPL-2.0 section 3, last paragraph; GPL-3.0 section 6(d) as applied by LGPL-3.0; MPL-2.0 section 3.2(a)). Linux 6.18.50 (source tarball, .config and build script, no source patches), Alpine Linux 3.24 packages (aports files at the commit recorded in the image's apk database, plus the upstream tarballs checked against the APKBUILD sha512sums), the utmps 0.1.3.2 and skalibs 2.14.5.0 static libraries linked into /bin/busybox, and SeaBIOS rel-1.16.2 with the v86 build config for engine/seabios.bin and engine/vgabios.bin. Verify with SHA256SUMS; provenance per file in manifest.json.