mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-10-12 03:01:35 +02:00
* Add one-shot app_config linter migration workflow * Add app_config linter compatibility action * Add add-on map compatibility normalizer * Test add-on map compatibility normalizer * Run app_config compatibility preparation on pull request * Validate app_config short and long map forms separately * Export validated workflow updates * Use app_config-compatible linter for PR checks * Use app_config-compatible linter for builds * Remove temporary linter preparation workflow * Add one-shot app_config manifest migration * Migrate legacy addon_config maps to app_config * Preserve upstream legacy aliases without deprecated literals * Test legacy alias compatibility without deprecated literals * Validate completed app_config migration * Count only add-on manifests during migration validation * Remove temporary migration validation workflow * Document legacy alias construction * Remove obsolete local linter compatibility script * Remove obsolete local linter compatibility tests * fix(pr-2937-review): address reviewer findings on app_config migration - Remove the orphaned .github/actions/addon-linter composite action: it references .github/scripts/prepare_addon_lint_config.py, which was never added (the normalization approach was superseded by pinning frenck/action-addon-linter directly in #2936). Confirmed unused - no workflow invokes it. - cleanuparr: HA_DATA_DIR pointed at /app_configs/cleanuparr, a path not mounted inside the container. cleanuparr's map is app_config:rw, which Supervisor mounts at /config, so data was living on the ephemeral container filesystem. Point it at /config instead (pre-existing bug, not introduced by this PR - just carried the wrong path forward). - joplin/README.md: joplin's config.yaml still declares config:rw, not app_config (it was never part of the 86-manifest migration). Revert the doc text that incorrectly started calling it the app_config mapping. - qbittorrent/00-folders.sh: fix a pre-existing copy/paste bug in the migration marker/log for the main-folder migration block - it referenced "openvpn" and a "qBitorrent" typo instead of qBittorrent. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
59 lines
3.0 KiB
Markdown
59 lines
3.0 KiB
Markdown
# Home assistant add-on: BirdNET-PiPy
|
|
|
|
BirdNET-PiPy is a self-hosted system that uses the BirdNET deep-learning model to identify birds from their sounds, with a modern web dashboard for monitoring detections. This add-on packages the upstream project for Home Assistant with ingress support.
|
|
|
|
## About
|
|
|
|
- Upstream project: https://github.com/Suncuss/BirdNET-PiPy
|
|
- This add-on runs the BirdNET-PiPy backend services, Icecast audio stream, and Vue.js frontend in a single container.
|
|
|
|
## Installation
|
|
|
|
1. Add my add-ons repository to your home assistant instance (in supervisor addons store at top right, or click button below if you have configured my HA)
|
|
[](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Falexbelgium%2Fhassio-addons)
|
|
1. Install this add-on.
|
|
1. Start the add-on.
|
|
1. Check the logs of the add-on to see if everything went well.
|
|
|
|
## Configuration
|
|
|
|
Install, then start the add-on a first time. Open the Web UI from Home Assistant (Ingress) or directly at `http://<host>:8011` (or the port you configure).
|
|
Configure location, audio source, and other settings in the BirdNET-PiPy UI after the container starts.
|
|
|
|
Options can be configured through three ways:
|
|
|
|
- Add-on options
|
|
|
|
```yaml
|
|
ICECAST_PASSWORD: "" # Optional: persistent password for the Icecast audio stream
|
|
data_location: /config/data # Persistent data location (under /config, /share, or /data)
|
|
env_vars: # Optional: extra environment variables
|
|
- name: STREAM_BITRATE
|
|
value: 320k # Icecast mp3 stream bitrate (default 320k)
|
|
```
|
|
|
|
- Config.yaml
|
|
Additional variables can be configured using the config.yaml file found in `/config/birdnet-pipy/config.yaml` using the Filebrowser add-on.
|
|
|
|
- Config_env.yaml
|
|
Additional environment variables can be configured there.
|
|
|
|
### Mounting Drives
|
|
|
|
This add-on supports mounting both local drives and remote SMB shares:
|
|
|
|
- **Local drives**: See [Mounting Local Drives in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Mounting-Local-Drives-in-Addons)
|
|
- **Remote shares**: See [Mounting Remote Shares in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Mounting-remote-shares-in-Addons)
|
|
|
|
### Custom Scripts and Environment Variables
|
|
|
|
This add-on supports custom scripts and environment variables through the `app_config` mapping:
|
|
|
|
- **Custom scripts**: See [Running Custom Scripts in Addons](https://github.com/alexbelgium/hassio-addons/wiki/Running-custom-scripts-in-Addons)
|
|
- **env_vars option**: Use the add-on `env_vars` option to pass extra environment variables (uppercase or lowercase names). See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details.
|
|
|
|
## Notes
|
|
|
|
- Audio input uses Home Assistant's PulseAudio server by default.
|
|
- Ingress is enabled; direct access is available on the configured port.
|