89 lines
2.6 KiB
Plaintext
89 lines
2.6 KiB
Plaintext
name: albatross
|
|
version: 1.0.%%GITVER%%_1
|
|
origin: local/albatross
|
|
comment: Albatross: orchestrate and manage MirageOS unikernels with Solo5
|
|
www: https://github.com/hannesm/albatross
|
|
maintainer: Hannes Mehnert <hannes@mehnert.org>
|
|
prefix: /usr/local
|
|
licenselogic: single
|
|
licenses: [NONE]
|
|
flatsize: %%FLATSIZE%%
|
|
categories: [local]
|
|
deps {
|
|
gmp {
|
|
origin = "math/gmp";
|
|
version = "6.1.2";
|
|
}
|
|
}
|
|
scripts : {
|
|
pre-install = <<EOD
|
|
if [ -n "${PKG_ROOTDIR}" ] && [ "${PKG_ROOTDIR}" != "/" ]; then
|
|
PW="/usr/sbin/pw -R ${PKG_ROOTDIR}"
|
|
else
|
|
PW=/usr/sbin/pw
|
|
fi
|
|
echo "===> Creating groups."
|
|
if ! ${PW} groupshow albatross >/dev/null 2>&1; then
|
|
echo "Creating group 'albatross' with gid '496'."
|
|
${PW} groupadd albatross -g 496
|
|
else
|
|
echo "Using existing group 'albatross'."
|
|
fi
|
|
echo "===> Creating users"
|
|
if ! ${PW} usershow albatross >/dev/null 2>&1; then
|
|
echo "Creating user 'albatross' with uid '496'."
|
|
${PW} useradd albatross -u 496 -g 496 -c "albatross daemon" -d /nonexistent -s /usr/sbin/nologin
|
|
else
|
|
echo "Using existing user 'albatross'."
|
|
fi
|
|
EOD;
|
|
post-install = <<EOD
|
|
mkdir -p /var/run/albatross/util /var/run/albatross/fifo
|
|
chown albatross:albatross /var/run/albatross/util /var/run/albatross/fifo
|
|
chmod 2760 /var/run/albatross/fifo
|
|
chgrp albatross /usr/local/libexec/albatross/vmmd
|
|
chmod 2700 /usr/local/libexec/albatross/vmmd
|
|
|
|
EOD;
|
|
post-deinstall = <<EOD
|
|
if [ -n "${PKG_ROOTDIR}" ] && [ "${PKG_ROOTDIR}" != "/" ]; then
|
|
PW="/usr/sbin/pw -R ${PKG_ROOTDIR}"
|
|
else
|
|
PW=/usr/sbin/pw
|
|
fi
|
|
if ${PW} usershow albatross >/dev/null 2>&1; then
|
|
echo "==> You should manually remove the \"albatross\" user. "
|
|
fi
|
|
if ${PW} groupshow albatross >/dev/null 2>&1; then
|
|
echo "==> You should manually remove the \"albatross\" group "
|
|
fi
|
|
EOD;
|
|
|
|
}
|
|
desc = <<EOD
|
|
A set of binaries to manage, provision, and deploy virtual machine images.
|
|
|
|
EOD;
|
|
messages [
|
|
{
|
|
message = <<EOD
|
|
===================================================================
|
|
|
|
you need to:
|
|
|
|
* modify /etc/devfs.rules to include:
|
|
|
|
add path 'vmm/solo5*' mode 0660 group albatross
|
|
|
|
* start TLS endpoint via inetd on port 49, add to /etc/inetd.conf:
|
|
tacacs stream tcp nowait albatross /usr/local/libexec/albatross/vmmd_tls_inetd vmmd_tls_inetd /usr/local/etc/albatross/cacert.pem /usr/local/etc/albatross/server.pem /usr/local/etc/albatross/server.key
|
|
|
|
and add cacert.pem server.pem and server.key to /usr/local/etc/albatross
|
|
|
|
* install solo5-hvt.net solo5-hvt.block solo5-hvt.block-net solo5-hvt.none
|
|
in /var/db/albatross
|
|
|
|
===================================================================
|
|
EOD;
|
|
}
|
|
] |