# Copyright 2018 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.

import("//products/terminal.gni")

base_package_labels -= [ "//garnet/bin/terminal:tiles_with_terminal_config" ]

base_package_labels += [
  "//garnet/packages/config:shortcut",
  "//src/chromium",
  "//src/dart:dart_jit",
  "//src/dart:dart_jit_product",
  "//src/experiences/session_shells/ermine",
  "//src/experiences/settings",
  "//src/experiences/story_shells/mondrian",
  "//src/flutter",
  "//src/fonts",
  "//src/fonts:open-fonts-collection",
  "//src/modular/bundles:framework_experimental",
  "//src/ui/bin/brightness_manager",
  "//src/ui/bin/shortcut",
  "//third_party/dart-pkg/git/flutter/examples/flutter_gallery",
  "//topaz/shell/story_shell_labs",
]

cache_package_labels += [
  "//garnet/packages/prod:battery_manager",
  "//src/experiences/bin/simple_browser",
  "//src/media/audio/bundles:services",
]

universe_package_labels += [ "//src/modular/bundles:tools" ]

kernel_cmdline_args += [
  # hide the virtual console on boot
  "virtcon.hide-on-boot",
]

# End to end (E2E) product test runtime dependencies. Must be added to cache,
# not universe, so the test can run on bots where there is no package server.
#
# TODO(IN-1097): Support a package server on bots so this can be added to
# universe like the tests.
cache_package_labels += [
  "//src/tests/end_to_end/bundles:end_to_end_deps",
  "//src/tests/end_to_end/bundles:workstation_end_to_end_deps",
]

# E2E Product Tests. They don't produce fuchsia packages, but host executables,
# and must just be included somewhere in the build configuration of the product.
universe_package_labels += [
  "//src/experiences/tests/e2e:test",
  "//src/tests/end_to_end/can_browse_web:test",
]
