56 Commits

Author SHA1 Message Date
github-actions
92d7c82ab4 GitHub bot: changelog 2025-12-27 09:21:23 +00:00
Alexandre
062fa1790f Bump version to 0.1.0-3 2025-12-27 10:17:53 +01:00
Alexandre
dd52847d1b Merge pull request #2304 from alexbelgium/codex/create-and-populate-.env-file
Initialize generated /.env in env export templates
2025-12-27 10:17:23 +01:00
Alexandre
ea25783a73 Initialize .env in env export templates 2025-12-27 10:16:44 +01:00
github-actions
54ec5df87d GitHub bot: changelog 2025-12-27 08:48:55 +00:00
Alexandre
a8f6a8a5f3 Update config.yaml 2025-12-27 09:45:12 +01:00
Alexandre
05c4f09e5f Update 99-run.sh 2025-12-27 09:44:57 +01:00
Alexandre
7f10535477 Export environment variables to entrypoint scripts
Add export command for environment variables to entrypoint scripts
2025-12-27 09:44:09 +01:00
Alexandre
8945d624f5 Update 00-global_var.sh 2025-12-27 09:42:11 +01:00
Alexandre
5b44e1c234 Update 99-run.sh to export variables to entrypoint.sh
Added export commands to entrypoint.sh for required and optional variables.
2025-12-27 09:40:17 +01:00
GitHub Actions
73264f37c8 Revert 'Update config.yaml' [nobuild] 2025-12-27 08:37:17 +00:00
Alexandre
e9264f8c06 Refactor config.yaml by cleaning up device entries
Removed unnecessary device mappings and updated MEALIE_URL.
2025-12-27 09:29:37 +01:00
GitHub Actions
e13186982d Revert 'Update config.yaml to modify device mappings and settings' [nobuild] 2025-12-27 08:29:06 +00:00
Alexandre
2f7c7a9caa Update Dockerfile 2025-12-27 09:28:45 +01:00
Alexandre
d080826869 Update config.yaml to modify device mappings and settings 2025-12-27 09:25:22 +01:00
Alexandre
2d5ee9e394 Merge pull request #2303 from alexbelgium/codex/create-addon-based-on-existing-templates
Remove Social to Mealie binary assets
2025-12-27 09:22:49 +01:00
Alexandre
843da44ac7 new addon 2025-12-27 09:22:26 +01:00
github-actions
f129d5e6cc GitHub bot: changelog 2025-12-27 08:21:01 +00:00
Alexandre
0ff3975de3 Remove social_to_mealie binary assets 2025-12-27 09:20:19 +01:00
Alexandre
eec82176b0 Add disk space cleanup and reduce retry wait time
Updated the workflow to include disk space cleanup and adjusted retry wait time.
2025-12-27 09:20:03 +01:00
Alexandre
4494a9e984 Update config.yaml 2025-12-27 09:16:10 +01:00
Alexandre
b2f13a9650 Update onpush_builder.yaml 2025-12-27 09:14:10 +01:00
GitHub Actions
8d429be0f9 Revert 'Update config.yaml' [nobuild] 2025-12-27 08:02:16 +00:00
Alexandre
33244b571f Update config.yaml 2025-12-27 08:58:39 +01:00
Alexandre
831ae97abb Update Dockerfile to install Rust and wasm-pack
Set up Rust environment and install wasm-pack.
2025-12-27 08:58:27 +01:00
Alexandre
ceb7eb2176 Update config.yaml 2025-12-27 08:57:42 +01:00
Alexandre
861a447de2 Enhance retry logic with cleanup commands
Added cleanup steps before retrying the build process.
2025-12-27 08:56:22 +01:00
Alexandre
18c93fc88f Update config.yaml 2025-12-27 08:52:14 +01:00
Alexandre
14d42dcf0f Add no-cache option to build args in workflow 2025-12-27 08:51:58 +01:00
Alexandre
1c00b0105b Update updater.json 2025-12-27 08:50:15 +01:00
Alexandre
f55b6a1235 Update Dockerfile 2025-12-27 08:49:51 +01:00
GitHub Actions
a02359cbe9 Revert 'Updater bot : immich_cuda updated to 2.4.1' [nobuild] 2025-12-27 07:39:29 +00:00
GitHub Actions
be717f1b13 Revert 'Updater bot : seafile updated to 12.0.14' [nobuild] 2025-12-27 07:38:39 +00:00
GitHub Actions
780b390166 Revert 'Updater bot : omada_v3 updated to 5.3-amd64-2025-11-09' [nobuild] 2025-12-27 07:36:45 +00:00
GitHub Actions
aecc0847e4 Revert 'Updater bot : ente updated to 4.4.15' [nobuild] 2025-12-27 07:36:43 +00:00
alexbelgium
846c9e6619 Updater bot : seafile updated to 12.0.14 2025-12-27 08:32:01 +01:00
alexbelgium
6b906a0407 Updater bot : organizr updated to 1.601 2025-12-27 08:31:19 +01:00
alexbelgium
a1f85eb1e5 Updater bot : omada_v3 updated to 5.3-amd64-2025-11-09 2025-12-27 08:31:08 +01:00
alexbelgium
6e6c90b039 Updater bot : monica updated to 5.0.0b5 2025-12-27 08:30:50 +01:00
alexbelgium
91e5dd9f5f Updater bot : jackett updated to 0.24.569 2025-12-27 08:30:21 +01:00
alexbelgium
5a406035dc Updater bot : immich_cuda updated to 2.4.1 2025-12-27 08:30:06 +01:00
alexbelgium
de67d8e1aa Updater bot : ente updated to 4.4.15 2025-12-27 08:29:32 +01:00
Alexandre
71d986150e Update updater.json 2025-12-27 08:27:32 +01:00
Alexandre
6b7c64cf38 Update updater.json 2025-12-27 08:26:39 +01:00
Alexandre
c526cacd60 Add Rust and Cargo to Dockerfile dependencies 2025-12-27 08:25:01 +01:00
Alexandre
ae06f7809c Update updater.json 2025-12-27 08:23:56 +01:00
Alexandre
297f973a15 Implement retry logic for add-on build process
Added a retry mechanism for building the add-on in case of failure, with a wait time of 3 minutes before the second attempt.
2025-12-27 08:22:21 +01:00
Alexandre
cad5bbbc2c Check for init-adduser run file before sed commands
Add conditional check before modifying init-adduser run script.
2025-12-27 08:19:40 +01:00
Alexandre
d686f2671d Fix environment variable name for packages in Dockerfile 2025-12-27 08:13:05 +01:00
github-actions
ed601536c9 GitHub bot: changelog 2025-12-27 07:10:02 +00:00
Alexandre
cbbfd847e5 Update config.yaml 2025-12-27 08:09:02 +01:00
Alexandre
def0666c98 Add github_beta field to updater.json 2025-12-27 08:03:39 +01:00
Alexandre
1f5c0b54ea Add ingress_entry 2025-12-27 08:00:29 +01:00
Alexandre
3f91cd3811 nobuild 2025-12-27 07:53:43 +01:00
Alexandre
5e0934aa20 nobuild 2025-12-27 07:53:06 +01:00
Alexandre
b8aa2292f5 Update sub_filter directives in ingress.conf 2025-12-27 07:52:37 +01:00
34 changed files with 430 additions and 32 deletions

View File

@@ -170,9 +170,20 @@ jobs:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build ${{ matrix.addon }} add-on
id: builderstep
- name: Free disk space (runner)
uses: endersonmenezes/free-disk-space@v3
with:
remove_android: true
remove_dotnet: true
remove_haskell: true
remove_tool_cache: true
remove_swap: true
rm_cmd: "rmz"
rmz_version: "3.1.1"
- name: Build ${{ matrix.addon }} add-on (attempt 1)
id: builderstep1
if: steps.check.outputs.build_arch == 'true' && steps.dockerfile_check.outputs.has_dockerfile == 'true'
continue-on-error: true
uses: home-assistant/builder@2025.11.0
env:
CAS_API_KEY: ${{ secrets.CAS_API_KEY }}
@@ -185,6 +196,26 @@ jobs:
--docker-hub "ghcr.io/${{ github.repository_owner }}" \
--addon
- name: Wait 1 minute before retry
if: steps.check.outputs.build_arch == 'true' && steps.dockerfile_check.outputs.has_dockerfile == 'true' && steps.builderstep1.outcome == 'failure'
run: |
sleep 60
- name: Build ${{ matrix.addon }} add-on (attempt 2)
if: steps.check.outputs.build_arch == 'true' && steps.dockerfile_check.outputs.has_dockerfile == 'true' && steps.builderstep1.outcome == 'failure'
uses: home-assistant/builder@2025.11.0
env:
CAS_API_KEY: ${{ secrets.CAS_API_KEY }}
with:
args: |
${{ env.BUILD_ARGS }} \
--no-cache \
--${{ matrix.arch }} \
--target "/data/${{ matrix.addon }}" \
--image "${{ steps.check.outputs.image }}" \
--docker-hub "ghcr.io/${{ github.repository_owner }}" \
--addon
# 5. Update changelog if needed (for each changed add-on)
make-changelog:
if: ${{ needs.detect-changed-addons.outputs.changedAddons != '' && needs.detect-changed-addons.outputs.changedAddons != '[]' }}

View File

@@ -14,6 +14,11 @@ bashio::log.notice "Additional informations : https://github.com/alexbelgium/has
echo ""
JSONSOURCE="/data/options.json"
ENV_FILE="/.env"
if [[ ! -f "$ENV_FILE" ]]; then
printf '# Generated by 00-global_var.sh from %s\n' "$JSONSOURCE" > "$ENV_FILE"
fi
# Define secrets location (optional)
SECRETSOURCE=""
@@ -189,7 +194,7 @@ update_scripts_with_block() {
shopt -s nullglob
# Added /etc/s6-overlay/s6-rc.d/*/run for newer S6 implementation (optional)
for f in /etc/services.d/*/run /etc/services.d/*/*run* /etc/cont-init.d/*.sh /etc/s6-overlay/s6-rc.d/*/run; do
for f in /etc/services.d/*/run /etc/services.d/*/*run* /etc/cont-init.d/*.sh /etc/s6-overlay/s6-rc.d/*/run /*/entrypoint.sh /entrypoint.sh; do
[[ -f "$f" ]] || continue
[[ -n "${seen[$f]:-}" ]] && continue
seen["$f"]=1
@@ -233,7 +238,7 @@ export_option() {
printf '%s' "${value}" > "/var/run/s6/container_environment/${key}"
fi
echo "${key}=$(dotenv_quote "$value")" >> "/.env" 2>/dev/null || true
echo "${key}=$(dotenv_quote "$value")" >> "$ENV_FILE" 2>/dev/null || true
mkdir -p /etc
echo "${key}=$(dotenv_quote "$value")" >> /etc/environment 2>/dev/null || true

View File

@@ -74,6 +74,11 @@ if [[ "$CONFIGSOURCE" != *".yaml" ]]; then
exit 1
fi
ENV_FILE="/.env"
if [[ ! -f "$ENV_FILE" ]]; then
printf '# Generated by 01-config_yaml.sh from %s\n' "$CONFIGSOURCE" > "$ENV_FILE"
fi
# Permissions only if the config file already exists
if [[ "$CONFIGSOURCE" == *".yaml" ]] && [ -f "$CONFIGSOURCE" ]; then
echo "Setting permissions for the config.yaml directory"
@@ -174,10 +179,13 @@ while IFS= read -r line; do
python3 /env.py
fi
# set .env
echo "$line" >> /.env
echo "$line" >> "$ENV_FILE"
# set environment
mkdir -p /etc
echo "$line" >> /etc/environment
# Export to entrypoint
if [ -f /entrypoint.sh ]; then sed -i "1a export $line" /entrypoint.sh 2> /dev/null; fi
if [ -f /*/entrypoint.sh ]; then sed -i "1a export $line" /*/entrypoint.sh 2> /dev/null; fi
# Export to scripts
if cat /etc/services.d/*/*run* &> /dev/null; then sed -i "1a export $line" /etc/services.d/*/*run* 2> /dev/null; fi
if cat /etc/cont-init.d/*run* &> /dev/null; then sed -i "1a export $line" /etc/cont-init.d/*run* 2> /dev/null; fi

View File

@@ -57,8 +57,10 @@ for file in $(grep -srl "/usr/bin" /etc/cont-init.d /etc/s6-overlay/s6-rc.d); do
done
# Allow running abc as user 1
sed -i '/usermod/ s/$/ 2>\/dev\/null || true/' /etc/s6-overlay/s6-rc.d/init-adduser/run
sed -i '/groupmod/ s/$/ 2>\/dev\/null || true/' /etc/s6-overlay/s6-rc.d/init-adduser/run
if [ -f /etc/s6-overlay/s6-rc.d/init-adduser/run ]; then
sed -i '/usermod/ s/$/ 2>\/dev\/null || true/' /etc/s6-overlay/s6-rc.d/init-adduser/run
sed -i '/groupmod/ s/$/ 2>\/dev\/null || true/' /etc/s6-overlay/s6-rc.d/init-adduser/run
fi
# Replace lsiown if not found
if [ ! -f /usr/bin/lsiown ]; then

View File

@@ -1,3 +1,5 @@
## nightly-20251223-2 (27-12-2025)
- Minor bugs fixed
## nightly-20251224 (24-12-2025)
- Minor bugs fixed

View File

@@ -75,6 +75,7 @@ environment:
BIRDNET_UID: "0"
image: ghcr.io/alexbelgium/birdnet-go-{arch}
ingress: true
ingress_entry: ui
ingress_stream: true
init: false
map:
@@ -117,4 +118,4 @@ slug: birdnet-go
udev: true
url: https://github.com/alexbelgium/hassio-addons/tree/master/birdnet-go
usb: true
version: nightly-20251214
version: nightly-20251223-2

View File

@@ -45,15 +45,15 @@ server {
sub_filter action=\"/ action=\"%%ingress_entry%%/;
sub_filter EventSource('/ EventSource('%%ingress_entry%%/;
sub_filter fetch('/ fetch('%%ingress_entry%%/;
sub_filter `/api/v2 `%%ingress_entry%%/api/v2;
sub_filter "'/api/v2" "'%%ingress_entry%%/api/v2";
sub_filter \"/api/v2 \"%%ingress_entry%%/api/v2;
sub_filter `/ui `%%ingress_entry%%/ui;
sub_filter "'/ui" "'%%ingress_entry%%/ui";
sub_filter \"/ui \"%%ingress_entry%%/ui;
sub_filter `/assets `%%ingress_entry%%/assets;
sub_filter "'/assets" "'%%ingress_entry%%/assets";
sub_filter \"/assets \"%%ingress_entry%%/assets;
sub_filter `/api/v `%%ingress_entry%%/api/v;
sub_filter "'/api/v" "'%%ingress_entry%%/api/v";
sub_filter \"/api/v \"%%ingress_entry%%/api/v;
sub_filter `/u `%%ingress_entry%%/u;
sub_filter "'/u" "'%%ingress_entry%%/u";
sub_filter \"/u \"%%ingress_entry%%/u;
sub_filter `/asset `%%ingress_entry%%/asset;
sub_filter "'/asset" "'%%ingress_entry%%/asset";
sub_filter \"/asset \"%%ingress_entry%%/asset;
# Fix streaming
sub_filter window.location.origin} window.location.origin}%%ingress_entry%%;

View File

@@ -3,7 +3,7 @@
"last_update": "09-03-2024",
"repository": "alexbelgium/hassio-addons",
"slug": "comixed",
"source": "Dockerhub",
"source": "dockerhub",
"upstream_repo": "comixed/comixed",
"upstream_version": ""
}

View File

@@ -13,7 +13,15 @@ FROM node:22-alpine AS web-builder
ARG ENTE_WEB_TAG=main
# ---- tools we need to build (git, yarn)
RUN apk add --no-cache git
ENV RUSTUP_HOME=/usr/local/rustup \
CARGO_HOME=/usr/local/cargo \
PATH=/usr/local/cargo/bin:$PATH
RUN apk add --no-cache \
git curl ca-certificates build-base \
&& curl -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable \
&& rustup target add wasm32-unknown-unknown \
&& npm install -g wasm-pack@0.13.1
# ---- pull the web source
WORKDIR /src

View File

@@ -2,6 +2,7 @@
"dockerhub_by_date": "true",
"github_fulltag": "true",
"last_update": "20-09-2025",
"paused": true,
"repository": "alexbelgium/hassio-addons",
"slug": "fireflyiii_data_importer",
"source": "dockerhub",

View File

@@ -1,4 +1,5 @@
{
"github_beta": false,
"last_update": "29-11-2025",
"repository": "alexbelgium/hassio-addons",
"slug": "grav",

View File

@@ -1,3 +1,5 @@
## 2.4.1 (27-12-2025)
- Minor bugs fixed
## 2.3.1 (22-11-2025)
- Update to latest version from imagegenius/docker-immich (changelog : https://github.com/imagegenius/docker-immich/releases)

View File

@@ -3,8 +3,7 @@ arch:
backup_exclude:
- "**/machine-learning/*"
description:
Self-hosted photo and video backup solution directly from your mobile
phone
Self-hosted photo and video backup solution directly from your mobile phone
devices:
- /dev/dri
- /dev/dxg
@@ -140,6 +139,6 @@ slug: immich_cuda
udev: true
url: https://github.com/alexbelgium/hassio-addons
usb: true
version: "2.3.1"
version: 2.4.1
video: true
webui: http://[HOST]:[PORT:8080]

View File

@@ -1,4 +1,7 @@
## 0.24.569 (27-12-2025)
- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases)
## 0.24.545 (27-12-2025)
- Update to latest version from linuxserver/docker-jackett (changelog : https://github.com/linuxserver/docker-jackett/releases)

View File

@@ -106,5 +106,5 @@ schema:
slug: jackett_nas
udev: true
url: https://github.com/alexbelgium/hassio-addons/tree/master/jackett
version: "0.24.545"
version: "0.24.569"
webui: http://[HOST]:[PORT:9117]

View File

@@ -4,5 +4,5 @@
"slug": "jackett",
"source": "github",
"upstream_repo": "linuxserver/docker-jackett",
"upstream_version": "0.24.545"
"upstream_version": "0.24.569"
}

View File

@@ -1,3 +1,6 @@
## 5.0.0b5 (27-12-2025)
- Update to latest version from monicahq/monica (changelog : https://github.com/monicahq/monica/releases)
## v5.0_beta5-8 (07-12-2025)
- Generate and persist a secure Meilisearch master key when none is provided or when configured keys are too short.

View File

@@ -108,5 +108,5 @@ services:
- mysql:want
slug: monica
url: https://github.com/alexbelgium/hassio-addons/tree/master/monica
version: v5.0_beta5-8
version: "5.0.0b5"
webui: "[PROTO:ssl]://[HOST]:[PORT:80]"

View File

@@ -1,9 +1,10 @@
{
"github_beta": true,
"github_tagfilter": "5",
"last_update": "07-12-2024",
"last_update": "27-12-2025",
"repository": "alexbelgium/hassio-addons",
"source": "github",
"slug": "monica",
"upstream_repo": "monicahq/monica",
"upstream_version": "5.0.0-beta.5"
"upstream_version": "5.0.0b5"
}

View File

@@ -2,7 +2,7 @@
"dockerhub_by_date": true,
"github_tagfilter": "5.3-amd64",
"last_update": "23-12-2025",
"paused": false,
"paused": true,
"repository": "alexbelgium/hassio-addons",
"slug": "omada_v3",
"source": "dockerhub",

View File

@@ -1,3 +1,6 @@
## 1.601 (27-12-2025)
- Update to latest version from causefx/organizr (changelog : https://github.com/causefx/organizr/releases)
- The Home Assistant project has deprecated support for the armv7, armhf and i386 architectures. Support wil be fully dropped in the upcoming Home Assistant 2025.12 release
- Added support for configuring extra environment variables via the `env_vars` add-on option alongside config.yaml. See https://github.com/alexbelgium/hassio-addons/wiki/Add-Environment-variables-to-your-Addon-2 for details.

View File

@@ -86,5 +86,5 @@ schema:
slug: organizr
udev: true
url: https://github.com/alexbelgium/hassio-addons
version: 1.90-bugfix2
version: "1.601"
webui: "[PROTO:ssl]://[HOST]:[PORT:80]"

View File

@@ -1,8 +1,8 @@
{
"last_update": "27-04-2022",
"last_update": "27-12-2025",
"repository": "alexbelgium/hassio-addons",
"slug": "organizr",
"source": "github",
"upstream_repo": "causefx/organizr",
"upstream_version": "1.90"
"upstream_version": "1.601"
}

View File

@@ -53,7 +53,7 @@ ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templat
RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_automodules.sh
# Manual apps
ENV PACKAGES=""
ENV PACKAGES="micro"
# Automatic apps & bashio
ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_autoapps.sh" "/ha_autoapps.sh"

View File

@@ -0,0 +1,7 @@
## 0.1.0-3 (27-12-2025)
- Minor bugs fixed
## 0.1.0-2 (27-12-2025)
- Minor bugs fixed
## 0.1.0
- Initial release

110
social_to_mealie/Dockerfile Normal file
View File

@@ -0,0 +1,110 @@
#============================#
# ALEXBELGIUM'S DOCKERFILE #
#============================#
# _.------.
# _.-` ('>.-"""-.
# '.--'` _'` _ .--.)
# -' '-.-';` `
# ' - _.' ``'--.
# '---` .-'""`
# /`
#=== Home Assistant Addon ===#
#################
# 1 Build Image #
#################
ARG BUILD_FROM
ARG BUILD_VERSION
FROM ${BUILD_FROM}
##################
# 2 Modify Image #
##################
# Set S6 wait time
ENV S6_CMD_WAIT_FOR_SERVICES=1 \
S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0 \
S6_SERVICES_GRACETIME=0
##################
# 3 Install apps #
##################
USER root
# Add rootfs
COPY rootfs/ /
# Uses /bin for compatibility purposes
# hadolint ignore=DL4005
RUN if [ ! -f /bin/sh ] && [ -f /usr/bin/sh ]; then ln -s /usr/bin/sh /bin/sh; fi && \
if [ ! -f /bin/bash ] && [ -f /usr/bin/bash ]; then ln -s /usr/bin/bash /bin/bash; fi
# Modules
ARG MODULES="00-banner.sh 01-custom_script.sh"
# Automatic modules download
ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_automodules.sh" "/ha_automodules.sh"
RUN chmod 744 /ha_automodules.sh && /ha_automodules.sh "$MODULES" && rm /ha_automodules.sh
# Manual apps
ENV PACKAGES="jq"
# Automatic apps & bashio
ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_autoapps.sh" "/ha_autoapps.sh"
RUN chmod 744 /ha_autoapps.sh && /ha_autoapps.sh "$PACKAGES" && rm /ha_autoapps.sh
################
# 4 Entrypoint #
################
# Add entrypoint
ENV S6_STAGE2_HOOK=/ha_entrypoint.sh
ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_entrypoint.sh" "/ha_entrypoint.sh"
# Entrypoint modifications
ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/ha_entrypoint_modif.sh" "/ha_entrypoint_modif.sh"
RUN chmod 777 /ha_entrypoint.sh /ha_entrypoint_modif.sh && /ha_entrypoint_modif.sh && rm /ha_entrypoint_modif.sh
# Standalone bashio command
ADD "https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.templates/bashio-standalone.sh" "/.bashio-standalone.sh"
RUN chmod 777 /.bashio-standalone.sh
#ENTRYPOINT [ "/ha_entrypoint.sh" ]
#CMD [ "/ha_entrypoint.sh" ]
############
# 5 Labels #
############
ARG BUILD_ARCH
ARG BUILD_DATE
ARG BUILD_DESCRIPTION
ARG BUILD_NAME
ARG BUILD_REF
ARG BUILD_REPOSITORY
ARG BUILD_VERSION
ENV BUILD_VERSION="${BUILD_VERSION}"
LABEL \
io.hass.name="${BUILD_NAME}" \
io.hass.description="${BUILD_DESCRIPTION}" \
io.hass.arch="${BUILD_ARCH}" \
io.hass.type="addon" \
io.hass.version=${BUILD_VERSION} \
maintainer="alexbelgium (https://github.com/alexbelgium)" \
org.opencontainers.image.title="${BUILD_NAME}" \
org.opencontainers.image.description="${BUILD_DESCRIPTION}" \
org.opencontainers.image.vendor="Home Assistant Add-ons" \
org.opencontainers.image.authors="alexbelgium (https://github.com/alexbelgium)" \
org.opencontainers.image.licenses="MIT" \
org.opencontainers.image.url="https://github.com/alexbelgium" \
org.opencontainers.image.source="https://github.com/${BUILD_REPOSITORY}" \
org.opencontainers.image.documentation="https://github.com/${BUILD_REPOSITORY}/blob/main/README.md" \
org.opencontainers.image.created=${BUILD_DATE} \
org.opencontainers.image.revision=${BUILD_REF} \
org.opencontainers.image.version=${BUILD_VERSION}
####################
# 6 HealthcheckNOT #
####################

View File

@@ -0,0 +1,75 @@
# Home assistant add-on: Social to Mealie
I maintain this and other Home Assistant add-ons in my free time: keeping up with upstream changes, HA changes, and testing on real hardware takes a lot of time (and some money). I use around 5-10 of my >110 addons so regularly I install test machines (and purchase some test services such as vpn) that I don't use myself to troubleshoot and improve the addons
If this add-on saves you time or makes your setup easier, I would be very grateful for your support!
[![Buy me a coffee][donation-badge]](https://www.buymeacoffee.com/alexbelgium)
[![Donate via PayPal][paypal-badge]](https://www.paypal.com/donate/?hosted_button_id=DZFULJZTP3UQA)
## Addon informations
![Version](https://img.shields.io/badge/dynamic/yaml?label=Version&query=%24.version&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fsocial_to_mealie%2Fconfig.yaml)
![Ingress](https://img.shields.io/badge/dynamic/yaml?label=Ingress&query=%24.ingress&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fsocial_to_mealie%2Fconfig.yaml)
![Arch](https://img.shields.io/badge/dynamic/yaml?color=success&label=Arch&query=%24.arch&url=https%3A%2F%2Fraw.githubusercontent.com%2Falexbelgium%2Fhassio-addons%2Fmaster%2Fsocial_to_mealie%2Fconfig.yaml)
[![Codacy Badge](https://app.codacy.com/project/badge/Grade/9c6cf10bdbba45ecb202d7f579b5be0e)](https://www.codacy.com/gh/alexbelgium/hassio-addons/dashboard?utm_source=github.com&utm_medium=referral&utm_content=alexbelgium/hassio-addons&utm_campaign=Badge_Grade)
[![GitHub Super-Linter](https://img.shields.io/github/actions/workflow/status/alexbelgium/hassio-addons/weekly-supelinter.yaml?label=Lint%20code%20base)](https://github.com/alexbelgium/hassio-addons/actions/workflows/weekly-supelinter.yaml)
[![Builder](https://img.shields.io/github/actions/workflow/status/alexbelgium/hassio-addons/onpush_builder.yaml?label=Builder)](https://github.com/alexbelgium/hassio-addons/actions/workflows/onpush_builder.yaml)
[donation-badge]: https://img.shields.io/badge/Buy%20me%20a%20coffee-%23d32f2f?logo=buy-me-a-coffee&style=flat&logoColor=white
[paypal-badge]: https://img.shields.io/badge/Donate%20via%20PayPal-0070BA?logo=paypal&style=flat&logoColor=white
_Thanks to everyone having starred my repo! To star it click on the image below, then it will be on top right. Thanks!_
[![Stargazers repo roster for @alexbelgium/hassio-addons](https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/.github/stars2.svg)](https://github.com/alexbelgium/hassio-addons/stargazers)
![downloads evolution](https://raw.githubusercontent.com/alexbelgium/hassio-addons/master/social_to_mealie/stats.png)
## About
[Social to Mealie](https://github.com/GerardPolloRebozado/social-to-mealie) lets you import recipes from social media videos directly into your Mealie instance.
This addon is based on the docker image https://github.com/GerardPolloRebozado/social-to-mealie
## Configuration
Webui can be found at <http://homeassistant:3000>.
### Options
| Option | Type | Default | Description |
|--------|------|---------|-------------|
| `OPENAI_URL` | str | `https://api.openai.com/v1` | URL for the OpenAI-compatible endpoint |
| `OPENAI_API_KEY` | str | `` | API key for the OpenAI-compatible provider |
| `TRANSCRIPTION_MODEL` | str | `whisper-1` | Whisper model to use for transcription |
| `TEXT_MODEL` | str | `gpt-4o-mini` | Text model used to build the recipe |
| `MEALIE_URL` | str | `https://mealie.example.com` | URL of your Mealie instance |
| `MEALIE_API_KEY` | str | `` | API key for Mealie |
| `MEALIE_GROUP_NAME` | str | `home` | Optional Mealie group name |
| `EXTRA_PROMPT` | str | `` | Additional instructions for the AI |
| `YTDLP_VERSION` | str | `latest` | yt-dlp version to download at startup |
| `COOKIES` | str | `` | Optional cookies string for yt-dlp |
| `env_vars` | list | `[]` | Additional environment variables to export |
### Example Configuration
```yaml
OPENAI_URL: https://api.openai.com/v1
OPENAI_API_KEY: sk-...
TRANSCRIPTION_MODEL: whisper-1
TEXT_MODEL: gpt-4o-mini
MEALIE_URL: https://mealie.example.com
MEALIE_API_KEY: ey...
MEALIE_GROUP_NAME: home
EXTRA_PROMPT: ""
YTDLP_VERSION: latest
COOKIES: ""
env_vars: []
```
### Notes
- Mealie 1.9.0+ with an AI provider configured is required.
- yt-dlp can be pre-downloaded by setting `YTDLP_VERSION` (for example `latest` or `2025.11.01`).
- Provide the cookies string if you need to access protected social media content with yt-dlp.

View File

@@ -0,0 +1,70 @@
#include <tunables/global>
profile social_to_mealie_addon flags=(attach_disconnected,mediate_deleted) {
#include <abstractions/base>
capability,
file,
signal,
mount,
umount,
remount,
network udp,
network tcp,
network dgram,
network stream,
network inet,
network inet6,
network netlink raw,
network unix dgram,
capability setgid,
capability setuid,
capability sys_admin,
capability dac_read_search,
capability dac_override,
# capability sys_rawio,
# S6-Overlay
/init ix,
/run/{s6,s6-rc*,service}/** ix,
/package/** ix,
/command/** ix,
/run/{,**} rwk,
/dev/tty rw,
/bin/** ix,
/usr/bin/** ix,
/usr/lib/bashio/** ix,
/etc/s6/** rix,
/run/s6/** rix,
/etc/services.d/** rwix,
/etc/cont-init.d/** rwix,
/etc/cont-finish.d/** rwix,
/init rix,
/var/run/** mrwkl,
/var/run/ mrwkl,
/dev/i2c-1 mrwkl,
# Files required
/dev/fuse mrwkl,
/dev/sda1 mrwkl,
/dev/sdb1 mrwkl,
/dev/nvme0 mrwkl,
/dev/nvme1 mrwkl,
/dev/mmcblk0p1 mrwkl,
/dev/* mrwkl,
/udev/* mrwkl,
/tmp/** mrkwl,
/dev/fuse/** mrkwl,
/dev/** mrkwl,
/sys/firmware/** mrkwl,
# Data access
/data/** rw,
# suppress ptrace denials when using 'docker ps' or using 'ps' inside a container
ptrace (trace,read) peer=docker-default,
# docker daemon confinement requires explict allow rule for signal
signal (receive) set=(kill,term) peer=/usr/bin/docker,
}

View File

@@ -0,0 +1,6 @@
{
"build_from": {
"aarch64": "ghcr.io/gerardpollorebozado/social-to-mealie:latest",
"amd64": "ghcr.io/gerardpollorebozado/social-to-mealie:latest"
}
}

View File

@@ -0,0 +1,43 @@
name: Social to Mealie
version: 0.1.0-3
slug: social_to_mealie
description: Import recipes from social media directly into Mealie
url: https://github.com/alexbelgium/hassio-addons
arch:
- aarch64
- amd64
map:
- addon_config:rw
environment:
PORT: "3000"
image: ghcr.io/alexbelgium/social_to_mealie-{arch}
init: false
ports:
3000/tcp: 3000
ports_description:
3000/tcp: Web interface
options:
OPENAI_URL: https://api.openai.com/v1
OPENAI_API_KEY: ""
TRANSCRIPTION_MODEL: whisper-1
TEXT_MODEL: gpt-4o-mini
MEALIE_URL: ""
MEALIE_API_KEY: ""
MEALIE_GROUP_NAME: home
YTDLP_VERSION: latest
env_vars: []
schema:
OPENAI_URL: str
OPENAI_API_KEY: str
TRANSCRIPTION_MODEL: str
TEXT_MODEL: str
MEALIE_URL: str
MEALIE_API_KEY: str
MEALIE_GROUP_NAME: str?
EXTRA_PROMPT: str?
YTDLP_VERSION: str?
COOKIES: str?
env_vars:
- name: match(^[A-Za-z0-9_]+$)
value: str?
webui: "[PROTO:ssl]://[HOST]:[PORT:3000]"

BIN
social_to_mealie/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

BIN
social_to_mealie/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,7 @@
#!/command/with-contenv bashio
# shellcheck shell=bash
set -e
bashio::log.info "Starting Social to Mealie"
cd /app || bashio::exit.nok "App directory not found"
/./app/entrypoint.sh node --run start

View File

@@ -0,0 +1,10 @@
{
"dockerhub_by_date": true,
"dockerhub_list_size": 2,
"last_update": "17-05-2025",
"repository": "alexbelgium/hassio-addons",
"slug": "social_to_mealie",
"source": "github",
"upstream_repo": "GerardPolloRebozado/social-to-mealie",
"upstream_version": "0.1.0"
}