From 0ff3975de31a9243aa8eebcd3ff252d6f7a51ad2 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 27 Dec 2025 09:20:19 +0100 Subject: [PATCH 1/2] Remove social_to_mealie binary assets --- social_to_mealie/CHANGELOG.md | 3 + social_to_mealie/Dockerfile | 108 ++++++++++++++++ social_to_mealie/README.md | 75 ++++++++++++ social_to_mealie/apparmor.txt | 70 +++++++++++ social_to_mealie/build.json | 6 + social_to_mealie/config.yaml | 115 ++++++++++++++++++ .../rootfs/etc/cont-init.d/99-run.sh | 50 ++++++++ social_to_mealie/updater.json | 10 ++ 8 files changed, 437 insertions(+) create mode 100644 social_to_mealie/CHANGELOG.md create mode 100644 social_to_mealie/Dockerfile create mode 100644 social_to_mealie/README.md create mode 100644 social_to_mealie/apparmor.txt create mode 100644 social_to_mealie/build.json create mode 100644 social_to_mealie/config.yaml create mode 100755 social_to_mealie/rootfs/etc/cont-init.d/99-run.sh create mode 100644 social_to_mealie/updater.json diff --git a/social_to_mealie/CHANGELOG.md b/social_to_mealie/CHANGELOG.md new file mode 100644 index 000000000..090fc3659 --- /dev/null +++ b/social_to_mealie/CHANGELOG.md @@ -0,0 +1,3 @@ +## 0.1.0 + +- Initial release diff --git a/social_to_mealie/Dockerfile b/social_to_mealie/Dockerfile new file mode 100644 index 000000000..88e9c90cd --- /dev/null +++ b/social_to_mealie/Dockerfile @@ -0,0 +1,108 @@ +#============================# +# 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 # +################## + +# 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 # +#################### diff --git a/social_to_mealie/README.md b/social_to_mealie/README.md new file mode 100644 index 000000000..83366b9c8 --- /dev/null +++ b/social_to_mealie/README.md @@ -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 . + +### 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. diff --git a/social_to_mealie/apparmor.txt b/social_to_mealie/apparmor.txt new file mode 100644 index 000000000..e5ac2e175 --- /dev/null +++ b/social_to_mealie/apparmor.txt @@ -0,0 +1,70 @@ +#include + +profile social_to_mealie_addon flags=(attach_disconnected,mediate_deleted) { + #include + + 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, + +} diff --git a/social_to_mealie/build.json b/social_to_mealie/build.json new file mode 100644 index 000000000..d82f58ecc --- /dev/null +++ b/social_to_mealie/build.json @@ -0,0 +1,6 @@ +{ + "build_from": { + "aarch64": "ghcr.io/gerardpollorebozado/social-to-mealie:latest", + "amd64": "ghcr.io/gerardpollorebozado/social-to-mealie:latest" + } +} diff --git a/social_to_mealie/config.yaml b/social_to_mealie/config.yaml new file mode 100644 index 000000000..6a759ad30 --- /dev/null +++ b/social_to_mealie/config.yaml @@ -0,0 +1,115 @@ +name: Social to Mealie +version: "0.1.0" +slug: social_to_mealie +description: Import recipes from social media directly into Mealie +url: https://github.com/alexbelgium/hassio-addons +arch: + - aarch64 + - amd64 +startup: services +boot: auto +host_network: false +auth_api: false +audio: false +panel_admin: false +map: + - config:rw + - share:rw +devices: + - /dev/dri + - /dev/dri/card0 + - /dev/dri/card1 + - /dev/dri/renderD128 + - /dev/vchiq + - /dev/video10 + - /dev/video11 + - /dev/video12 + - /dev/video13 + - /dev/video14 + - /dev/video15 + - /dev/video16 + - /dev/ttyUSB0 + - /dev/sda + - /dev/sdb + - /dev/sdc + - /dev/sdd + - /dev/sde + - /dev/sdf + - /dev/sdg + - /dev/nvme + - /dev/nvme0 + - /dev/nvme0n1 + - /dev/nvme0n1p1 + - /dev/nvme0n1p2 + - /dev/nvme0n1p3 + - /dev/nvme1n1 + - /dev/nvme1n1p1 + - /dev/nvme1n1p2 + - /dev/nvme1n1p3 + - /dev/nvme2n1 + - /dev/nvme2n1p1 + - /dev/nvme2n1p2 + - /dev/nvme2n3p3 + - /dev/mmcblk + - /dev/fuse + - /dev/sda1 + - /dev/sdb1 + - /dev/sdc1 + - /dev/sdd1 + - /dev/sde1 + - /dev/sdf1 + - /dev/sdg1 + - /dev/sda2 + - /dev/sdb2 + - /dev/sdc2 + - /dev/sdd2 + - /dev/sde2 + - /dev/sdf2 + - /dev/sdg2 + - /dev/sda3 + - /dev/sdb3 + - /dev/sda4 + - /dev/sdb4 + - /dev/sda5 + - /dev/sda6 + - /dev/sda7 + - /dev/sda8 + - /dev/nvme0 + - /dev/nvme1 + - /dev/nvme2 +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: https://mealie.example.com + MEALIE_API_KEY: "" + MEALIE_GROUP_NAME: home + EXTRA_PROMPT: "" + YTDLP_VERSION: latest + COOKIES: "" + 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? +udev: true +webui: "[PROTO:ssl]://[HOST]:[PORT:3000]" diff --git a/social_to_mealie/rootfs/etc/cont-init.d/99-run.sh b/social_to_mealie/rootfs/etc/cont-init.d/99-run.sh new file mode 100755 index 000000000..603a50713 --- /dev/null +++ b/social_to_mealie/rootfs/etc/cont-init.d/99-run.sh @@ -0,0 +1,50 @@ +#!/command/with-contenv bashio +# shellcheck shell=bash +set -e + +required_vars=( + OPENAI_URL + OPENAI_API_KEY + TRANSCRIPTION_MODEL + TEXT_MODEL + MEALIE_URL + MEALIE_API_KEY +) + +for var in "${required_vars[@]}"; do + if ! bashio::config.has_value "$var"; then + bashio::exit.nok "Configuration option $var is required" + fi + export "$var"="$(bashio::config "$var")" + bashio::log.info "$var configured" +done + +optional_vars=( + MEALIE_GROUP_NAME + EXTRA_PROMPT + YTDLP_VERSION + COOKIES +) + +for var in "${optional_vars[@]}"; do + if bashio::config.has_value "$var"; then + export "$var"="$(bashio::config "$var")" + bashio::log.info "$var configured" + fi +done + +if bashio::config.has_value "env_vars"; then + for entry in $(bashio::config 'env_vars | map(@base64) | .[]'); do + item=$(echo "$entry" | base64 -d) + name=$(echo "$item" | jq -r '.name // empty') + value=$(echo "$item" | jq -r '.value // empty') + if [ -n "$name" ]; then + export "$name"="$value" + bashio::log.info "Custom env $name configured" + fi + done +fi + +bashio::log.info "Starting Social to Mealie" +cd /app || bashio::exit.nok "App directory not found" +exec /bin/sh /app/entrypoint.sh node --run start diff --git a/social_to_mealie/updater.json b/social_to_mealie/updater.json new file mode 100644 index 000000000..8fa2bd0b9 --- /dev/null +++ b/social_to_mealie/updater.json @@ -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" +} From 843da44ac7179b4accf9dbc7603069b5e9d9cc27 Mon Sep 17 00:00:00 2001 From: Alexandre <44178713+alexbelgium@users.noreply.github.com> Date: Sat, 27 Dec 2025 09:22:26 +0100 Subject: [PATCH 2/2] new addon --- social_to_mealie/icon.png | Bin 0 -> 20383 bytes social_to_mealie/logo.png | Bin 0 -> 20383 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 social_to_mealie/icon.png create mode 100644 social_to_mealie/logo.png diff --git a/social_to_mealie/icon.png b/social_to_mealie/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..458d2ac7fe499e866545b81db535c6454f119649 GIT binary patch literal 20383 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 literal 0 HcmV?d00001 diff --git a/social_to_mealie/logo.png b/social_to_mealie/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..458d2ac7fe499e866545b81db535c6454f119649 GIT binary patch literal 20383 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 literal 0 HcmV?d00001