# HACS: Home Assistant Community Store (snap) HACS gives you a powerful UI to handle downloads of all your custom needs. See [https://hacs.xyz/](https://hacs.xyz/) after installation. [![Get it from the Snap Store](https://snapcraft.io/static/images/badges/en/snap-store-black.svg)](https://snapcraft.io/home-assistant-hacs) [![Donate with PayPal](https://giaever.online/paypal-donate-button.png)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=69NA8SXXFBDBN&source=https://git.giaever.org/joachimmg/home-assistant-hacs) ## Build and installation ### Install from The Snap Store (Recommended) Make sure you have Snapd installed on your system. See [Installing snapd](https://snapcraft.io/docs/installing-snapd) for a list of distributions with and without snap pre-installed, including installation instructions for those that have not. ```bash $ snap install home-assistant-hacs ``` The snap `home-assistant-snap` is required and will automatically install if it isn't already, when installing `home-assistant-hacs`. #### Connect with Home Assistant Make sure that the connection is established (should be automatical), by executing ``` snap connections ``` If the connection is not in the returned list, execute ``` snap connect home-assistant-hacs:components home-assistant-snap:components ``` to make the connection. Now 1. Go into Home Assitants **web-UI** > `configuration` > `integrations` and press the `+ sign`. 2. Search for HACS and select it from the list. 3. Continue with the configurations as described in the [official documentation](https://hacs.xyz/docs/configuration/start). 4. When the configuration is made and HACS is installed successfully, restart home-assistant-snap `snap restart home-assistant-snap`. ### Build this snap from source We recommend that your download a pre-built version of this snap from [The Snap Store](https://snapcraft.io/home-assistant-hacs), or at least make sure that you checkout the latest tag, as the master tag might contain faulty code during development. 1. **Clone this repo and checkout the latest tag** ```bash $ git clone https://git.giaever.org/joachimmg/home-assistant-hacs.git # Go into directory $ cd ./home-assistant-hacs # Checkout tag $ git checkout ``` _**NOTE**: You can find the latest tag with `git ls-remote --tags origin`_ 2. **Build and install** Make sure you have snapd (see [Installing snapd](https://snapcraft.io/docs/installing-snapd)) and latest version of Snapcraft. Install Snapcraft with ```bash $ sudo snap install snapcraft --classic ``` Or update with ```bash $ sudo snap refresh snapcraft ``` 2.2 **With multipass** From the «home-assistant-hacs»-directory, run ```bash $ snapcraft ``` Multipass will be installed and a virtual machine will boot up and build your snap. The final snap will be located in the same directory. 2.3 **With LXD** (*required* for Raspberry Pie) Snapcraft will try to install multiplass and build the snap for you, but on *Raspberry Pi* it will fail. You will have to use an LXD container. Install LXD and create a container ```bash $ snap install lxd $ snap lxd init ``` Make sure your user is a member of lxd-group ```bash $ sudo adduser $USER lxd ``` Launch an Ubuntu 20.04 container instance ```bash $ lxc launch ubuntu:20.04 home-assistant-hacs ``` Make sure you're in the «home-assistant-hacs»-directory and go into the shell of your newly created container ```bash $ lxc exec -- home-assistant-hacs /bin/bash ``` and run ```bash $ SNAPCRAFT_BUILD_ENVIRONMENT=host snapcraft ``` when the build is complete, you'll have to exit the shell and pull the snap-file from the container. See `lxc file pull --help`. 3. **Install new built snap** ``` $ sudo snap install ./home-assistant-hacs_.snap --dangerous ``` Now, [connect HACS to Home Assistant](#connect-with-home-assistant).