options = {
build_threads = 4,
scan_threads = 4,
log_level = "info",
}
pkgsrc = {
basedir = "/usr/pkgsrc",
make = "/usr/bin/make",
pkgpaths = {
"mail/mutt",
"sysutils/coreutils",
},
}
sandboxes = {
basedir = "/data/chroot",
environment = {
build = {
clear = true,
inherit = { "TERM", "HOME" },
vars = {
PATH = "/sbin:/bin:/usr/sbin:/usr/bin",
},
},
dev = {
clear = true,
inherit = { "TERM", "HOME" },
vars = {
BINPKG_SITES = "${bob_packages}",
DEPENDS_TARGET = "bin-install",
PATH = "${bob_prefix}/sbin:${bob_prefix}/bin:/sbin:/bin:/usr/sbin:/usr/bin",
PS1 = [["sandbox:${bob_sandbox_id} "'${PWD}# ']],
},
},
},
setup = {
{ action = "cmd",
create = "mkdir dev && cp /dev/MAKEDEV /dev/MAKEDEV.local dev/"
.. " && cd dev && ./MAKEDEV all",
destroy = "rm -rf dev" },
{ action = "mount", fs = "proc", dir = "/proc" },
{ action = "mount", fs = "tmp", dir = "/tmp", opts = "-s 1G" },
{ action = "mount", fs = "tmp", dir = "/var", opts = "-s 1G" },
{ action = "mount", fs = "null", dir = "/bin", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/sbin", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/libexec", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/lib", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/X11R7", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/bin", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/games", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/include", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/lib", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/libdata", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/libexec", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/share", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/usr/sbin", opts = "-o ro" },
{ action = "mount", fs = "null", dir = "/var/mail", opts = "-o ro" },
{ action = "copy", dir = "/etc" },
{ action = "cmd", chroot = true,
create = "mkdir -m 1777 /var/tmp; chmod 1777 /tmp" },
{ action = "cmd", only = { set = "pkgsrc.build_user" },
create = [[
mkdir -p ${bob_sandbox_path}${bob_build_user_home}
chown ${bob_build_user} ${bob_sandbox_path}${bob_build_user_home}
]],
destroy = "rm -rf ${bob_sandbox_path}${bob_build_user_home}" },
{ action = "mount", fs = "null", dir = pkgsrc.basedir },
},
}