homeassistant安装HACS应用商店

news2024/10/6 10:30:43

环境:iStoreOS,已在商店中安装homeassistant。

homeassistant在iStoreOS中是以docker容器运行的。

1、进入终端,输入账号和密码(默认:root,password)

查看容器:docker ps

进入容器:docker exec -it homeassistant bash

2、下载hacs

使用命令下载hacs,会转向github,可能无法访问

wget -O - https://get.hacs.xyz | bash - 

如果能够访问成功,安装完成后请重启homeassistant,即可完成安装,以下第3步不用再操作

如果上面地址无法访问,可以使用以下命令安装:

创建文件:touch hacs.sh && chmod +x hacs.sh

编辑文件:vi hacs.sh

粘贴下面内容:先按a,表示开始编辑,右键粘贴进去后,按esc退出编辑,输入:wq保存内容(注意有冒号:)

#!/bin/bash
# wget -O - https://get.hacs.xyz | bash -
set -e

RED_COLOR='\033[0;31m'
GREEN_COLOR='\033[0;32m'
GREEN_YELLOW='\033[1;33m'
NO_COLOR='\033[0m'

declare haPath
declare -a paths=(
    "$PWD"
    "$PWD/config"
    "/config"
    "$HOME/.homeassistant"
    "/usr/share/hassio/homeassistant"
)
declare currentVersion
declare currentYear
declare currentMonth
declare currentPatch
declare targetVersion
declare targetYear
declare targetMonth
declare targetPatch

function info () { echo -e "${GREEN_COLOR}INFO: $1${NO_COLOR}";}
function warn () { echo -e "${GREEN_YELLOW}WARN: $1${NO_COLOR}";}
function error () { echo -e "${RED_COLOR}ERROR: $1${NO_COLOR}"; if [ "$2" != "false" ]; then exit 1;fi; }

function checkRequirement () {
    if [ -z "$(command -v "$1")" ]; then
        error "'$1' is not installed"
    fi
}

checkRequirement "wget"
checkRequirement "unzip"

info "Trying to find the correct directory..."
for path in "${paths[@]}"; do
    if [ -n "$haPath" ]; then
        break
    fi

    if [ -f "$path/.HA_VERSION" ]; then
        haPath="$path"
    fi
done

if [ -n "$haPath" ]; then
    info "Found Home Assistant configuration directory at '$haPath'"
    cd "$haPath" || error "Could not change path to $haPath"
    if [ ! -d "$haPath/custom_components" ]; then
        info "Creating custom_components directory..."
        mkdir "$haPath/custom_components"
    fi

    info "Changing to the custom_components directory..."
    cd "$haPath/custom_components" || error "Could not change path to $haPath/custom_components"

    info "Downloading HACS"
    wget "https://github.com/hacs/integration/releases/latest/download/hacs.zip"

    if [ -d "$haPath/custom_components/hacs" ]; then
        warn "HACS directory already exist, cleaning up..."
        rm -R "$haPath/custom_components/hacs"
    fi

    info "Creating HACS directory..."
    mkdir "$haPath/custom_components/hacs"

    info "Unpacking HACS..."
    unzip "$haPath/custom_components/hacs.zip" -d "$haPath/custom_components/hacs" >/dev/null 2>&1


    echo
    info "Verifying versions"
    targetVersion=$(sed -n -e '/^MINIMUM_HA_VERSION/p' "$haPath/custom_components/hacs/const.py" | cut -d '"' -f 2)
    currentVersion=$(cat "$haPath/.HA_VERSION")

    info "Current version is ${currentVersion}, minimum version is ${targetVersion}"

    targetYear=$(echo "${targetVersion}" | cut -d "." -f 1)
    currentYear=$(echo "${currentVersion}" | cut -d "." -f 1)

    if [ "${currentYear}" -lt "${targetYear}" ]; then
        rm -R "$haPath/custom_components/hacs"
        error "Version ${currentVersion} is not new enough, needs at least ${targetVersion}"
    fi

    if [ "${currentYear}" == "${targetYear}" ]; then
        targetMonth=$(echo "${targetVersion}" | cut -d "." -f 2)
        currentMonth=$(echo "${currentVersion}" | cut -d "." -f 2)

        if [ "${currentMonth}" -lt "${targetMonth}" ]; then
        rm -R "$haPath/custom_components/hacs"
            error "Version ${currentVersion} is not new enough, needs at least ${targetVersion}"
        fi

        if [ "${currentMonth}" == "${targetMonth}" ]; then
            targetPatch=$(echo "${targetVersion}" | cut -d "." -f 3)
            currentPatch=$(echo "${currentVersion}" | cut -d "." -f 3)

            if [ "${currentPatch}" -lt "${targetPatch}" ]; then
                rm -R "$haPath/custom_components/hacs"
                error "Version ${currentVersion} is not new enough, needs at least ${targetVersion}"
            fi
        fi
    fi

    echo
    info "Removing HACS zip file..."
    rm "$haPath/custom_components/hacs.zip"
    info "Installation complete."
    echo
    info "Remember to restart Home Assistant before you configure it"

else
    echo
    error "Could not find the directory for Home Assistant" false
    echo "Manually change the directory to the root of your Home Assistant configuration"
    echo "With the user that is running Home Assistant"
    echo "and run the script again"
    exit 1
fi

3、运行hacs.sh脚本 

运行脚本:./hacs.sh

等待几分钟,会自动安装hacs,看到restart后安装成功,重启homeassistant

4、添加hacs模块

配置-设备与服务

添加集成-选择品牌-输入HACS 

点击链接,这里需要访问github,网络要加速器。没有github网站的账户要注册一个。

填入号码 

完成添加HACS 

添加自定义存储库

添加地址 

https://github.com/theneweinstein/somneo

完成后,就可以添加插件了

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1136629.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何公网远程连接本地群晖NAS中的WebDAV

文章目录 1. 在群晖套件中心安装WebDav Server套件1.1 安装完成后,启动webdav服务,并勾选HTTP复选框 2. 局域网测试WebDav服务2.1 下载RaiDrive客户端2.2 打开RaiDrive,设置界面语言可以选择中文2.3 点击添加按钮,新建虚拟驱动区2…

4G通信电子标签

4G移动通信系统 4G最大的数据传输速率超过100Mbit/s,这个速率是移动电话数据传输速率的1万倍,也是3G移动电话速率的50倍。4G手机可以提供高性能的汇流媒体内容,并通过ID应用程序成为个人身份鉴定设备。它也可以接受高分辨率的电影和电视节目…

WebDAV之π-Disk派盘 + FX播放器

想要把手机、PC、NAS等设备上的视频在智能电视上大屏播放,支持超多格式的多合一视频播放器?快来试试FX播放器吧。 FX播放器除了存储在智能手机上的视频外,您网络上的视频也是实时无缝的,内置网络客户端支持各种协议,包括 FTP、HTTP 和 WebDAV。 支持弹出窗口,允许您在观…

Pytorch代码入门学习之分类任务(二):定义数据集

一、导包 import torch import torchvision import torchvision.transforms as transforms 二、下载数据集 2.1 代码展示 # 定义数据加载进来后的初始化操作: transform transforms.Compose([# 张量转换:transforms.ToTensor(),# 归一化操作&#x…

什么是 Node.js

目标 什么是 Node.js,有什么用,为何能独立执行 JS 代码,演示安装和执行 JS 文件内代码 讲解 Node.js 是一个独立的 JavaScript 运行环境,能独立执行 JS 代码,因为这个特点,它可以用来编写服务器后端的应用…

position:sticity简介

一句话描述position: sticky的作用:让sticky元素在不超出包含块(containing block)的前提下尽可能展示在最近滚动祖先元素(nearest scrollport)的视口内。 怎么判断最近滚动祖先元素? 祖先元素中有overflow属性值不是visible和clip的都是滚动元素&…

Uni-app智慧工地可视化信息平台源码

智慧工地的核心是数字化,它通过传感器、监控设备、智能终端等技术手段,实现对工地各个环节的实时数据采集和传输,如环境温度、湿度、噪音等数据信息,将数据汇集到云端进行处理和分析,生成各种报表、图表和预警信息&…

大三0基础 java学习求助?

大三0基础 java学习求助? 网络上有很多各种编程语言的教学网站、视频(以下简称教程),以下是自学的话一些注意的 点:最近很多小伙伴找我,说想要一些java资料,然后我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了…

buuctf_练[CSAWQual 2019]Web_Unagi

[CSAWQual 2019]Web_Unagi 文章目录 [CSAWQual 2019]Web_Unagi掌握知识解题思路关键payload 掌握知识 ​ XXE漏洞利用,xml文件转换编码绕过WAF(UTF-8 --> UTF-16),xml文件格式的书写 ​ 再遇到上传xml文件被拦截,就尝试修改编码再上传&a…

13.5 Junit5(针对Java的单元测试框架)

一.Junit是针对Java的单元测试框架 二.注解 1.Test: 当前的方法是一个测试用例. a.去maven中央仓库下载依赖(JUnit Jupiter API) <!-- https://mvnrepository.com/artifact/org.junit.jupiter/junit-jupiter-api --><dependency><groupId>org.junit.jupi…

企业/公司文件加密软件|办公文件、文档、图纸加密|源代码透明加密保护防止外泄。dlp数据泄露防护系统

天锐绿盾是一家专业的数据安全保护解决方案提供商&#xff0c;其产品包括文件加密、图纸加密、源代码加密、音视频加密等智能透明加密保护。 PC访问地址&#xff1a; https://isite.baidu.com/site/wjz012xr/2eae091d-1b97-4276-90bc-6757c5dfedee 以下是天锐绿盾的优势和特点…

利用Pholcus框架提取小红书数据的案例分析

前言 在当今互联网时代&#xff0c;数据的获取和分析变得越来越重要。爬虫技术作为一种数据采集的方法&#xff0c;被广泛涉及各个领域。在本文中&#xff0c;我们将介绍如何使用Python Spark语言和Pholcus框架来实现一本小红书数据爬虫的案例分析。 开发简述 Go语言作为一种…

20231026_java基础_设计模式

20231026_java基础 设计模式概念分类 单例模式概念代码实现饿汉式懒汉式对比差异 总结 设计模式 概念 分类 归纳 运用 单例模式 概念 代码实现 饿汉式 测试:获取实例对象,并测试有多个该对象时,他们是否相同 懒汉式 对比差异 代码实现中 饿 懒 过程中 并发时 总结 111

【uniapp】富文本

1、富文本显示&#xff0c;只显示文字&#xff0c;其余html不显示 功能&#xff1a;红框处其实是一个富文本&#xff0c;有图片之类的。但是现在不想根据html显示&#xff0c;只显示文字。 直接上代码 //内容显示 <view>{{item.fhArticleVo.content}}</view> // …

浅谈开口互感器在越南美的工业云系统中的应用

摘 要&#xff1a;分析低压开口式电流互感器的原理&#xff0c;结合工程实例分析开口电流互感器在低压配电系统中&#xff0c;主要是改造项目中的应用及施工细节&#xff0c;为用户快速实现智能配电提供解决方案&#xff0c;该方案具有成本低、投资少、安装接线简便等优点&…

浪潮云海首席科学家张东:面向一云多芯的系统设计方法

近日&#xff0c;浪潮云海首席科学家张东、资深研究员亓开元在《中国计算机学会通讯》2023年第9期发表论文《面向一云多芯的系统设计方法》&#xff0c;深入分析一云多芯背后的关键挑战问题&#xff0c;阐释面向一云多芯的系统设计方法和关键技术路线&#xff0c;并在此基础上&…

mysql查看插入记录与查看mysql实时查询和插入速度

我真正关心的数据 比如一秒钟到底能插入多少行数据?慢查询有多少? 慢是一个相对概念,慢的绝对值时间是可以设置的,例如我设置long_query_time为10秒,那么但凡超过10秒的查询都可以认为是慢查询查询操作的超时时间mysql中系统变量什么意思?怎么查看系统变量? show varia…

用户登录后首页不显示数据

登录前&#xff1a; 登录后&#xff1a; 用户登录后&#xff0c;首页的图标按键、

python excel接口自动化测试框架

前言 前些天写了pytestyamlallure接口自动化测试框架这篇文章。 今天采用Excel继续写一个接口自动化测试框架。 设计流程图 这张图是我的excel接口测试框架的一些设计思路。 首先读取excel文件&#xff0c;得到测试信息&#xff0c;然后通过封装的requests方法&#xff0c…

实用篇-认识微服务

一、服务架构演变 1. 单体架构 单体架构&#xff1a;将业务的所有功能集中在一个项目中开发&#xff0c;打成一个包部署 单体架构的优点&#xff1a; 架构简单部署成本低 单体架构的缺点&#xff1a; 耦合度高 2. 分布式架构 分布式架构&#xff1a; 根据业务功能对系…