// Copyright 2022 The Fuchsia Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
{
    include: [
        "inspect/client.shard.cml",
        "syslog/client.shard.cml",
    ],
    program: {
        runner: "elf",
        binary: "bin/virtual_console",
        forward_stdout_to: "none",
        forward_stderr_to: "none",
    },
    capabilities: [
        {
            protocol: [ "fuchsia.virtualconsole.SessionManager" ],
        },
    ],
    use: [
        {
            directory: "boot-data",
            rights: [ "r*" ],
            path: "/boot/data",
        },
        {
            directory: "input-report",
            rights: [ "r*" ],
            path: "/dev/class/input-report",
        },
        {
            directory: "display-coordinator",
            rights: [ "r*" ],
            path: "/dev/class/display-coordinator",
        },
        {
            protocol: [
                "fuchsia.boot.Arguments",
                "fuchsia.boot.ReadOnlyLog",
                "fuchsia.boot.WriteOnlyLog",
                "fuchsia.hardware.power.statecontrol.Admin",
                "fuchsia.sysmem.Allocator",
                "fuchsia.sysmem2.Allocator",
            ],
        },
        {
            protocol: [ "fuchsia.tracing.provider.Registry" ],

            // Trace manager may be excluded from builds where tracing is not
            // expected to be used for observability, such as in the bringup
            // product and non-eng builds of any product.
            availability: "optional",
        },
        {
            protocol: "fuchsia.hardware.pty.Device",
            availability: "optional",
        },
    ],
    expose: [
        {
            protocol: "fuchsia.virtualconsole.SessionManager",
            from: "self",
        },
    ],
}
