{
 "format": "xvm-licenses/1",
 "version": "2026.10.13.4",
 "source_date_epoch": 1791849600,
 "paths": "relative to the site's licenses/ directory; guest/<version>/ holds this index and every file it names. The copyleft components' source is in xvm-sources (`sources`; each hosted archive's `repo`, `ref`, `commit`), not on the site (D114)",
 "sources": {
  "repo": "https://github.com/xuwaters/xvm-sources",
  "commit": "29f297441da1023d6f96e192d42aa1cf4f07b5b4",
  "tree": "https://github.com/xuwaters/xvm-sources/tree/29f297441da1023d6f96e192d42aa1cf4f07b5b4",
  "index_sha256": "c59eb2e06fa167bae68844d124cb402529e1c5965929da3d4ce7b406b1eba7ab"
 },
 "generated_from": {
  "apk_lock_sha256": "bc24f6bf210acfb895d831dd9d6bbc45d727095b12433925497add3d6748f630",
  "linux_lock_sha256": "169d387fc3a4dd521b8a75d156c6ca0f5b06dfe8eefc55a0e4be5ad2d2322333",
  "sources_lock_sha256": "2a66b4d4be5f5b1a5833dccb290f17260e69560b38ea2253b5c0600f6f63dd53",
  "cargo_lock_sha256": "322d0382c0ea703ca0682cdefec1e568a1d8a0f1f01977a0f6559abdd6352903"
 },
 "images": {
  "cold": {
   "root_sha256": "bb894e022660fc7ff61e183a3eba283b49d8d64eaa0e6b3ee7cf78a37b1cdcdd",
   "kernel_sha256": "7915b5ac85c2c1930f3e5933827319d6e9f0ceaf08497837e394833b76395dc4",
   "home_template_sha256": "b0938196e908c5b550f5e4ca7dfc8e858f2d869f181739c30581b60609bf9958"
  },
  "snapshot": {
   "root_sha256": "bb894e022660fc7ff61e183a3eba283b49d8d64eaa0e6b3ee7cf78a37b1cdcdd",
   "kernel_sha256": "7915b5ac85c2c1930f3e5933827319d6e9f0ceaf08497837e394833b76395dc4",
   "home_template_sha256": "b0938196e908c5b550f5e4ca7dfc8e858f2d869f181739c30581b60609bf9958",
   "state_hash": "c1627cc7a143ce2c3639a0d3458f28169742cd6b66b909c9d206df7ae89c876b"
  }
 },
 "components": [
  {
   "name": "linux",
   "version": "6.18.56",
   "licenses": [
    "GPL-2.0-only WITH Linux-syscall-note"
   ],
   "in_image": [
    "kernel Image (manifest object `kernel`; resident in the snapshot RAM)"
   ],
   "sources": [
    {
     "file": "linux-6.18.56.tar.xz",
     "url": "https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-6.18.56.tar.xz",
     "size": 154807564,
     "sha256": "4633bbda2ab95eaf2a7af4041236451d6759c72e6946265531af4b3aacefbf89",
     "hosted": true,
     "repo": "https://github.com/xuwaters/linux/tree/17ad2612c11a748b50d32eefc681344b26fea946",
     "ref": "v6.18.56",
     "commit": "17ad2612c11a748b50d32eefc681344b26fea946"
    }
   ],
   "changes": "libkrunfw patches 0001/0002 (authorship kept), the configuration `config` (= libkrunfw's riscv64 config + recipe/xvm.config, olddefconfig), built by recipe/kbuild.sh in recipe/Dockerfile's image (recipe/images.lock pins it)",
   "files": [
    "guest/2026.10.13.4/kernel/COPYING",
    "guest/2026.10.13.4/kernel/LICENSES/exceptions/Linux-syscall-note",
    "guest/2026.10.13.4/kernel/LICENSES/preferred/GPL-2.0",
    "guest/2026.10.13.4/kernel/config",
    "guest/2026.10.13.4/kernel/patches/0001-krunfw-Don-t-panic-when-init-dies.patch",
    "guest/2026.10.13.4/kernel/patches/0002-krunfw-Ignore-run_cmd-on-orderly-reboot.patch",
    "guest/2026.10.13.4/kernel/recipe/Dockerfile",
    "guest/2026.10.13.4/kernel/recipe/base/config-libkrunfw_riscv64",
    "guest/2026.10.13.4/kernel/recipe/check-required-config.sh",
    "guest/2026.10.13.4/kernel/recipe/cmdline.txt",
    "guest/2026.10.13.4/kernel/recipe/defconfig-xvm_riscv64",
    "guest/2026.10.13.4/kernel/recipe/images.lock",
    "guest/2026.10.13.4/kernel/recipe/kbuild.sh",
    "guest/2026.10.13.4/kernel/recipe/kconfig-diff.sh",
    "guest/2026.10.13.4/kernel/recipe/linux.lock",
    "guest/2026.10.13.4/kernel/recipe/required-config.txt",
    "guest/2026.10.13.4/kernel/recipe/xvm-debug.config",
    "guest/2026.10.13.4/kernel/recipe/xvm.config"
   ],
   "xvm_sources": {
    "name": "linux",
    "path": "linux",
    "kind": "submodule",
    "repo": "https://github.com/xuwaters/linux/tree/17ad2612c11a748b50d32eefc681344b26fea946",
    "component_repo": "https://github.com/xuwaters/linux",
    "upstream": "https://github.com/gregkh/linux",
    "ref": "v6.18.56",
    "commit": "17ad2612c11a748b50d32eefc681344b26fea946"
   }
  },
  {
   "name": "busybox",
   "version": "1.37.0-r31",
   "licenses": [
    "GPL-2.0-only"
   ],
   "alpine": {
    "packages": [
     {
      "name": "busybox-static",
      "version": "1.37.0-r31",
      "arch": "riscv64",
      "apk_sha256": "300ecf7530b06c0dfaf56e8b7ed2bba9ccebac58984914518d77cc1a39a21413",
      "apk_url": "https://dl-cdn.alpinelinux.org/alpine/v3.24/main/riscv64/busybox-static-1.37.0-r31.apk",
      "license": "GPL-2.0-only",
      "origin": "busybox",
      "aports_commit": "c3ef5d10e6ef6528852c51f0564963e2f8c1be19"
     }
    ],
    "aport": "https://gitlab.alpinelinux.org/alpine/aports/-/tree/c3ef5d10e6ef6528852c51f0564963e2f8c1be19/main/busybox"
   },
   "in_image": [
    "/bin/busybox and its applet links"
   ],
   "sources": [
    {
     "file": "busybox-1.37.0.tar.bz2",
     "url": "https://busybox.net/downloads/busybox-1.37.0.tar.bz2",
     "size": 2565764,
     "sha256": "3311dff32e746499f4df0d5df04d7eb396382d7e108bb9250e7b519b837043a4",
     "hosted": true,
     "repo": "https://github.com/xuwaters/busybox/tree/be7d1b7b1701d225379bc1665487ed0871b592a5",
     "ref": "1_37_0",
     "commit": "be7d1b7b1701d225379bc1665487ed0871b592a5"
    }
   ],
   "files": [
    "guest/2026.10.13.4/alpine/busybox/0001-awk-fix-handling-of-literal-backslashes-in-replaceme.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-blkdiscard-ship-link-to-sbin-instead-of-usr-bin.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-hexdump-fix-regression-with-n4-e-u.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-init-add-support-for-separate-reboot-action.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-mount-fix-parsing-proc-mounts-with-long-lines.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-netstat-sanitize-process-names.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-tar-fix-16018-masking-of-potentially-malicious-tar-cpio-content.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-tar-fix-TOCTOU-symlink-race-condition.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-tunctl-fix-segfault-on-ioctl-failure.patch",
    "guest/2026.10.13.4/alpine/busybox/0001-wget-add-header-Accept.patch",
    "guest/2026.10.13.4/alpine/busybox/0002-adduser-default-to-sbin-nologin-as-shell-for-system-.patch",
    "guest/2026.10.13.4/alpine/busybox/0003-ash-add-built-in-BB_ASH_VERSION-variable.patch",
    "guest/2026.10.13.4/alpine/busybox/0004-Avoid-redefined-warnings-when-buiding-with-utmps.patch",
    "guest/2026.10.13.4/alpine/busybox/0005-libbb-sockaddr2str-ensure-only-printable-characters-.patch",
    "guest/2026.10.13.4/alpine/busybox/0006-modinfo-add-k-option-for-kernel-version.patch",
    "guest/2026.10.13.4/alpine/busybox/0007-nologin-Install-applet-to-sbin-instead-of-usr-sbin.patch",
    "guest/2026.10.13.4/alpine/busybox/0008-pgrep-add-support-for-matching-against-UID-and-RUID.patch",
    "guest/2026.10.13.4/alpine/busybox/0009-properly-fix-wget-https-support.patch",
    "guest/2026.10.13.4/alpine/busybox/0010-fsck-resolve-LABEL-.-UUID-.-spec-to-device.patch",
    "guest/2026.10.13.4/alpine/busybox/0011-nslookup-sanitize-all-printed-strings-with-printable.patch",
    "guest/2026.10.13.4/alpine/busybox/0012-ash-exec-busybox.static.patch",
    "guest/2026.10.13.4/alpine/busybox/0013-app-location-for-cpio-vi-and-lspci.patch",
    "guest/2026.10.13.4/alpine/busybox/0014-udhcpc-set-default-discover-retries-to-5.patch",
    "guest/2026.10.13.4/alpine/busybox/0015-ping-make-ping-work-without-root-privileges.patch",
    "guest/2026.10.13.4/alpine/busybox/0016-fbsplash-support-console-switching.patch",
    "guest/2026.10.13.4/alpine/busybox/0017-fbsplash-support-image-and-bar-alignment-and-positio.patch",
    "guest/2026.10.13.4/alpine/busybox/0018-depmod-support-generating-kmod-binary-index-files.patch",
    "guest/2026.10.13.4/alpine/busybox/0019-Add-flag-for-not-following-symlinks-when-recursing.patch",
    "guest/2026.10.13.4/alpine/busybox/0020-udhcpc-Don-t-background-if-n-is-given.patch",
    "guest/2026.10.13.4/alpine/busybox/0021-tests-fix-tarball-creation.patch",
    "guest/2026.10.13.4/alpine/busybox/0022-tests-musl-doesn-t-seem-to-recognize-UTC0-as-a-timez.patch",
    "guest/2026.10.13.4/alpine/busybox/0023-Hackfix-to-disable-HW-acceleration-for-MD5-SHA1-on-x.patch",
    "guest/2026.10.13.4/alpine/busybox/0024-umount-Implement-O-option-to-unmount-by-mount-option.patch",
    "guest/2026.10.13.4/alpine/busybox/0025-find-fix-xdev-depth-and-delete.patch",
    "guest/2026.10.13.4/alpine/busybox/0026-awk.c-fix-CVE-2023-42366-bug-15874.patch",
    "guest/2026.10.13.4/alpine/busybox/0027-awk-Mark-test-for-handling-of-start-of-word-pattern-.patch",
    "guest/2026.10.13.4/alpine/busybox/0028-od-Skip-od-B-on-big-endian.patch",
    "guest/2026.10.13.4/alpine/busybox/0029-ash-reject-unknown-long-options.patch",
    "guest/2026.10.13.4/alpine/busybox/0030-hexdump-Skip-a-single-test-on-big-endian-systems.patch",
    "guest/2026.10.13.4/alpine/busybox/0031-syslogd-fix-wrong-OPT_locallog-flag-detection.patch",
    "guest/2026.10.13.4/alpine/busybox/0032-lineedit-fix-some-tab-completions-written-to-stdout.patch",
    "guest/2026.10.13.4/alpine/busybox/0033-lineedit-use-stdout-for-shell-history-builtin.patch",
    "guest/2026.10.13.4/alpine/busybox/0034-adduser-remove-preconfigured-GECOS-full-name-field.patch",
    "guest/2026.10.13.4/alpine/busybox/0035-cpio-map-F-to-file-long-option.patch",
    "guest/2026.10.13.4/alpine/busybox/APKBUILD",
    "guest/2026.10.13.4/alpine/busybox/PKGINFO-busybox-static-1.37.0-r31.txt",
    "guest/2026.10.13.4/alpine/busybox/acpid-poweroff.sh",
    "guest/2026.10.13.4/alpine/busybox/acpid.initd",
    "guest/2026.10.13.4/alpine/busybox/acpid.logrotate",
    "guest/2026.10.13.4/alpine/busybox/bbsuid.c",
    "guest/2026.10.13.4/alpine/busybox/busybox-extras.post-install",
    "guest/2026.10.13.4/alpine/busybox/busybox-extras.pre-deinstall",
    "guest/2026.10.13.4/alpine/busybox/busybox.post-install",
    "guest/2026.10.13.4/alpine/busybox/busybox.post-upgrade",
    "guest/2026.10.13.4/alpine/busybox/busybox.trigger",
    "guest/2026.10.13.4/alpine/busybox/busyboxconfig",
    "guest/2026.10.13.4/alpine/busybox/busyboxconfig-extras",
    "guest/2026.10.13.4/alpine/busybox/crond.confd",
    "guest/2026.10.13.4/alpine/busybox/crond.initd",
    "guest/2026.10.13.4/alpine/busybox/dad.if-up",
    "guest/2026.10.13.4/alpine/busybox/default.script",
    "guest/2026.10.13.4/alpine/busybox/dnsd.initd",
    "guest/2026.10.13.4/alpine/busybox/httpd.initd",
    "guest/2026.10.13.4/alpine/busybox/inetd.initd",
    "guest/2026.10.13.4/alpine/busybox/klogd.confd",
    "guest/2026.10.13.4/alpine/busybox/klogd.initd",
    "guest/2026.10.13.4/alpine/busybox/loadkmap.confd",
    "guest/2026.10.13.4/alpine/busybox/loadkmap.initd",
    "guest/2026.10.13.4/alpine/busybox/mdev.initd",
    "guest/2026.10.13.4/alpine/busybox/ntpd.confd",
    "guest/2026.10.13.4/alpine/busybox/ntpd.initd",
    "guest/2026.10.13.4/alpine/busybox/rdate.confd",
    "guest/2026.10.13.4/alpine/busybox/rdate.initd",
    "guest/2026.10.13.4/alpine/busybox/securetty",
    "guest/2026.10.13.4/alpine/busybox/ssl_client.c",
    "guest/2026.10.13.4/alpine/busybox/syslog.confd",
    "guest/2026.10.13.4/alpine/busybox/syslog.initd",
    "guest/2026.10.13.4/alpine/busybox/udhcpc.conf",
    "guest/2026.10.13.4/alpine/busybox/udhcpd.initd",
    "guest/2026.10.13.4/alpine/busybox/watchdog.confd",
    "guest/2026.10.13.4/alpine/busybox/watchdog.initd",
    "guest/2026.10.13.4/busybox/LICENSE"
   ],
   "xvm_sources": {
    "name": "busybox",
    "path": "busybox",
    "kind": "submodule",
    "repo": "https://github.com/xuwaters/busybox/tree/be7d1b7b1701d225379bc1665487ed0871b592a5",
    "component_repo": "https://github.com/xuwaters/busybox",
    "upstream": "https://github.com/sailfishos-mirror/busybox",
    "ref": "1_37_0",
    "commit": "be7d1b7b1701d225379bc1665487ed0871b592a5"
   }
  },
  {
   "name": "musl",
   "version": "1.2.6-r2",
   "licenses": [
    "MIT"
   ],
   "alpine": {
    "packages": [
     {
      "name": "musl",
      "version": "1.2.6-r2",
      "arch": "riscv64",
      "apk_sha256": "5bea4aa90f58568f6d69e1eaf800a66347d9cf71e19fd6f1047cb8b36169f319",
      "apk_url": "https://dl-cdn.alpinelinux.org/alpine/v3.24/main/riscv64/musl-1.2.6-r2.apk",
      "license": "MIT",
      "origin": "musl",
      "aports_commit": "f5640d3a10f664c9119720c60515265d3d6f6d01"
     }
    ],
    "aport": "https://gitlab.alpinelinux.org/alpine/aports/-/tree/f5640d3a10f664c9119720c60515265d3d6f6d01/main/musl"
   },
   "in_image": [
    "/lib/ld-musl-riscv64.so.1 (libc)"
   ],
   "sources": [
    {
     "file": "musl-1.2.6.tar.gz",
     "url": "https://musl.libc.org/releases/musl-1.2.6.tar.gz",
     "size": 1082499,
     "sha256": "d585fd3b613c66151fc3249e8ed44f77020cb5e6c1e635a616d3f9f82460512a",
     "hosted": false,
     "note": "permissive licence: no source obligation; the archive is listed, not hosted"
    }
   ],
   "files": [
    "guest/2026.10.13.4/alpine/musl/0001-add-stub-for-pthread_mutexattr_setprioceiling.patch",
    "guest/2026.10.13.4/alpine/musl/APKBUILD",
    "guest/2026.10.13.4/alpine/musl/CVE-2026-40200.patch",
    "guest/2026.10.13.4/alpine/musl/CVE-2026-6042.patch",
    "guest/2026.10.13.4/alpine/musl/PKGINFO-musl-1.2.6-r2.txt",
    "guest/2026.10.13.4/alpine/musl/__stack_chk_fail_local.c",
    "guest/2026.10.13.4/alpine/musl/fix-loongarch64-zero-len-extcontext.patch",
    "guest/2026.10.13.4/alpine/musl/getconf.c",
    "guest/2026.10.13.4/alpine/musl/getent.c",
    "guest/2026.10.13.4/alpine/musl/handle-aux-at_base.patch",
    "guest/2026.10.13.4/alpine/musl/iconv.c",
    "guest/2026.10.13.4/alpine/musl/ldconfig",
    "guest/2026.10.13.4/musl/COPYRIGHT"
   ]
  },
  {
   "name": "openjdk",
   "version": "25.0.4_p7-r0",
   "licenses": [
    "GPL-2.0-with-classpath-exception"
   ],
   "alpine": {
    "packages": [
     {
      "name": "openjdk25-jdk",
      "version": "25.0.4_p7-r0",
      "arch": "riscv64",
      "apk_sha256": "2c915872ef2ba4726317e69d398bb9a88a2073c47d0cf901a7f6029f196265a6",
      "apk_url": "https://dl-cdn.alpinelinux.org/alpine/v3.24/community/riscv64/openjdk25-jdk-25.0.4_p7-r0.apk",
      "license": "GPL-2.0-with-classpath-exception",
      "origin": "openjdk25",
      "aports_commit": "5a749f43582ad0818c27b83b720fba169f72ae58"
     },
     {
      "name": "openjdk25-jmods",
      "version": "25.0.4_p7-r0",
      "arch": "noarch",
      "apk_sha256": "c65da806766ea17e841f91090144c5f7007f37b1cf9b4c343b516ef9d613a36b",
      "apk_url": "https://dl-cdn.alpinelinux.org/alpine/v3.24/community/riscv64/openjdk25-jmods-25.0.4_p7-r0.apk",
      "license": "GPL-2.0-with-classpath-exception",
      "origin": "openjdk25",
      "aports_commit": "5a749f43582ad0818c27b83b720fba169f72ae58"
     },
     {
      "name": "openjdk25-jre-headless",
      "version": "25.0.4_p7-r0",
      "arch": "riscv64",
      "apk_sha256": "30ff7cd99564b550659c500948d1d959bf3dd88744cd0fe38fe4f983b625c100",
      "apk_url": "https://dl-cdn.alpinelinux.org/alpine/v3.24/community/riscv64/openjdk25-jre-headless-25.0.4_p7-r0.apk",
      "license": "GPL-2.0-with-classpath-exception",
      "origin": "openjdk25",
      "aports_commit": "5a749f43582ad0818c27b83b720fba169f72ae58"
     }
    ],
    "aport": "https://gitlab.alpinelinux.org/alpine/aports/-/tree/5a749f43582ad0818c27b83b720fba169f72ae58/community/openjdk25"
   },
   "in_image": [
    "/usr/lib/jvm/xvm: jlink of the modules in openjdk/recipe/jlink.args from openjdk25-jdk + -jmods (+ -jre-headless), native code stripped, CDS archives classes.jsa and javac.jsa dumped by openjdk/recipe/build.sh; resident pages in the snapshot RAM"
   ],
   "sources": [
    {
     "file": "jdk-25.0.4-ga.tar.gz",
     "url": "https://github.com/openjdk/jdk25u/archive/jdk-25.0.4-ga.tar.gz",
     "size": 119669964,
     "sha256": "85934f45ebfde0024a76e3dce86218236c3712687689bf00f24c559ac1ed0e6a",
     "hosted": true,
     "repo": "https://github.com/xuwaters/jdk25u/tree/0b8bc780f976dab23ec798018fef0b674e885b0c",
     "ref": "jdk-25.0.4-ga",
     "commit": "0b8bc780f976dab23ec798018fef0b674e885b0c"
    }
   ],
   "files": [
    "guest/2026.10.13.4/alpine/openjdk25/APKBUILD",
    "guest/2026.10.13.4/alpine/openjdk25/JDK-8218814_Wformat-security.patch",
    "guest/2026.10.13.4/alpine/openjdk25/JDK-8299245_disable-tests.patch",
    "guest/2026.10.13.4/alpine/openjdk25/PKGINFO-openjdk25-jdk-25.0.4_p7-r0.txt",
    "guest/2026.10.13.4/alpine/openjdk25/PKGINFO-openjdk25-jmods-25.0.4_p7-r0.txt",
    "guest/2026.10.13.4/alpine/openjdk25/PKGINFO-openjdk25-jre-headless-25.0.4_p7-r0.txt",
    "guest/2026.10.13.4/alpine/openjdk25/ppc64le.patch",
    "guest/2026.10.13.4/alpine/openjdk25/riscv64.patch",
    "guest/2026.10.13.4/openjdk/legal/java.base/ADDITIONAL_LICENSE_INFO",
    "guest/2026.10.13.4/openjdk/legal/java.base/ASSEMBLY_EXCEPTION",
    "guest/2026.10.13.4/openjdk/legal/java.base/LICENSE",
    "guest/2026.10.13.4/openjdk/legal/java.base/aes.md",
    "guest/2026.10.13.4/openjdk/legal/java.base/c-libutl.md",
    "guest/2026.10.13.4/openjdk/legal/java.base/cldr.md",
    "guest/2026.10.13.4/openjdk/legal/java.base/gcc.md",
    "guest/2026.10.13.4/openjdk/legal/java.base/icu.md",
    "guest/2026.10.13.4/openjdk/legal/java.base/public_suffix.md",
    "guest/2026.10.13.4/openjdk/legal/java.base/siphash.md",
    "guest/2026.10.13.4/openjdk/legal/java.base/unicode.md",
    "guest/2026.10.13.4/openjdk/legal/java.compiler/ADDITIONAL_LICENSE_INFO",
    "guest/2026.10.13.4/openjdk/legal/java.compiler/ASSEMBLY_EXCEPTION",
    "guest/2026.10.13.4/openjdk/legal/java.compiler/LICENSE",
    "guest/2026.10.13.4/openjdk/legal/java.logging/ADDITIONAL_LICENSE_INFO",
    "guest/2026.10.13.4/openjdk/legal/java.logging/ASSEMBLY_EXCEPTION",
    "guest/2026.10.13.4/openjdk/legal/java.logging/LICENSE",
    "guest/2026.10.13.4/openjdk/legal/jdk.compiler/ADDITIONAL_LICENSE_INFO",
    "guest/2026.10.13.4/openjdk/legal/jdk.compiler/ASSEMBLY_EXCEPTION",
    "guest/2026.10.13.4/openjdk/legal/jdk.compiler/LICENSE",
    "guest/2026.10.13.4/openjdk/legal/jdk.internal.opt/ADDITIONAL_LICENSE_INFO",
    "guest/2026.10.13.4/openjdk/legal/jdk.internal.opt/ASSEMBLY_EXCEPTION",
    "guest/2026.10.13.4/openjdk/legal/jdk.internal.opt/LICENSE",
    "guest/2026.10.13.4/openjdk/legal/jdk.internal.opt/jopt-simple.md",
    "guest/2026.10.13.4/openjdk/legal/jdk.zipfs/ADDITIONAL_LICENSE_INFO",
    "guest/2026.10.13.4/openjdk/legal/jdk.zipfs/ASSEMBLY_EXCEPTION",
    "guest/2026.10.13.4/openjdk/legal/jdk.zipfs/LICENSE",
    "guest/2026.10.13.4/openjdk/recipe/build.sh",
    "guest/2026.10.13.4/openjdk/recipe/jlink.args",
    "guest/2026.10.13.4/openjdk/recipe/mkroot.sh",
    "guest/2026.10.13.4/openjdk/release"
   ],
   "changes": "Alpine's patches (alpine/openjdk25/*.patch); our jlink options and CDS dumps are the statement of changes (openjdk/recipe/)",
   "xvm_sources": {
    "name": "openjdk",
    "path": "openjdk/jdk25u",
    "kind": "submodule",
    "repo": "https://github.com/xuwaters/jdk25u/tree/0b8bc780f976dab23ec798018fef0b674e885b0c",
    "component_repo": "https://github.com/xuwaters/jdk25u",
    "upstream": "https://github.com/openjdk/jdk25u",
    "ref": "jdk-25.0.4-ga",
    "commit": "0b8bc780f976dab23ec798018fef0b674e885b0c"
   }
  },
  {
   "name": "zlib",
   "version": "1.3.2-r1",
   "licenses": [
    "Zlib"
   ],
   "alpine": {
    "packages": [
     {
      "name": "zlib",
      "version": "1.3.2-r1",
      "arch": "riscv64",
      "apk_sha256": "df0fed8bca1579423b1a78f3dde7e8130ea81908bcaacf179d452ae81cc4fdda",
      "apk_url": "https://dl-cdn.alpinelinux.org/alpine/v3.24/main/riscv64/zlib-1.3.2-r1.apk",
      "license": "Zlib",
      "origin": "zlib",
      "aports_commit": "0afa2da0e8c8051c6f8f64a7a388e5a259904245"
     }
    ],
    "aport": "https://gitlab.alpinelinux.org/alpine/aports/-/tree/0afa2da0e8c8051c6f8f64a7a388e5a259904245/main/zlib"
   },
   "in_image": [
    "/usr/lib/libz.so.1.3.2"
   ],
   "sources": [
    {
     "file": "zlib-1.3.2.tar.gz",
     "url": "https://zlib.net/fossils/zlib-1.3.2.tar.gz",
     "size": 1502830,
     "sha256": "bb329a0a2cd0274d05519d61c667c062e06990d72e125ee2dfa8de64f0119d16",
     "hosted": false,
     "note": "permissive licence: no source obligation; the archive is listed, not hosted"
    }
   ],
   "files": [
    "guest/2026.10.13.4/alpine/zlib/APKBUILD",
    "guest/2026.10.13.4/alpine/zlib/CVE-2026-85091.patch",
    "guest/2026.10.13.4/alpine/zlib/PKGINFO-zlib-1.3.2-r1.txt",
    "guest/2026.10.13.4/zlib/LICENSE"
   ]
  },
  {
   "name": "gcc-runtime",
   "version": "15.2.0 (Alpine)",
   "licenses": [
    "GPL-3.0-or-later WITH GCC-exception-3.1"
   ],
   "in_image": [
    "libstdc++ and libgcc code linked statically into /usr/lib/jvm/xvm/lib/server/libjvm.so (its .comment: \"GCC: (Alpine 15.2.0) 15.2.0\"; DT_NEEDED is libc.musl and libz only)"
   ],
   "sources": [],
   "note": "The GCC Runtime Library Exception 3.1 permits distributing Target Code from an Eligible Compilation Process under terms of our choice; no source obligation follows. The texts are included as notice.",
   "files": [
    "guest/2026.10.13.4/gcc/COPYING.RUNTIME",
    "guest/2026.10.13.4/gcc/COPYING3"
   ]
  },
  {
   "name": "xvm",
   "version": "2026.10.13.4",
   "licenses": [
    "MIT OR Apache-2.0"
   ],
   "in_image": [
    "/sbin/xvm-agent (PID 1; also /usr/bin/javac, the shim), statically linked with Rust's standard library, the crates below and musl (Rust's self-contained copy, MIT: musl/COPYRIGHT)",
    "/usr/lib/xvm/xvm-compiled.jar, xvm-compiled.args (the compile server)",
    "/etc (passwd, group, profile, ...), the home template's .profile"
   ],
   "crates": [
    {
     "name": "itoa",
     "version": "1.0.18",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/dtolnay/itoa",
     "files": [
      "guest/2026.10.13.4/xvm/crates/itoa-1.0.18/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/itoa-1.0.18/LICENSE-MIT"
     ]
    },
    {
     "name": "libc",
     "version": "0.2.190",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/rust-lang/libc",
     "files": [
      "guest/2026.10.13.4/xvm/crates/libc-0.2.190/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/libc-0.2.190/LICENSE-MIT"
     ]
    },
    {
     "name": "memchr",
     "version": "2.8.3",
     "license": "Unlicense OR MIT",
     "repository": "https://github.com/BurntSushi/memchr",
     "files": [
      "guest/2026.10.13.4/xvm/crates/memchr-2.8.3/COPYING",
      "guest/2026.10.13.4/xvm/crates/memchr-2.8.3/LICENSE-MIT"
     ]
    },
    {
     "name": "proc-macro2",
     "version": "1.0.107",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/dtolnay/proc-macro2",
     "files": [
      "guest/2026.10.13.4/xvm/crates/proc-macro2-1.0.107/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/proc-macro2-1.0.107/LICENSE-MIT"
     ]
    },
    {
     "name": "quote",
     "version": "1.0.47",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/dtolnay/quote",
     "files": [
      "guest/2026.10.13.4/xvm/crates/quote-1.0.47/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/quote-1.0.47/LICENSE-MIT"
     ]
    },
    {
     "name": "serde",
     "version": "1.0.229",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/serde-rs/serde",
     "files": [
      "guest/2026.10.13.4/xvm/crates/serde-1.0.229/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/serde-1.0.229/LICENSE-MIT"
     ]
    },
    {
     "name": "serde_core",
     "version": "1.0.229",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/serde-rs/serde",
     "files": [
      "guest/2026.10.13.4/xvm/crates/serde_core-1.0.229/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/serde_core-1.0.229/LICENSE-MIT"
     ]
    },
    {
     "name": "serde_derive",
     "version": "1.0.229",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/serde-rs/serde",
     "files": [
      "guest/2026.10.13.4/xvm/crates/serde_derive-1.0.229/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/serde_derive-1.0.229/LICENSE-MIT"
     ]
    },
    {
     "name": "serde_json",
     "version": "1.0.154",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/serde-rs/json",
     "files": [
      "guest/2026.10.13.4/xvm/crates/serde_json-1.0.154/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/serde_json-1.0.154/LICENSE-MIT"
     ]
    },
    {
     "name": "syn",
     "version": "3.0.9",
     "license": "MIT OR Apache-2.0",
     "repository": "https://github.com/dtolnay/syn",
     "files": [
      "guest/2026.10.13.4/xvm/crates/syn-3.0.9/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/syn-3.0.9/LICENSE-MIT"
     ]
    },
    {
     "name": "unicode-ident",
     "version": "1.0.27",
     "license": "(MIT OR Apache-2.0) AND Unicode-3.0",
     "repository": "https://github.com/dtolnay/unicode-ident",
     "files": [
      "guest/2026.10.13.4/xvm/crates/unicode-ident-1.0.27/LICENSE-APACHE",
      "guest/2026.10.13.4/xvm/crates/unicode-ident-1.0.27/LICENSE-MIT",
      "guest/2026.10.13.4/xvm/crates/unicode-ident-1.0.27/LICENSE-UNICODE"
     ]
    },
    {
     "name": "zmij",
     "version": "1.0.23",
     "license": "MIT",
     "repository": "https://github.com/dtolnay/zmij",
     "files": [
      "guest/2026.10.13.4/xvm/crates/zmij-1.0.23/LICENSE-MIT"
     ]
    }
   ],
   "sources": [],
   "note": "Our own code, MIT OR Apache-2.0: no source obligation. The scripts that build the GPL components are in their own directories here (kernel/recipe/, openjdk/recipe/).",
   "files": [
    "guest/2026.10.13.4/xvm/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/NOTICE",
    "guest/2026.10.13.4/xvm/crates/itoa-1.0.18/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/itoa-1.0.18/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/libc-0.2.190/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/libc-0.2.190/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/memchr-2.8.3/COPYING",
    "guest/2026.10.13.4/xvm/crates/memchr-2.8.3/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/proc-macro2-1.0.107/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/proc-macro2-1.0.107/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/quote-1.0.47/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/quote-1.0.47/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/serde-1.0.229/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/serde-1.0.229/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/serde_core-1.0.229/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/serde_core-1.0.229/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/serde_derive-1.0.229/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/serde_derive-1.0.229/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/serde_json-1.0.154/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/serde_json-1.0.154/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/syn-3.0.9/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/syn-3.0.9/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/unicode-ident-1.0.27/LICENSE-APACHE",
    "guest/2026.10.13.4/xvm/crates/unicode-ident-1.0.27/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/crates/unicode-ident-1.0.27/LICENSE-UNICODE",
    "guest/2026.10.13.4/xvm/crates/zmij-1.0.23/LICENSE-MIT",
    "guest/2026.10.13.4/xvm/rust/COPYRIGHT-library.html",
    "guest/2026.10.13.4/xvm/rust/COPYRIGHT.html",
    "guest/2026.10.13.4/xvm/rust/README.md",
    "guest/2026.10.13.4/xvm/rust/licenses/Apache-2.0.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/BSD-2-Clause.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/CC-BY-SA-4.0.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/GCC-exception-3.1.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/GPL-2.0-only.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/GPL-3.0-or-later.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/ISC.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/LLVM-exception.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/MIT.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/NCSA.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/OFL-1.1.txt",
    "guest/2026.10.13.4/xvm/rust/licenses/Unicode-3.0.txt",
    "guest/2026.10.13.4/xvm/rust/rustc-vV.txt"
   ]
  }
 ],
 "not_distributed": "guest/2026.10.13.4/tools.txt",
 "offer": "guest/2026.10.13.4/README.html"
}
