// Copyright 2020 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.

// [START sample]
{
    children: [
        {
            name: "universe-resolver",
            url: "fuchsia-pkg://fuchsia.com/universe-resolver#meta/universe-resolver.cm",
        },
        {
            // This realm and its children are resolved with the universe-resolver.
            name: "universe-realm",
            url: "fuchsia-pkg://fuchsia.com/universe-realm#meta/universe-realm.cm",
            environment: "#universe-env",
        },
    ],
    offer: [
        {
            // Acquire the fuchsia.pkg.PackageResolver from somewhere.
            protocol: "fuchsia.pkg.PackageResolver",
            from: "parent",
            to: [ "#universe-resolver" ],
        },
    ],
    environments: [
        {
            name: "universe-env",
            extends: "realm",
            resolvers: [
                {
                    resolver: "universe_resolver",
                    from: "#universe-resolver",
                    scheme: "fuchsia-pkg",
                },
            ],
        },
    ],
}

// [END sample]
