Skip to content

Consider using python3Full for home-assistant #341001

@justinas

Description

@justinas

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.

Metadata

Metadata

Assignees

Labels

6.topic: pythonPython is a high-level, general-purpose programming language.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions