-
-
Notifications
You must be signed in to change notification settings - Fork 18.1k
Description
Issue description
Certain custom Home Assistant components, such as ble_monitor which I'm attempting to package require Python built with Bluetooth support (a.k.a. bluezSupport) which is present in the "full" flavor of Python, but not the default one in nixpkgs (python3).
I would like to suggest using pythonFull for home-assistant instead. Considering that home-assistant is already a large derivation with a closure size of around 800MB, this should hopefully not have too large of an impact:
$ nix path-info -Sh $(nix-build -A python312 '<nixpkgs>')
/nix/store/9yj3k8zvnb4pkbyjaxmb1wkn6ayrxvxy-python3-3.12.4 165.6M
$ nix path-info -Sh $(nix-build -A python312Full '<nixpkgs>')
/nix/store/52fcvpkl4cy8gz6qjxm0crfx2m4xgrdj-python3-3.12.4 187.0M
While one can always home-assistant.override { python312 = python312Full }, this results in having to rebuild all of H-A's Python dependencies, which may take up to multiple hours on modest hardware. My understanding is that if home-assistant used python312Full by default, Hydra would cache these and local rebuilds would not be necessary.