blob: 22f2dcaa2aa1d98635c3f97dec5debef05aea8a7 [file] [log] [blame]
{
program: {
binary: "bin/appmgr",
},
use: [
{ runner: "elf" },
{
directory: "/blob",
rights: [ "rw*" ],
},
{
directory: "/boot",
rights: [ "rx*" ],
},
{
directory: "/dev",
rights: [ "rw*" ],
},
{
directory: "/minfs",
as: "/data",
rights: [
"admin",
"rw*",
],
},
{
directory: "/pkgfs",
rights: [ "rx*" ],
},
{
directory: "/system",
rights: [ "rx*" ],
},
{
directory: "/tmp",
rights: [ "rw*" ],
},
// Services used by appmgr with the svc_for_sys prefix are passed through to
// the sys realm
// From bootsvc
{
protocol: "/svc/fuchsia.boot.Arguments",
as: "/svc_for_sys/fuchsia.boot.Arguments",
},
{
protocol: "/svc/fuchsia.boot.FactoryItems",
as: "/svc_for_sys/fuchsia.boot.FactoryItems",
},
{
protocol: "/svc/fuchsia.boot.ReadOnlyLog",
as: "/svc_for_sys/fuchsia.boot.ReadOnlyLog",
},
{
protocol: "/svc/fuchsia.boot.RootJob",
as: "/svc_for_sys/fuchsia.boot.RootJob",
},
{
protocol: "/svc/fuchsia.boot.RootJobForInspect",
as: "/svc_for_sys/fuchsia.boot.RootJobForInspect",
},
{
protocol: "/svc/fuchsia.boot.RootResource",
as: "/svc_for_sys/fuchsia.boot.RootResource",
},
{
protocol: "/svc/fuchsia.boot.WriteOnlyLog",
as: "/svc_for_sys/fuchsia.boot.WriteOnlyLog",
},
{
protocol: "/svc/fuchsia.kernel.Stats",
as: "/svc_for_sys/fuchsia.kernel.Stats",
},
// From ptysvc
{
protocol: "/svc/fuchsia.hardware.pty.Device",
as: "/svc_for_sys/fuchsia.hardware.pty.Device",
},
// From devcoordinator
{
protocol: "/svc/fuchsia.device.NameProvider",
as: "/svc_for_sys/fuchsia.device.NameProvider",
},
{
protocol: "/svc/fuchsia.device.manager.Administrator",
as: "/svc_for_sys/fuchsia.device.manager.Administrator",
},
{
protocol: "/svc/fuchsia.device.manager.DebugDumper",
as: "/svc_for_sys/fuchsia.device.manager.DebugDumper",
},
{
protocol: "/svc/fuchsia.device.manager.BindDebugger",
as: "/svc_for_sys/fuchsia.device.manager.BindDebugger",
},
{
protocol: "/svc/fuchsia.hardware.power.statecontrol.Admin",
as: "/svc_for_sys/fuchsia.hardware.power.statecontrol.Admin",
},
{
protocol: "/svc/fuchsia.kernel.Counter",
as: "/svc_for_sys/fuchsia.kernel.Counter",
},
{
protocol: "/svc/fuchsia.kernel.DebugBroker",
as: "/svc_for_sys/fuchsia.kernel.DebugBroker",
},
{
protocol: "/svc/fuchsia.paver.Paver",
as: "/svc_for_sys/fuchsia.paver.Paver",
},
{
protocol: "/svc/fuchsia.scheduler.ProfileProvider",
as: "/svc_for_sys/fuchsia.scheduler.ProfileProvider",
},
{
protocol: "/svc/fuchsia.virtualconsole.SessionManager",
as: "/svc_for_sys/fuchsia.virtualconsole.SessionManager",
},
// From component_manager
{
protocol: "/svc/fuchsia.process.Launcher",
as: "/svc_for_sys/fuchsia.process.Launcher",
},
// From v2 components
{
protocol: "/svc/fuchsia.fonts.Provider",
as: "/svc_for_sys/fuchsia.fonts.Provider",
},
{
protocol: "/svc/fuchsia.developer.remotecontrol.RemoteControl",
as: "/svc_for_sys/fuchsia.developer.remotecontrol.RemoteControl",
},
// From sysinfo
{
protocol: "/svc/fuchsia.sysinfo.SysInfo",
as: "/svc_for_sys/fuchsia.sysinfo.SysInfo",
},
// From test_manager
{
protocol: "/svc/fuchsia.test.manager.Harness",
as: "/svc_for_sys/fuchsia.test.manager.Harness",
},
// These services are used by appmgr directly
{
protocol: [
"/svc/fuchsia.boot.WriteOnlyLog",
"/svc/fuchsia.process.Launcher",
],
},
],
expose: [
{
directory: "/hub",
from: "self",
rights: [ "rw*" ],
},
// These services exposed by appmgr are services from the v1 component
// runtime being made available to the v2 component runtime. These all cause
// dependency cycles between the two runtimes. Cycles require trickier
// runtime logic to ensure correctness, are a general design smell, and may
// be disallowed in the future.
{
protocol: [
"/svc/fuchsia.cobalt.LoggerFactory",
"/svc/fuchsia.device.manager.Administrator",
"/svc/fuchsia.devicesettings.DeviceSettingsManager",
"/svc/fuchsia.exception.Handler",
"/svc/fuchsia.logger.Log",
"/svc/fuchsia.logger.LogSink",
"/svc/fuchsia.net.NameLookup",
"/svc/fuchsia.net.stack.Log",
"/svc/fuchsia.net.stack.Stack",
"/svc/fuchsia.netstack.Netstack",
"/svc/fuchsia.overnet.Overnet",
"/svc/fuchsia.overnet.ServicePublisher",
"/svc/fuchsia.pkg.FontResolver",
"/svc/fuchsia.pkg.PackageResolver",
"/svc/fuchsia.pkg.RepositoryManager",
"/svc/fuchsia.pkg.rewrite.Engine",
"/svc/fuchsia.posix.socket.Provider",
"/svc/fuchsia.process.Resolver",
"/svc/fuchsia.sys.Environment",
"/svc/fuchsia.sys.Launcher",
"/svc/fuchsia.test.manager.Harness",
"/svc/fuchsia.tracing.controller.Controller",
"/svc/fuchsia.tracing.provider.Registry",
"/svc/fuchsia.wlan.service.Wlan",
],
from: "self",
},
],
}