Build:
- 0
2026-01-12 10:33.02: New job: Build using linux-x86_64 in
[https://github.com/mirage/mirage-skeleton.git#refs/pull/418/head (8382633e9753bcc0d7bccf55fe10a1844a3aa93f)]
OBuilder spec:
((from ocaml/opam:debian-13-ocaml-5.3)
(user (uid 1000) (gid 1000))
(workdir /home/opam)
(run (shell "sudo chown opam:opam /home/opam"))
(run (shell "sudo ln -f /usr/bin/opam-2.4 /usr/bin/opam && opam update"))
(run (network host)
(shell "opam repo add opam https://github.com/ocaml/opam-repository.git#2bf2bf6ea0c8867eede5e26c1c591999dd5a9ee1"))
(run (cache (download-cache (target /home/opam/.opam/download-cache)))
(network host)
(shell "sudo apt-get update && opam install -y \"mirage>=4\""))
(copy (src .) (dst /src/))
(env MODE unix)
(workdir /src/)
(run (shell "opam exec -- make configure"))
(env MIRAGE_EXTRA_REPOS opam-overlays:https://github.com/dune-universe/opam-overlays.git#12731a6f86d7c452a94c72106fa9d3327988582d,mirage-opam-overlays:https://github.com/dune-universe/mirage-opam-overlays.git#eddcd1bc7e035392596b603d23dde67a88e6f6bc)
(run (network host)
(shell "opam exec -- make lock"))
(run (cache (download-cache (target /home/opam/.opam/download-cache)))
(network host)
(shell "sudo apt-get update && opam exec -- make depends"))
(run (shell "opam monorepo list -l mirage.opam.locked"))
(run (cache (download-cache (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam exec -- make pull"))
(env DUNE_CACHE enabled)
(env DUNE_CACHE_TRANSPORT direct)
(run (cache (dune-build-cache (target /home/opam/.cache/dune)))
(network host)
(shell "opam exec -- make build"))
)
2026-01-12 10:33.02: Using cache hint "mirage-ci-skeleton-debian-13-ocaml-5.3"
2026-01-12 10:33.02: Connecting to build cluster…
2026-01-12 10:33.02: Waiting for resource in pool OCluster
2026-01-12 13:20.52: Waiting for worker…
2026-01-12 13:26.46: Got resource from pool OCluster
Building on eumache
All commits already cached
HEAD is now at 8382633 Pass dhcp to resolver_dns
(from ocaml/opam:debian-13-ocaml-5.3)
Unable to find image 'ocaml/opam:debian-13-ocaml-5.3' locally
debian-13-ocaml-5.3: Pulling from ocaml/opam
281b80c799de: Already exists
ce76feb86791: Already exists
7984eb0e5b45: Already exists
56c452a960b1: Already exists
b85825bef00a: Already exists
d6ff43dfb85c: Already exists
4197ec645389: Already exists
37cac33e41ff: Already exists
4cb993fb248e: Already exists
ca442870f91f: Already exists
b1d1a2fb5f4a: Already exists
0dea577b2801: Already exists
cc10daaea4fd: Already exists
5f878cb1723a: Already exists
8968959fa983: Already exists
5bdd9b9ed0e3: Already exists
55661c5b388f: Already exists
55661c5b388f: Already exists
92d1dc6907bd: Already exists
7100b414728b: Already exists
a6a54ddc9818: Already exists
a920ad627810: Already exists
4f4fb700ef54: Already exists
f7df7b6e19c0: Already exists
cd713d66718c: Already exists
6ed45ab2af86: Already exists
40598b80a8fe: Already exists
983f7969ff00: Already exists
40ec09ee09bd: Already exists
76a0afa38cd9: Already exists
1d5a564d139a: Already exists
82883b85a4f0: Already exists
1d8458efd73b: Already exists
2d80a9fac9ac: Already exists
4d69ee6ae94b: Already exists
ce8d28b713f1: Already exists
97580d938033: Already exists
da5fa40e04f8: Already exists
d7a499968f64: Already exists
28e5932c7c69: Already exists
81389c423fc3: Already exists
4d539b35ca4b: Already exists
174d636e7732: Already exists
97c418526f61: Already exists
5bd38d3521a2: Already exists
b0650f6f7eb5: Already exists
51f9b7dfdc0a: Already exists
508077ecb23e: Already exists
Digest: sha256:9566cb86f0293cc98a05bedb1c7fdc567b6b19827a5f1b4a10fdca84ee784aaf
Status: Downloaded newer image for ocaml/opam:debian-13-ocaml-5.3
2026-01-12 13:26.47 ---> using "348716d62ad55d1c2ba7493d00b0882cc64fc042d724a06a1599e8ba58d890e2" from cache
/: (user (uid 1000) (gid 1000))
/: (workdir /home/opam)
/home/opam: (run (shell "sudo chown opam:opam /home/opam"))
2026-01-12 13:26.47 ---> using "24883da7c3bfb9b4beffcac7267b86c1389006a753d78f6b386a3c4fd0e70458" from cache
/home/opam: (run (shell "sudo ln -f /usr/bin/opam-2.4 /usr/bin/opam && opam update"))
This version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted.
You may want to back it up before going further.
Continue? [Y/n] y
Format upgrade done.
<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-01-12 13:26.47 ---> using "e0d08704d663585a0eeeaa1114187809c41cb285481ac9f5195ea2884586d4b3" from cache
/home/opam: (run (network host)
(shell "opam repo add opam https://github.com/ocaml/opam-repository.git#2bf2bf6ea0c8867eede5e26c1c591999dd5a9ee1"))
[opam] Initialised
[NOTE] Repository opam has been added to the selections of switch 5.3 only.
Run `opam repository add opam --all-switches|--set-default' to use it in all existing switches, or in newly created switches, respectively.
2026-01-12 13:26.47 ---> using "4b42a87dd81282243e82de55691171e0948e488cb18ccee4fe6f2cc05a66e1b5" from cache
/home/opam: (run (cache (download-cache (target /home/opam/.opam/download-cache)))
(network host)
(shell "sudo apt-get update && opam install -y \"mirage>=4\""))
Get:1 http://deb.debian.org/debian trixie InRelease [140 kB]
Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
Get:4 http://deb.debian.org/debian trixie/main amd64 Packages [9670 kB]
Get:5 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [94.5 kB]
Fetched 9996 kB in 2s (4847 kB/s)
Reading package lists...
The following actions will be performed:
=== install 28 packages
- install angstrom 0.16.1 [required by emile, uri]
- install astring 0.8.5 [required by mirage]
- install base64 3.5.2 [required by emile]
- install bigstringaf 0.10.0 [required by emile]
- install bos 0.2.1 [required by mirage]
- install cmdliner 2.1.0 [required by mirage]
- install conf-pkg-config 4 [required by opam-monorepo]
- install csexp 1.5.2 [required by dune-configurator]
- install domain-name 0.5.0 [required by ipaddr]
- install dune 3.20.2 [required by mirage]
- install dune-configurator 3.20.2 [required by bigstringaf]
- install emile 1.1 [required by mirage]
- install fmt 0.11.0 [required by mirage]
- install fpath 0.7.3 [required by mirage]
- install ipaddr 5.6.1 [required by mirage]
- install logs 0.10.0 [required by mirage]
- install macaddr 5.6.1 [required by ipaddr]
- install mirage 4.10.4
- install ocaml-syntax-shims 1.0.0 [required by angstrom]
- install ocamlbuild 0.16.1 [required by astring, bos]
- install ocamlfind 1.9.8 [required by astring, bos]
- install opam-monorepo 0.4.3 [required by mirage]
- install pecu 0.7 [required by emile]
- install rresult 0.7.0 [required by mirage]
- install stringext 1.6.0 [required by uri]
- install topkg 1.1.1 [required by astring, bos]
- install uri 4.4.0 [required by mirage]
- install uutf 1.0.4 [required by emile]
The following system packages will first need to be installed:
pkg-config
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
opam believes some required external dependencies are missing. opam can:
> 1. Run apt-get to install them (may need root/sudo access)
2. Display the recommended apt-get command and wait while you run it manually (e.g. in another terminal)
3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
4. Abort the installation
[1/2/3/4] 1
+ /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "pkg-config"
- Selecting previously unselected package libpkgconf3:amd64.
- (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20653 files and directories currently installed.)
- Preparing to unpack .../libpkgconf3_1.8.1-4_amd64.deb ...
- Unpacking libpkgconf3:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkgconf-bin.
- Preparing to unpack .../pkgconf-bin_1.8.1-4_amd64.deb ...
- Unpacking pkgconf-bin (1.8.1-4) ...
- Selecting previously unselected package pkgconf:amd64.
- Preparing to unpack .../pkgconf_1.8.1-4_amd64.deb ...
- Unpacking pkgconf:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkg-config:amd64.
- Preparing to unpack .../pkg-config_1.8.1-4_amd64.deb ...
- Unpacking pkg-config:amd64 (1.8.1-4) ...
- Setting up libpkgconf3:amd64 (1.8.1-4) ...
- Setting up pkgconf-bin (1.8.1-4) ...
- Setting up pkgconf:amd64 (1.8.1-4) ...
- Setting up pkg-config:amd64 (1.8.1-4) ...
- Processing triggers for libc-bin (2.41-12) ...
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved angstrom.0.16.1 (cached)
-> retrieved astring.0.8.5 (cached)
-> retrieved base64.3.5.2 (cached)
-> retrieved bigstringaf.0.10.0 (cached)
-> installed conf-pkg-config.4
-> retrieved bos.0.2.1 (cached)
-> retrieved cmdliner.2.1.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> retrieved domain-name.0.5.0 (cached)
-> retrieved emile.1.1 (cached)
-> retrieved fmt.0.11.0 (cached)
-> retrieved fpath.0.7.3 (cached)
-> retrieved ipaddr.5.6.1, macaddr.5.6.1 (cached)
-> retrieved logs.0.10.0 (cached)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved mirage.4.10.4 (cached)
-> retrieved ocamlbuild.0.16.1 (cached)
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved pecu.0.7 (cached)
-> retrieved rresult.0.7.0 (cached)
-> retrieved stringext.1.6.0 (cached)
-> retrieved topkg.1.1.1 (cached)
-> retrieved uri.4.4.0 (cached)
-> retrieved uutf.1.0.4 (cached)
-> retrieved dune.3.20.2, dune-configurator.3.20.2 (cached)
-> retrieved opam-monorepo.0.4.3 (cached)
-> installed cmdliner.2.1.0
-> installed ocamlbuild.0.16.1
-> installed ocamlfind.1.9.8
-> installed topkg.1.1.1
-> installed rresult.0.7.0
-> installed uutf.1.0.4
-> installed fmt.0.11.0
-> installed astring.0.8.5
-> installed logs.0.10.0
-> installed fpath.0.7.3
-> installed bos.0.2.1
-> installed dune.3.20.2
-> installed base64.3.5.2
-> installed csexp.1.5.2
-> installed domain-name.0.5.0
-> installed macaddr.5.6.1
-> installed ocaml-syntax-shims.1.0.0
-> installed pecu.0.7
-> installed stringext.1.6.0
-> installed ipaddr.5.6.1
-> installed dune-configurator.3.20.2
-> installed bigstringaf.0.10.0
-> installed angstrom.0.16.1
-> installed emile.1.1
-> installed uri.4.4.0
-> installed opam-monorepo.0.4.3
-> installed mirage.4.10.4
Done.
# To update the current shell environment, run: eval $(opam env)
2026-01-12 13:28.31 ---> saved as "63027aebf2fda014ba58d82adc0e89a6a50a7460fce568a727f172e2a449fa0b"
/home/opam: (copy (src .) (dst /src/))
2026-01-12 13:28.32 ---> saved as "f691ce733992b82715940e8213e2d867d45c474af4b344591bf49f2b4b9159d0"
/home/opam: (env MODE unix)
/home/opam: (workdir /src/)
/src/: (run (shell "opam exec -- make configure"))
mirage configure -f tutorial/noop/config.ml -t unix
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/hello/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/hello-key/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/local-library/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/lwt/echo_server/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/lwt/heads1/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/lwt/heads2/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/lwt/timeout1/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/lwt/timeout2/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f tutorial/app_info/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f device-usage/clock/config.ml -t unix
adding unit argument to 'start ()' (to delay execution)
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f device-usage/conduit_server/config.ml -t unix
Successfully configured the unikernel. Now run 'make' (or more fine-grained steps: 'make all', 'make depends', or 'make lock').
mirage configure -f device-usage/http-fetch/config.ml -t unix
File "device-usage/http-fetch/config.ml", line 9, characters 22-40:
9 | let dhcp_requests = make_dhcp_requests () in
^^^^^^^^^^^^^^^^^^
Error: Unbound value "make_dhcp_requests"
run ['dune' 'build' 'device-usage/http-fetch/config.exe' '--root' '.'
'--workspace' 'device-usage/http-fetch/mirage/dune-workspace.config']: exited with 1
make: *** [Makefile:60: device-usage/http-fetch-configure] Error 1
"/usr/bin/env" "bash" "-c" "opam exec -- make configure" failed with exit status 2
2026-01-12 13:28.48: Job failed: Failed: Build failed