From 6f6489691d360c3367a383f3867635cf623904b9 Mon Sep 17 00:00:00 2001 From: Hannes Mehnert Date: Thu, 24 Jun 2021 23:55:56 +0200 Subject: [PATCH] add albatross and solo5-hvt --- packages/albatross.1.3.0~pre/opam | 64 +++++++++++++++++++ .../solo5-bindings-hvt.0.6.8~packaging/opam | 55 ++++++++++++++++ 2 files changed, 119 insertions(+) create mode 100644 packages/albatross.1.3.0~pre/opam create mode 100644 packages/solo5-bindings-hvt.0.6.8~packaging/opam diff --git a/packages/albatross.1.3.0~pre/opam b/packages/albatross.1.3.0~pre/opam new file mode 100644 index 0000000..756759f --- /dev/null +++ b/packages/albatross.1.3.0~pre/opam @@ -0,0 +1,64 @@ +opam-version: "2.0" +maintainer: "Hannes Mehnert " +authors: ["Hannes Mehnert "] +homepage: "https://github.com/roburio/albatross" +dev-repo: "git+https://github.com/roburio/albatross.git" +bug-reports: "https://github.com/roburio/albatross/issues" +license: "ISC" + +depends: [ + "ocaml" {>= "4.08.0"} + "dune" + "dune-configurator" + "conf-pkg-config" {build} + "conf-libnl3" {os = "linux"} + "lwt" {>= "3.0.0"} + "ipaddr" {>= "4.0.0"} + "cstruct" + "logs" + "rresult" + "bos" + "ptime" + "cmdliner" {>= "1.0.0"} + "fmt" + "astring" + "jsonm" + "x509" {>= "0.13.0"} + "tls" {>= "0.13.1"} + "mirage-crypto" + "mirage-crypto-pk" + "mirage-crypto-rng" {>= "0.8.0"} + "asn1-combinators" {>= "0.2.0"} + "duration" + "decompress" {>= "1.3.0"} + "bigstringaf" {>= "0.2.0"} + "checkseum" + "metrics" {>= "0.2.0"} + "metrics-lwt" {>= "0.2.0"} + "metrics-influx" {>= "0.2.0"} + "metrics-rusage" + "hex" +] +build: [ + ["dune" "subst"] {dev} + ["dune" "build" "-p" name "-j" jobs] + ["dune" "runtest" "-p" name "-j" jobs] {with-test} + ["dune" "runtest" "-p" name "-j" jobs] {with-test} + ["sh" "packaging/FreeBSD/create_package.sh"] {os = "freebsd"} + ["sh" "packaging/debian/create_package.sh"] {os-family = "debian"} +] +synopsis: "Albatross - orchestrate and manage MirageOS unikernels with Solo5" +description: """ +The goal of albatross is robust deployment of [MirageOS](https://mirage.io) +unikernels using [Solo5](https://github.com/solo5/solo5). Resources managed +by albatross are network interfaces of kind `tap`, which are connected to +already existing bridges, block devices, memory, and CPU. Each unikernel is +pinned (`cpuset` / `taskset`) to a specific core. +""" +available: [ + arch != "ppc64" & arch != "x86_32" & arch != "arm32" +] +depexts: ["linux-headers"] {os-distribution = "alpine"} +url { + src: "git+https://github.com/roburio/albatross.git#packaging" +} diff --git a/packages/solo5-bindings-hvt.0.6.8~packaging/opam b/packages/solo5-bindings-hvt.0.6.8~packaging/opam new file mode 100644 index 0000000..21e4933 --- /dev/null +++ b/packages/solo5-bindings-hvt.0.6.8~packaging/opam @@ -0,0 +1,55 @@ +opam-version: "2.0" +maintainer: "martin@lucina.net" +authors: [ + "Dan Williams " + "Martin Lucina " + "Ricardo Koller " +] +homepage: "https://github.com/solo5/solo5" +bug-reports: "https://github.com/solo5/solo5/issues" +license: "ISC" +dev-repo: "git+https://github.com/solo5/solo5.git" +build: [ + ["./configure.sh"] + [make "V=1" "CONFIG_SPT=" "CONFIG_VIRTIO=" "CONFIG_MUEN=" "CONFIG_GENODE=" "CONFIG_XEN="] + ["sh" "packaging/FreeBSD/create_package.sh"] {os = "freebsd"} + ["sh" "packaging/debian/create_package.sh"] {os-family = "debian"} +] +depends: [ + "conf-pkg-config" + "conf-libseccomp" {build & os = "linux"} +] +depexts: [ + ["linux-headers"] {os-distribution = "alpine"} + ["kernel-headers"] {os-distribution = "fedora"} + ["kernel-headers"] {os-distribution = "rhel"} + ["linux-libc-dev"] {os-family = "debian"} +] +conflicts: [ + "ocaml-freestanding" {< "0.6.0"} + "solo5-bindings-spt" + "solo5-bindings-virtio" + "solo5-bindings-muen" + "solo5-bindings-genode" + "solo5-bindings-xen" +] +available: [ + (arch = "x86_64" | arch = "arm64") & + (os = "linux" | os = "freebsd" | os = "openbsd") +] +synopsis: "Solo5 sandboxed execution environment (hvt target)" +description: """ +Solo5 is a sandboxed execution environment primarily intended +for, but not limited to, running applications built using various +unikernels (a.k.a. library operating systems). + +This package provides the Solo5 components needed to build and +run MirageOS unikernels on the "hvt" target, including the +"solo5-hvt" tender source code, and "solo5-hvt-configure" script +used to specialize the tender at MirageOS unikernel build time. + +The "hvt" target is supported on 64-bit Linux, FreeBSD and +OpenBSD systems with hardware virtualization.""" +url { + src: "git+https://github.com/hannesm/solo5.git#0.6.8-packaging" +}