diff --git a/.orchestra/config/components.yml b/.orchestra/config/components.yml
index 32e04092ef67821e3dbe476661d7d79eb744e482..291713a77d99b78e83d7b04f904ed2a06fa914f3 100644
--- a/.orchestra/config/components.yml
+++ b/.orchestra/config/components.yml
@@ -1,12 +1,9 @@
 #@ load("@ytt:template", "template")
 #@ load("@ytt:data", "data")
 
-#@ load("/components/macos/macos.lib.yml", "macos_toolchain_components")
-
 #@ load("/global_options.lib.yml", "options")
-components:
-  _: #@ template.replace(macos_toolchain_components)
 
+components: {}
 add_to_path:
   - $ORCHESTRA_ROOT/bin
   - $ORCHESTRA_DOTDIR/support
diff --git a/.orchestra/config/components/macos/macos.lib.yml b/.orchestra/config/components/macos/macos.yml
similarity index 50%
rename from .orchestra/config/components/macos/macos.lib.yml
rename to .orchestra/config/components/macos/macos.yml
index 9f77b02fa7432e899700f458042b31bd64069c2f..0fe3bb53772ced1700b9046a9974e4aed0c7e139 100644
--- a/.orchestra/config/components/macos/macos.lib.yml
+++ b/.orchestra/config/components/macos/macos.yml
@@ -1,3 +1,4 @@
+#@ load("@ytt:overlay", "overlay")
 #@ load("@ytt:template", "template")
 
 #@ load("/components/macos/libtapi.lib.yml", "libtapi_component")
@@ -5,12 +6,11 @@
 #@ load("/components/macos/ld64.lib.yml", "ld64_components")
 #@ load("/components/macos/clang.lib.yml", "macosx_clang_components")
 
-#@ def _macos_toolchain_components():
-macos/libtapi: #@ libtapi_component
-macos/sdk: #@ macosx_sdk_component
-_ : #@ template.replace(ld64_components)
-_ : #@ template.replace(macosx_clang_components)
-#@ end
-
+#@overlay/match by=overlay.all, expects=1
+#@overlay/match-child-defaults missing_ok=True
 ---
-#@ macos_toolchain_components = _macos_toolchain_components()
+components:
+  macos/libtapi: #@ libtapi_component
+  macos/sdk: #@ macosx_sdk_component
+  _: #@ template.replace(ld64_components)
+  _: #@ template.replace(macosx_clang_components)