Compare commits

..

1 Commits

Author SHA1 Message Date
Michel Roegl-Brunner
7763da785c
Merge af2d262498 into 81b271a9ef 2025-01-18 13:35:42 +01:00
6 changed files with 36 additions and 49 deletions

View File

@ -2,7 +2,6 @@
# Community Scripts Contribution Guide # Community Scripts Contribution Guide
## **Welcome to the communty-scripts Repository!** ## **Welcome to the communty-scripts Repository!**
📜 These documents outline the essential coding standards for all our scripts and JSON files. Adhering to these standards ensures that our codebase remains consistent, readable, and maintainable. By following these guidelines, we can improve collaboration, reduce errors, and enhance the overall quality of our project. 📜 These documents outline the essential coding standards for all our scripts and JSON files. Adhering to these standards ensures that our codebase remains consistent, readable, and maintainable. By following these guidelines, we can improve collaboration, reduce errors, and enhance the overall quality of our project.
### Why Coding Standards Matter ### Why Coding Standards Matter

View File

@ -23,14 +23,10 @@ Do not break established syntax in this file, as it is automatically updated by
### 💥 Breaking Changes ### 💥 Breaking Changes
- **READ GUIDE FIRST** breaking change: Homeassistant-Core upgrade os and python3 [@MickLesk](https://github.com/MickLesk) ([#1550](https://github.com/community-scripts/ProxmoxVE/pull/1550))
- Update Openwrt: Delete lines that do WAN input and forward accept [@chackl1990](https://github.com/chackl1990) ([#1540](https://github.com/community-scripts/ProxmoxVE/pull/1540)) - Update Openwrt: Delete lines that do WAN input and forward accept [@chackl1990](https://github.com/chackl1990) ([#1540](https://github.com/community-scripts/ProxmoxVE/pull/1540))
### 🚀 Updated Scripts ### 🚀 Updated Scripts
- added cifs support in ubuntu2404-vm.sh [@plonxyz](https://github.com/plonxyz) ([#1461](https://github.com/community-scripts/ProxmoxVE/pull/1461))
- Fix linkwarden update [@burgerga](https://github.com/burgerga) ([#1565](https://github.com/community-scripts/ProxmoxVE/pull/1565))
- [jellyseerr] Update nodejs if not up-to-date [@makstech](https://github.com/makstech) ([#1563](https://github.com/community-scripts/ProxmoxVE/pull/1563))
- Update VM Tags [@oOStroudyOo](https://github.com/oOStroudyOo) ([#1562](https://github.com/community-scripts/ProxmoxVE/pull/1562)) - Update VM Tags [@oOStroudyOo](https://github.com/oOStroudyOo) ([#1562](https://github.com/community-scripts/ProxmoxVE/pull/1562))
- Update apt-cacher-ng.sh: Typo/Missing $ [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1545](https://github.com/community-scripts/ProxmoxVE/pull/1545)) - Update apt-cacher-ng.sh: Typo/Missing $ [@michelroegl-brunner](https://github.com/michelroegl-brunner) ([#1545](https://github.com/community-scripts/ProxmoxVE/pull/1545))

View File

@ -1,7 +1,7 @@
#!/usr/bin/env bash #!/usr/bin/env bash
source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func) source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/misc/build.func)
# Copyright (c) 2021-2025 community-scripts ORG # Copyright (c) 2021-2025 tteck
# Author: tteck (tteckster) | Co-Author: MickLesk (CanbiZ) # Author: tteck (tteckster)
# License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE # License: MIT | https://github.com/community-scripts/ProxmoxVE/raw/main/LICENSE
# Source: https://www.home-assistant.io/ # Source: https://www.home-assistant.io/
@ -9,10 +9,10 @@ source <(curl -s https://raw.githubusercontent.com/community-scripts/ProxmoxVE/m
APP="Home Assistant-Core" APP="Home Assistant-Core"
var_tags="automation;smarthome" var_tags="automation;smarthome"
var_cpu="2" var_cpu="2"
var_ram="2048" var_ram="1024"
var_disk="10" var_disk="8"
var_os="ubuntu" var_os="ubuntu"
var_version="24.10" var_version="24.04"
var_unprivileged="1" var_unprivileged="1"
# App Output & Base Settings # App Output & Base Settings
@ -26,13 +26,6 @@ catch_errors
function update_script() { function update_script() {
header_info header_info
# OS Check
if ! lsb_release -d | grep -q "Ubuntu 24.10"; then
msg_error "Wrong OS detected. This script only supports Ubuntu 24.10."
msg_error "Read Guide: https://github.com/community-scripts/ProxmoxVE/discussions/1549"
exit 1
fi
check_container_storage check_container_storage
check_container_resources check_container_resources
if [[ ! -d /srv/homeassistant ]]; then if [[ ! -d /srv/homeassistant ]]; then
@ -58,13 +51,17 @@ function update_script() {
echo -e "${GN}Updating to Stable Version${CL}" echo -e "${GN}Updating to Stable Version${CL}"
BR="" BR=""
fi fi
if [[ "$PY" =~ ^python3\.(11|12)\.[0-9]+$ ]]; then
echo -e "⚠️ Home Assistant will soon require Python 3.13.x";
fi
msg_info "Stopping Home Assistant" msg_info "Stopping Home Assistant"
systemctl stop homeassistant systemctl stop homeassistant
msg_ok "Stopped Home Assistant" msg_ok "Stopped Home Assistant"
msg_info "Updating Home Assistant" msg_info "Updating Home Assistant"
source /srv/homeassistant/bin/activate source /srv/homeassistant/bin/activate
pip install ${BR}--upgrade homeassistant &>/dev/null uv pip install ${BR}--upgrade homeassistant &>/dev/null
msg_ok "Updated Home Assistant" msg_ok "Updated Home Assistant"
msg_info "Starting Home Assistant" msg_info "Starting Home Assistant"
@ -78,7 +75,7 @@ function update_script() {
if [ "$UPD" == "2" ]; then if [ "$UPD" == "2" ]; then
msg_info "Installing Home Assistant Community Store (HACS)" msg_info "Installing Home Assistant Community Store (HACS)"
apt update &>/dev/null apt update &>/dev/null
apt install -y unzip &>/dev/null apt install unzip &>/dev/null
cd .homeassistant cd .homeassistant
bash <(curl -fsSL https://get.hacs.xyz) &>/dev/null bash <(curl -fsSL https://get.hacs.xyz) &>/dev/null
msg_ok "Installed Home Assistant Community Store (HACS)" msg_ok "Installed Home Assistant Community Store (HACS)"
@ -105,19 +102,16 @@ function update_script() {
msg_ok "Installed FileBrowser" msg_ok "Installed FileBrowser"
msg_info "Creating Service" msg_info "Creating Service"
cat <<EOF > /etc/systemd/system/filebrowser.service service_path="/etc/systemd/system/filebrowser.service"
[Unit] echo "[Unit]
Description=Filebrowser Description=Filebrowser
After=network-online.target After=network-online.target
[Service] [Service]
User=root User=root
WorkingDirectory=/root/ WorkingDirectory=/root/
ExecStart=/usr/local/bin/filebrowser -r /root/.homeassistant ExecStart=/usr/local/bin/filebrowser -r /root/.homeassistant
[Install] [Install]
WantedBy=default.target WantedBy=default.target" >$service_path
EOF
systemctl enable --now -q filebrowser.service systemctl enable --now -q filebrowser.service
msg_ok "Created Service" msg_ok "Created Service"
@ -136,4 +130,4 @@ description
msg_ok "Completed Successfully!\n" msg_ok "Completed Successfully!\n"
echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}" echo -e "${CREATING}${GN}${APP} setup has been successfully initialized!${CL}"
echo -e "${INFO}${YW} Access it using the following URL:${CL}" echo -e "${INFO}${YW} Access it using the following URL:${CL}"
echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8123${CL}" echo -e "${TAB}${GATEWAY}${BGN}http://${IP}:8123${CL}"

View File

@ -44,36 +44,34 @@ $STD apt-get install -y \
libavfilter-dev \ libavfilter-dev \
libmariadb-dev-compat \ libmariadb-dev-compat \
libatlas-base-dev \ libatlas-base-dev \
software-properties-common \ software-properties-common
libmariadb-dev \
pkg-config
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Setup Python3/pip" msg_info "Setup Python3"
$STD add-apt-repository -y ppa:deadsnakes/ppa
$STD apt-get update $STD apt-get update
$STD rm -rf /usr/lib/python3.*/EXTERNALLY-MANAGED
$STD apt-get remove --purge -y python3.12 python3.12-dev python3.12-venv
$STD apt-get install -y \ $STD apt-get install -y \
python3.13 \ python3.13-* \
python3-pip \ python3-pip \
python3.13-dev \ python3.13-dev \
python3.13-venv python3.13-venv
ln -sf /usr/bin/python3.13 /usr/bin/python3
msg_ok "Setup Python3" msg_ok "Setup Python3"
msg_info "Installing UV"
$STD pip install uv
msg_ok "Installed UV"
msg_info "Setting up Home Assistant-Core environment" msg_info "Setting up Home Assistant-Core environment"
mkdir /srv/homeassistant mkdir /srv/homeassistant
cd /srv/homeassistant cd /srv/homeassistant
python3 -m venv . uv venv . &>/dev/null
source bin/activate source bin/activate
msg_ok "Created virtual environment" msg_ok "Created virtual environment with UV"
msg_info "Installing Home Assistant-Core" msg_info "Installing Home Assistant-Core and packages"
$STD python3 -m pip install webrtcvad wheel homeassistant mysqlclient psycopg2-binary isal $STD uv pip install webrtcvad wheel homeassistant mysqlclient psycopg2-binary isal
mkdir -p /root/.homeassistant mkdir -p /root/.homeassistant
msg_ok "Installed Home Assistant-Core" msg_ok "Installed Home Assistant-Core and required packages"
msg_info "Creating Service" msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/homeassistant.service cat <<EOF >/etc/systemd/system/homeassistant.service
@ -99,4 +97,4 @@ customize
msg_info "Cleaning up" msg_info "Cleaning up"
$STD apt-get -y autoremove $STD apt-get -y autoremove
$STD apt-get -y autoclean $STD apt-get -y autoclean
msg_ok "Cleaned" msg_ok "Cleaned"

View File

@ -4,7 +4,7 @@
"categories": [ "categories": [
2 2
], ],
"date_created": "2025-01-17", "date_created": "2024-04-29",
"type": "ct", "type": "ct",
"updateable": true, "updateable": true,
"privileged": false, "privileged": false,
@ -19,10 +19,10 @@
"script": "ct/homeassistant-core.sh", "script": "ct/homeassistant-core.sh",
"resources": { "resources": {
"cpu": 2, "cpu": 2,
"ram": 2048, "ram": 1024,
"hdd": 10, "hdd": 8,
"os": "ubuntu", "os": "ubuntu",
"version": "24.10" "version": "24.04"
} }
} }
], ],
@ -40,7 +40,7 @@
"type": "warning" "type": "warning"
}, },
{ {
"text": "Use Ubuntu 24.10 ONLY", "text": "Use Ubuntu 24.04 ONLY",
"type": "warning" "type": "warning"
}, },
{ {
@ -48,4 +48,4 @@
"type": "info" "type": "info"
} }
] ]
} }

View File

@ -370,7 +370,7 @@ msg_ok "Downloaded ${CL}${BL}${FILE}${CL}"
STORAGE_TYPE=$(pvesm status -storage $STORAGE | awk 'NR>1 {print $2}') STORAGE_TYPE=$(pvesm status -storage $STORAGE | awk 'NR>1 {print $2}')
case $STORAGE_TYPE in case $STORAGE_TYPE in
nfs | dir | cifs) nfs | dir)
DISK_EXT=".qcow2" DISK_EXT=".qcow2"
DISK_REF="$VMID/" DISK_REF="$VMID/"
DISK_IMPORT="-format qcow2" DISK_IMPORT="-format qcow2"