• 3.3.0 4c5dcd779d

    phil released this 2026-11-11 00:12:45 +00:00 | 0 commits to main since this release

    Add SHA-256 verification of copied backups (v3.3.0)

    After copying a backup from Home Assistant, compare its SHA-256 (via
    sha256sum on the server) with a hash of the local file. On mismatch,
    delete the local copy and send an error notification; the remote backup
    is left in place so the run can be retried. If either checksum cannot
    be computed, the run fails rather than reporting an unverified copy as
    successful.

    • Add VERIFY_CHECKSUM config option (default true; "false" skips the check)
    • Make boolean config values case-insensitive (VERIFY_CHECKSUM, NTFY_ENABLED,
      DISCORD_ENABLED), so "True" now enables them. Previously only lowercase
      "true" did, so NTFY_ENABLED="True" silently left ntfy off
    • Bump version to 3.3.0

    What's Changed

    Full Changelog: 3.2.1...3.3.0

    Downloads
  • phil released this 2026-11-06 23:20:25 +00:00 | 2 commits to main since this release

    This project used to contain three versions of this project. V1 and V2 have both been moved to their own repositorys and archived as they will no longer be developed and previous releases will be kept but marked as "Pre-Release"

    Version 1: See https://git.ncltech.co.uk/phil/Home-Assistant-Backup-Script-V1

    Version 2: See https://git.ncltech.co.uk/phil/Home-Assistant-Backup-Script-V2

    3.2.1-cleaned is the V3 dir moved into the root dir, there was no code change in this release just tidying on the repo

    What's Changed

    Full Changelog: 3.2.1...3.2.1-cleaned

    Downloads
  • 3.2.1 1af0a20429

    3.2.1 Stable

    phil released this 2026-11-06 22:54:24 +00:00 | 4 commits to main since this release

    3.2.1

    Fixed

    • Backup failures caused by low disk space on the Home Assistant host are now
      reported as such, e.g. "not enough disk space on Home Assistant server
      (1.2 GB free, threshold 2.0 GB)", instead of only "failed to extract backup slug".
    • A failed ha backup new now includes Home Assistant's own error message in
      the notification and log.

    Changed

    • Free space is re-checked after the remote cleanup runs. If it is still below
      STORAGE_THRESHOLD_KB, a warning is sent to ntfy/Discord before the backup
      is attempted.
    • The remote cleanup now logs how many backups it found, and says when none are
      older than REMOTE_BACKUP_CLEANUP days.
    Downloads
  • 3.2.0 0444e0d45c

    3.2.0 Stable

    phil released this 2026-11-06 22:42:40 +00:00 | 5 commits to main since this release

    3.2.0

    Added

    • File logging to /var/log/ha-backup.log. Each line has a full date and time,
      and the file is appended to on every run.
    • New LOG_FILE setting in home_assistant_backup.conf. Set it to a custom
      path, or to "none" to disable file logging.
    • ssh/scp error output is also written to the log file.
    • Deletions of old local backups are now logged.

    Changed

    • All console messages now go through the same logger, so remote cleanup,
      notification failures and config validation errors appear in the log too.
    • If the log file can't be opened (for example, no write permission to
      /var/log), a warning is printed and the backup continues without file logging.
    • The terminal progress bar stays on the console only and is not written to the log.
    Downloads
  • 3.1.1 5c05a27ae2

    3.1.1 Stable

    phil released this 2026-11-05 17:33:50 +00:00 | 7 commits to main since this release

    Port Home Assistant backup script to Go (v3.1.1)

    Rewrite home_assistant_backup.sh as a single Go binary that reads the
    existing home_assistant_backup.conf unchanged.

    • Create a backup over SSH, scp it locally, and prune old backups both
      on the HA host (when free space is low) and locally
    • Send ntfy and Discord notifications at the same points as the script
    • Drop the jq and yq dependencies: parse ha backups --raw-json and
      ha backup new --raw-json in Go, falling back to slug: line parsing
    • Add timestamped progress output, a heartbeat while HA builds the
      backup, and live size/percent/speed reporting during the copy
    • Build the Discord payload with json.Marshal and validate backup slugs
      before using them in remote commands
    • Abort with a notification if the remote disk-space check fails
    • Add -config and -version flags
    • Build with CGO_ENABLED=0 for a static binary that runs on older glibc
    Downloads
  • 3.1.0 70e1b1cc6e

    3.1.0 - Goooooooooo Pre-Release

    phil released this 2026-11-05 16:31:51 +00:00 | 8 commits to main since this release

    Go port of home_assistant_backup.sh. Uses the same home_assistant_backup.conf

    Downloads
  • 2.1.1 4ca301bb8a

    phil released this 2026-11-06 23:17:42 +00:00 | 11 commits to main since this release

    This version has been archived and moved into: https://git.ncltech.co.uk/phil/Home-Assistant-Backup-Script-V2

    In the updated version of the script (V2.1.1), we've added a critical feature that checks the available storage on the Home Assistant server. If the available storage falls below 2GB, the script will automatically remove a defined number of days' worth of old backups, ensuring that the system doesn't run out of space. This storage threshold is configurable, and you can adjust the number of days' worth of backups to be retained according to your needs. This feature is designed to help manage storage effectively—because, as we all know, storage isn't infinite! :D

    Downloads
  • 2.0.1 e6b7068fe5

    2.0.1 Pre-Release

    phil released this 2024-11-27 21:40:57 +00:00 | 15 commits to main since this release

    This version has been archived and moved into: https://git.ncltech.co.uk/phil/Home-Assistant-Backup-Script-V2

    Version 2 - Bigger and Better

    A script that when ran, creates a backup of Home Assistant using the "ha backup new" command over SSH, then pulls the .tar file from the HA system on to the system that the script is running on.

    Version 2 now has the following additions:
    Ability to send notifications to Discord webhook.
    Ability to disable NTFY and Discord notifications if not needed.
    BACKUP_FILE_LOCATION variable to change the location when the backup files are located on the Home Assistant server.
    Notifys how big the backup file is and how long the backup took

    Downloads
  • V1.0.1 8b645e5edc

    1.0.1 Pre-Release

    phil released this 2024-08-25 15:39:30 +00:00 | 17 commits to main since this release

    This version has been archived and moved into: https://git.ncltech.co.uk/phil/Home-Assistant-Backup-Script-V1
    First release of the script

    Downloads