Convert away from default_config

The answer to both questions is yes.

Is there documentation on this? I wasn’t able to find anything in my searches. Does this work with other entries too? For example, script?

Yes.

Splitting up the configuration - Advanced Usage

Sorry, I should have been more clear. I mean the automation manual part. I’ve not seen this before.

It’s described here in the section concerning the Automation Editor. The only difference is that the example uses a different word to differentiate between the files you edit manually and the file used by the Automation Editor.

I’m not seeing where the linked section refers to separating GUI and manually-coded !includes, is there any other documentation on this feature?

1 Like

Thank you @123

if you want to split your scripts up so that the script UI editor works and your files are split, look here or,

go into a terminal in HA and do this:
ln -f /config/scripts.yaml /config/#path_to_your_sub-folder/scripts.yaml

and in configuration.yaml do this:
script: !include_dir_merge_named /config/#path_to_your_sub-folder

Then put your split folders here for scripts. Add your other scripts in other xxx.yaml files into this folder and they will be used in the config as well.

This links a file placeholder in your sub-folder to contain the actual scripts.yaml data for the config process to use, and it allows the Home Assistant UI editor to parse, destroy, and re-create the /config/scripts.yaml file anytime it needs to for editing.

I didn’t care about the scripts UI editor until I started doing blueprints and needed the script UI editor to actually work.

(I haven’t tried, but I believe you can do the same trick with automations.yaml.)

Thanks for sharing your config. I’ve been looking for this as a config example and wondering why it doesn’t exist in the default_config documentation.

I’ve updated the list to include additional components added to default_config since your post.

# Skip default_config meta-component in favor of individual integrations
#default_config:

# Individual integrations included in default_config as of version 2022.2.5
# See https://www.home-assistant.io/integrations/default_config/
automation: !include automations.yaml
cloud:
config:
counter:
dhcp:
energy:
frontend:
history:
image:
input_boolean:
input_button:
input_datetime:
input_number:
input_select:
input_text:
logbook:
map:
media_source:
mobile_app:
my:
person:
scene: !include scenes.yaml
script: !include scripts.yaml
ssdp:
stream:
sun:
system_health:
tag:
timer:
updater:
usb:
webhook:
zeroconf:
zone:

Thanks for the spoon-fed info. Looks like there are some changes since 2022.2, so as of 2022.6 I had to use this (removed update, added backup):

# Individual integrations included in default_config as of version 2022.6
# See https://www.home-assistant.io/integrations/default_config/
automation: !include automations.yaml
backup:
cloud:
config:
counter:
dhcp:
energy:
frontend:
history:
image:
input_boolean:
input_button:
input_datetime:
input_number:
input_select:
input_text:
logbook:
map:
media_source:
mobile_app:
my:
person:
scene: !include scenes.yaml
script: !include scripts.yaml
ssdp:
stream:
sun:
system_health:
tag:
timer:
usb:
webhook:
zeroconf:
zone:
1 Like

You may want to add diagnostics

I don’t see any mention to “diagnostics” in the default_config documentation

Is your diagnostics working without adding it?

Yes, it is!
Looks like it’s built-in, and you cannot disable it

When it first appeared in HA I had to add it to get it working. Guess they made changes to default it built in then. Thanks

Here’s the list updated for 2022.12.8

# Individual integrations included in default_config as of version 2022.12.8
# See https://www.home-assistant.io/integrations/default_config/
automation: !include automations.yaml
backup:
bluetooth:
cloud:
config:
counter:
dhcp:
energy:
frontend:
hardware:
history:
homeassistant_alerts:
image:
input_boolean:
input_button:
input_datetime:
input_number:
input_select:
input_text:
logbook:
map:
media_source:
mobile_app:
my:
person:
schedule:
scene: !include scenes.yaml
script: !include scripts.yaml
ssdp:
stream:
sun:
system_health:
tag:
timer:
usb:
webhook:
zeroconf:
zone:

Remove backup for Home Assistant Operating System or Home Assistant Supervised as it’s built-in.

1 Like

What advantages are there by removing all the config components that you dont use???

Faster or just a case of not detecting spurious devices?

I remember getting rid of buttons etc I don’t use, like the media thing.

I made a custom component, that makes managing it simpler.

2 Likes