Paulus Schoutsen 8faccaaaad Remove OS specific mentions from virtualenv guide (#9786)
* Remove OS specific mentions from virtualenv guide

* Tweaks for comments.

* Update virtualenv.markdown

* Tiny tweaks now we are here anyway
2019-07-06 00:57:55 +02:00

4.0 KiB

layout, title, description, date, sidebar, comments, sharing, footer, redirect_from
layout title description date sidebar comments sharing footer redirect_from
page Installation in Python virtual environment How to install Home Assistant in a Python virtual environment. 2016-4-16 16:40 true false true true /getting-started/installation-virtualenv/

If you already have Python 3.6 or later installed (we suggest 3.7 or later), you can easily give Home Assistant a spin.

It's recommended when installing Python packages that you use a virtual environment. This will make sure that your Python installation and Home Assistant installation won't impact one another. The following steps will work on most UNIX like systems.

This is a generic guide for running Home Assistant under Python. We recommend to use [our recommended installation guides](/docs/installation/#recommended). The steps below may be shorter but some users find difficulty when applying updates and may run into issues.

{% comment %} This page describes installation instructions for a pure Python installation. It should not contain any OS specific instructions. {% endcomment %}

Install

  1. Create a virtual environment in your current directory:
    $ python3 -m venv homeassistant
    
  2. Open the virtual environment:
    $ cd homeassistant
    
  3. Activate the virtual environment:
    $ source bin/activate
    
  4. Install Home Assistant:
    $ python3 -m pip install homeassistant
    
  5. Run Home Assistant:
    $ hass --open-ui
    
  6. You can now reach the web interface on http://ipaddress:8123/ - the first start may take a couple of minutes before the web interface is available. This can take longer if you're using lower-end hardware like a Raspberry Pi Zero.

Upgrade

  1. Stop Home Assistant

  2. Open the directory where the virtual environment is located, activate the virtual environment, then upgrade Home Assistant:

    $ cd homeassistant
    $ source bin/activate
    $ python3 -m pip install --upgrade homeassistant
    
  3. Start Home Assistant

  4. You can now reach the web interface on http://ipaddress:8123/ - the first start may take some time before the web interface is available, depending on how many integrations need to be upgraded.

Run a specific version

In the event that a Home Assistant version doesn't play well with your hardware setup, you can downgrade to a previous release. For example:

$ cd homeassistant
$ source bin/activate
$ pip3 install homeassistant==0.XX.X

Run the beta version

If you would like to test next release before anyone else, you can install the beta version, for example:

$ cd homeassistant
$ source bin/activate
$ pip3 install --pre --upgrade homeassistant

Run the development version

If you want to stay on the bleeding-edge Home Assistant development branch, you can upgrade to dev.

The "dev" branch is likely to be unstable. Potential consequences include loss of data and instance corruption.

For example:

$ cd homeassistant
$ source bin/activate
$ pip3 install --upgrade git+git://github.com/home-assistant/home-assistant.git@dev

Notes

  • In the future, if you want to start Home Assistant manually again, follow step 2, 3 and 5.
  • It's recommended to run Home Assistant as a dedicated user.
  • If you want Home Assistant to automatically start at boot, check the autostart docs

Looking for more advanced guides? Check our [Raspbian guide](/docs/installation/raspberry-pi/) or the [other installation guides](/docs/installation/).

After upgrading Python

If you've upgraded Python (for example, you were running 3.7.1 and now you've installed 3.7.3) then you'll need to build a new virtual environment. Simply rename your existing virtual environment directory:

$ mv homeassistant homeassistant.old

Then follow the Install steps again, being sure to use the newly installed version of Python.