# 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/bringup.gni")

bootfs_only = false

kernel_cmdline_args -= [ "kernel.oom.behavior=jobkill" ]
kernel_cmdline_args += [ "kernel.oom.behavior=reboot" ]

zircon_enable_netsvc_debugging_features = false

meta_package_labels += [
  "//build/images:shell-commands",
  "//src/sys/component_index:component_index",
]

base_package_labels += [
  "//build/info:build-info",
  "//garnet/bin/device_settings:device_settings_manager",
  "//garnet/bin/http",
  "//garnet/bin/log_listener:log_listener",
  "//garnet/bin/log_listener:log_listener_shell",
  "//garnet/bin/network_time_service",
  "//garnet/bin/pkg_cache",
  "//garnet/bin/pkg_cache:config",
  "//garnet/bin/pkg_ctl",
  "//garnet/bin/pkg_resolver",
  "//garnet/bin/scpi",
  "//garnet/bin/setui:setui_service",
  "//garnet/bin/sshd-host",
  "//garnet/bin/sshd-host:config",
  "//garnet/bin/stash:stash",
  "//garnet/bin/stash_ctl:stash_ctl",
  "//garnet/bin/sysmgr",
  "//garnet/bin/sysmgr:network_config",
  "//garnet/bin/sysmgr:services_config",
  "//garnet/bin/system-update-checker",
  "//garnet/bin/system-update-checker:system-update-checker-config",
  "//garnet/bin/thermd",
  "//garnet/bin/thermd:config",
  "//garnet/bin/timezone",
  "//garnet/go/src/amber",
  "//garnet/go/src/amber:config",
  "//garnet/go/src/amber:pkgfs",
  "//garnet/lib/root_ssl_certificates",
  "//src/diagnostics/archivist:with_default_config",
  "//src/cobalt/bin/app:cobalt",
  "//src/cobalt/bin/system-metrics:cobalt_system_metrics",
  "//src/connectivity/bluetooth:core",
  "//src/connectivity/network/mdns/bundles:config",
  "//src/connectivity/network/mdns/bundles:services",
  "//src/connectivity/network/net-cli",
  "//src/connectivity/network/netcfg",
  "//src/connectivity/network/netcfg:config",
  "//src/connectivity/network/netcfg:filter_config",
  "//src/connectivity/network/netstack",
  "//src/connectivity/wlan:service",
  "//src/developer/exception_broker",
  "//src/developer/feedback/boot_log_checker",
  "//src/developer/feedback/boot_log_checker:config",
  "//src/developer/feedback/bugreport",
  "//src/developer/feedback/crashpad_agent",
  "//src/developer/feedback/feedback_agent",
  "//src/diagnostics/archivist",
  "//src/identity/bin:core",
  "//src/media/audio/bundles:audio_config",
  "//src/recovery/factory_reset",
  "//src/sys/appmgr",
  "//src/sys/appmgr:appmgr_deprecated_shell_allowlist",
  "//src/sys/appmgr:appmgr_global_data_allowlist",
  "//src/sys/appmgr:appmgr_scheme_config",
  "//src/sys/timekeeper",
  "//third_party/openssh-portable/fuchsia/developer-keys:ssh_config",
]

cache_package_labels += []

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