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.
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
pythonFullfor 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: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 ifhome-assistantusedpython312Fullby default, Hydra would cache these and local rebuilds would not be necessary.