Compare commits

...

12 Commits

Author SHA1 Message Date
Duncan Hill
61cf1edffe
Merge 85eb661c08 into f8f166e26f 2025-01-18 23:40:39 +01:00
community-scripts-pr-app[bot]
f8f166e26f
Update CHANGELOG.md (#1577)
Some checks are pending
Auto Update .app-headers / update-app-headers (push) Waiting to run
Shellcheck / Shellcheck (push) Waiting to run
Create Changelog Pull Request / update-changelog-pull-request (push) Waiting to run
Frontend CI/CD / build (push) Waiting to run
Frontend CI/CD / deploy (push) Blocked by required conditions
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-18 21:12:13 +01:00
CanbiZ
b97d40bf5a
update 2025-01-18 21:11:26 +01:00
CanbiZ
0e443536cc
update 2025-01-18 21:07:19 +01:00
community-scripts-pr-app[bot]
0b73d9f689
[Github Action] Update CHANGELOG.md (#1573)
* Update CHANGELOG.md

* update

* update

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: CanbiZ <47820557+MickLesk@users.noreply.github.com>
2025-01-18 20:57:47 +01:00
Egon
5c11b67507
added cifs support in ubuntu2404-vm.sh (#1461)
added cifs to 
case $STORAGE_TYPE in
nfs | dir | cifs)

So VMs can be deployed on cifs shares
2025-01-18 20:54:43 +01:00
CanbiZ
2f20db8a42
breaking change: homeassistant upgrade os and python3 (#1550)
* breaking change: homeassistant upgrade os and python3

* update json to new date and new ressource values
2025-01-18 20:54:11 +01:00
community-scripts-pr-app[bot]
b04dc0261b
Update CHANGELOG.md (#1566)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2025-01-18 19:14:34 +01:00
Duncan Hill
85eb661c08
Remove $STD, add quiet/yes, add squelch via dev/null 2025-01-11 12:04:25 +00:00
Duncan Hill
d242578c35
Fix duplication in comment, rename to install_core_packages 2025-01-07 19:03:40 +00:00
Duncan Hill
67ddcd6ebb
Update to title case to match other info/ok strings 2025-01-07 18:52:32 +00:00
Duncan Hill
1789b71734
Make core dependencies a function, update sample installers to use it 2025-01-07 18:31:14 +00:00
16 changed files with 74 additions and 87 deletions

View File

@ -2,6 +2,7 @@
# 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,10 +23,14 @@ 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 tteck # Copyright (c) 2021-2025 community-scripts ORG
# Author: tteck (tteckster) # Author: tteck (tteckster) | Co-Author: MickLesk (CanbiZ)
# 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="1024" var_ram="2048"
var_disk="8" var_disk="10"
var_os="ubuntu" var_os="ubuntu"
var_version="24.04" var_version="24.10"
var_unprivileged="1" var_unprivileged="1"
# App Output & Base Settings # App Output & Base Settings
@ -26,6 +26,13 @@ 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
@ -51,17 +58,13 @@ 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
uv pip install ${BR}--upgrade homeassistant &>/dev/null 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"
@ -75,7 +78,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 unzip &>/dev/null apt install -y 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)"
@ -102,16 +105,19 @@ function update_script() {
msg_ok "Installed FileBrowser" msg_ok "Installed FileBrowser"
msg_info "Creating Service" msg_info "Creating Service"
service_path="/etc/systemd/system/filebrowser.service" cat <<EOF > /etc/systemd/system/filebrowser.service
echo "[Unit] [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" >$service_path WantedBy=default.target
EOF
systemctl enable --now -q filebrowser.service systemctl enable --now -q filebrowser.service
msg_ok "Created Service" msg_ok "Created Service"

View File

@ -12,14 +12,10 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
install_core_packages
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apk add newt
$STD apk add curl
$STD apk add openssh
$STD apk add tzdata $STD apk add tzdata
$STD apk add nano
$STD apk add mc
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"
msg_info "Installing Docker" msg_info "Installing Docker"

View File

@ -12,14 +12,7 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
install_core_packages
msg_info "Installing Dependencies"
$STD apk add newt
$STD apk add curl
$STD apk add openssh
$STD apk add nano
$STD apk add mc
msg_ok "Installed Dependencies"
msg_info "Installing Grafana" msg_info "Installing Grafana"
$STD apk add grafana $STD apk add grafana

View File

@ -12,14 +12,7 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
install_core_packages
msg_info "Installing Dependencies"
$STD apk add newt
$STD apk add curl
$STD apk add openssh
$STD apk add nano
$STD apk add mc
msg_ok "Installed Dependencies"
motd_ssh motd_ssh
customize customize

View File

@ -12,14 +12,10 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
install_core_packages
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apk add newt
$STD apk add curl
$STD apk add openssl $STD apk add openssl
$STD apk add openssh
$STD apk add nano
$STD apk add mc
$STD apk add nginx $STD apk add nginx
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"

View File

@ -12,14 +12,10 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
install_core_packages
msg_info "Installing Dependencies" msg_info "Installing Dependencies"
$STD apk add newt
$STD apk add curl
$STD apk add openssl $STD apk add openssl
$STD apk add openssh
$STD apk add nano
$STD apk add mc
$STD apk add argon2 $STD apk add argon2
msg_ok "Installed Dependencies" msg_ok "Installed Dependencies"

View File

@ -12,14 +12,7 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
install_core_packages
msg_info "Installing Dependencies"
$STD apk add newt
$STD apk add curl
$STD apk add openssh
$STD apk add nano
$STD apk add mc
msg_ok "Installed Dependencies"
msg_info "Installing Alpine-Zigbee2MQTT" msg_info "Installing Alpine-Zigbee2MQTT"
$STD apk add zigbee2mqtt $STD apk add zigbee2mqtt

View File

@ -12,12 +12,7 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
install_core_packages
msg_info "Installing Dependencies"
$STD apt-get install -y curl
$STD apt-get install -y sudo
$STD apt-get install -y mc
msg_ok "Installed Dependencies"
motd_ssh motd_ssh
customize customize

View File

@ -44,34 +44,36 @@ $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" msg_info "Setup Python3/pip"
$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
msg_ok "Setup Python3"
msg_info "Installing UV" ln -sf /usr/bin/python3.13 /usr/bin/python3
$STD pip install uv msg_ok "Setup Python3"
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
uv venv . &>/dev/null python3 -m venv .
source bin/activate source bin/activate
msg_ok "Created virtual environment with UV" msg_ok "Created virtual environment"
msg_info "Installing Home Assistant-Core and packages" msg_info "Installing Home Assistant-Core"
$STD uv pip install webrtcvad wheel homeassistant mysqlclient psycopg2-binary isal $STD python3 -m pip install webrtcvad wheel homeassistant mysqlclient psycopg2-binary isal
mkdir -p /root/.homeassistant mkdir -p /root/.homeassistant
msg_ok "Installed Home Assistant-Core and required packages" msg_ok "Installed Home Assistant-Core"
msg_info "Creating Service" msg_info "Creating Service"
cat <<EOF >/etc/systemd/system/homeassistant.service cat <<EOF >/etc/systemd/system/homeassistant.service

View File

@ -12,12 +12,7 @@ catch_errors
setting_up_container setting_up_container
network_check network_check
update_os update_os
install_core_packages
msg_info "Installing Dependencies"
$STD apt-get install -y curl
$STD apt-get install -y sudo
$STD apt-get install -y mc
msg_ok "Installed Dependencies"
motd_ssh motd_ssh
customize customize

View File

@ -4,7 +4,7 @@
"categories": [ "categories": [
2 2
], ],
"date_created": "2024-04-29", "date_created": "2025-01-17",
"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": 1024, "ram": 2048,
"hdd": 8, "hdd": 10,
"os": "ubuntu", "os": "ubuntu",
"version": "24.04" "version": "24.10"
} }
} }
], ],
@ -40,7 +40,7 @@
"type": "warning" "type": "warning"
}, },
{ {
"text": "Use Ubuntu 24.04 ONLY", "text": "Use Ubuntu 24.10 ONLY",
"type": "warning" "type": "warning"
}, },
{ {

View File

@ -133,6 +133,14 @@ update_os() {
msg_ok "Updated Container OS" msg_ok "Updated Container OS"
} }
# Install core packages that (almost) every container will depend upon.
# Be sure to update install.func for apt-based systems as appropriate.
install_core_packages() {
msg_info "Installing Core Packages"
apk add -q curl mc nano newt openssh sudo &>/dev/null
msg_ok "Installed Core Packages"
}
# This function modifies the message of the day (motd) and SSH settings # This function modifies the message of the day (motd) and SSH settings
motd_ssh() { motd_ssh() {
# Set terminal to 256-color mode # Set terminal to 256-color mode

View File

@ -197,6 +197,15 @@ EOF
msg_ok "Updated Container OS" msg_ok "Updated Container OS"
} }
# Install core packages that (almost) every container will depend upon.
# Be sure to update alpine-install.func to match for apk-based systems when
# adding a new package.
install_core_packages() {
msg_info "Installing Core Packages"
apt-get install -y curl mc sudo &> /dev/null
msg_ok "Installed Core Packages"
}
# This function modifies the message of the day (motd) and SSH settings # This function modifies the message of the day (motd) and SSH settings
motd_ssh() { motd_ssh() {
# Set terminal to 256-color mode # Set terminal to 256-color mode

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) nfs | dir | cifs)
DISK_EXT=".qcow2" DISK_EXT=".qcow2"
DISK_REF="$VMID/" DISK_REF="$VMID/"
DISK_IMPORT="-format qcow2" DISK_IMPORT="-format qcow2"