2024-10-11 11:31:48 +00:00
|
|
|
(* mirage >= 4.8.0 & < 4.9.0 *)
|
2022-08-25 12:57:03 +00:00
|
|
|
open Mirage
|
|
|
|
|
|
|
|
let mirror =
|
2024-07-15 10:22:57 +00:00
|
|
|
main "Unikernel.Make"
|
2022-08-25 20:47:46 +00:00
|
|
|
~packages:[
|
2022-10-20 14:09:05 +00:00
|
|
|
package ~min:"0.3.0" ~sublibs:[ "mirage" ] "paf" ;
|
2022-08-29 16:32:32 +00:00
|
|
|
package "h2" ;
|
2024-10-03 12:37:37 +00:00
|
|
|
package "ohex" ;
|
2022-08-29 16:32:32 +00:00
|
|
|
package "httpaf" ;
|
2024-11-08 14:30:15 +00:00
|
|
|
package ~min:"0.0.5" "git-kv" ;
|
2022-10-20 14:09:05 +00:00
|
|
|
package ~min:"3.10.0" "git-paf" ;
|
2022-08-25 20:47:46 +00:00
|
|
|
package "opam-file-format" ;
|
2024-10-03 12:37:37 +00:00
|
|
|
package ~min:"3.0.0" ~sublibs:[ "gz" ] "tar" ;
|
|
|
|
package ~min:"3.0.0" "tar-mirage" ;
|
2024-03-21 10:24:47 +00:00
|
|
|
package ~max:"0.2.0" "mirage-block-partition" ;
|
2024-11-08 12:56:47 +00:00
|
|
|
package ~min:"0.0.8" "http-mirage-client" ;
|
2024-10-04 14:03:54 +00:00
|
|
|
package "gpt" ;
|
2024-10-28 18:35:16 +00:00
|
|
|
package "gptar" ;
|
2022-09-28 22:12:42 +00:00
|
|
|
package "oneffs" ;
|
2024-10-03 12:37:37 +00:00
|
|
|
package "digestif" ;
|
2024-11-01 13:35:08 +00:00
|
|
|
package "swapfs" ;
|
2022-08-25 20:47:46 +00:00
|
|
|
]
|
2023-01-20 13:46:22 +00:00
|
|
|
(block @-> time @-> pclock @-> stackv4v6 @-> git_client @-> alpn_client @-> job)
|
2022-08-25 12:57:03 +00:00
|
|
|
|
2022-08-25 20:47:46 +00:00
|
|
|
let stack = generic_stackv4v6 default_network
|
2024-07-15 10:22:57 +00:00
|
|
|
let he = generic_happy_eyeballs stack
|
|
|
|
let dns = generic_dns_client stack he
|
2022-08-25 20:47:46 +00:00
|
|
|
let tcp = tcpv4v6_of_stackv4v6 stack
|
2024-07-15 10:22:57 +00:00
|
|
|
let block = block_of_file "tar"
|
2022-08-25 20:47:46 +00:00
|
|
|
|
2023-01-20 13:46:22 +00:00
|
|
|
let git_client, alpn_client =
|
2024-07-15 10:22:57 +00:00
|
|
|
let git = mimic_happy_eyeballs stack he dns in
|
2024-10-11 11:31:48 +00:00
|
|
|
merge_git_clients (git_ssh tcp git)
|
2024-07-15 10:22:57 +00:00
|
|
|
(merge_git_clients (git_tcp tcp git)
|
2024-10-11 11:31:48 +00:00
|
|
|
(git_http tcp git)),
|
2024-07-15 10:22:57 +00:00
|
|
|
paf_client tcp (mimic_happy_eyeballs stack he dns)
|
2022-09-07 07:08:45 +00:00
|
|
|
|
2022-08-25 12:57:03 +00:00
|
|
|
let () = register "mirror"
|
2024-07-15 10:22:57 +00:00
|
|
|
[ mirror $ block $ default_time $ default_posix_clock $ stack $ git_client $ alpn_client ]
|