mirror of
https://github.com/home-assistant/core.git
synced 2026-09-25 17:04:04 -04:00
34c4bb585a5d5e8611b75f1399811a649c98c10b
This commit is to fix issue #325. There were three issues with the PIP installations. 1) If multiple instances of the same platform were found, pip could attempt to install the same dependency multiple times at once by being run simultaneously in different processes. This would cause pip failures due to race conditions. This has been fixed by using a thread lock to allow only one instance of PIP to run at a time. 2) PIP would not check the target if the dependency was already met. This would lead to PIP attempting to reinstall every dependency on every boot. This would eventually fail because the package was already installed, but it significantly increased boot time, especially on Raspberry Pis. 3) PIP would not upgrade packages that were already installed. Usually, when a version is specified to PIP, it will install the specified version if it is not already installed, even without the \-\-upgrade flag. This behavior did not work when using the \-\-target flag. When using the target flag, a new install is always attempted, but nothing will be overwritten unless the \-\-upgrade flag is also given. This caused new packages to not be installed when their dependencies were increased. This is fixed by defaulting towards using the \-\-upgrade flag.
…
Home Assistant

Home Assistant is a home automation platform running on Python 3. The goal of Home Assistant is to be able to track and control all devices at home and offer a platform for automating control.
To get started:
python3 -m pip install homeassistant
hass --open-ui
Check out the website for a demo, installation instructions, tutorials and documentation.
Examples of devices it can interface it:
- Monitoring connected devices to a wireless router: OpenWrt, Tomato, Netgear, DD-WRT, TPLink, and ASUSWRT
- Philips Hue lights, WeMo switches, Edimax switches, Efergy energy monitoring, RFXtrx sensors, and Tellstick devices and sensors
- Google Chromecasts, Music Player Daemon, Logitech Squeezebox, and Kodi (XBMC)
- Support for ISY994 (Insteon and X10 devices), Z-Wave, Nest Thermostats, Arduino, Raspberry Pi, and Modbus
- Integrate data from the Bitcoin network, meteorological data from OpenWeatherMap and Forecast.io, Transmission, or SABnzbd.
- See full list of supported devices
Built home automation on top of your devices:
- Keep a precise history of every change to the state of your house
- Turn on the lights when people get home after sun set
- Turn on lights slowly during sun set to compensate for less light
- Turn off all lights and devices when everybody leaves the house
- Offers a REST API and can interface with MQTT for easy integration with other projects
- Allow sending notifications using Instapush, Notify My Android (NMA), PushBullet, PushOver, Slack, and Jabber (XMPP)
The system is built modular so support for other devices or actions can be implemented easily. See also the section on architecture and the section on creating your own components.
If you run into issues while using Home Assistant or during development of a component, check the Home Assistant help section how to reach us.
Languages
Python
100%
