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

# TODO(fxbug.dev/98011): Remove this file when it can be replaced by workstation_eng.

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

# Remove some packages.
legacy_base_package_labels -= [
  "//src/virtualization/packages/termina_guest",
  "//src/connectivity/wlan/drivers:iwlwifi",
]

# TODO(fxbug.dev/99588): These limits are set in //products/common/workstation.gni and used in the
# _userdebug builds, but they break workstation.qemu-x64. For now, set them to zero (no limit) to
# unblock qemu.
blobfs_maximum_runtime_bytes = 0
minfs_maximum_runtime_bytes = 0
