После установки MagiTrickle у меня автоматически демон не запускался через /opt/etc/init.d/rc.unslung соответственно netfilter.d/100-magictrickle вылетал с ошибкой.
Изменил хук из netfilter.d на такой:
#!/bin/sh
SOCKET_PATH="/opt/var/run/magitrickle.sock"
BIN="/opt/bin/magitrickled"
# Проверяем, что бинарник существует и исполняемый
[ -x "$BIN" ] || exit 0
# Проверяем, запущен ли демон
if ! pidof magitrickled >/dev/null 2>&1; then
# Если не запущен, запускаем в фоне
"$BIN" &
# Немного ждем, чтобы сокет успел появиться
sleep 1
fi
# Если сокет есть, отправляем запрос
if [ -S "$SOCKET_PATH" ]; then
BODY="{\"type\":\"$type\",\"table\":\"$table\"}"
LENGTH=$(printf "%s" "$BODY" | wc -c)
socat - UNIX-CONNECT:"$SOCKET_PATH" >/dev/null 2>&1 <<EOF
POST /api/v1/system/hooks/netfilterd HTTP/1.1
Host:
Content-Type: application/json
Content-Length: $LENGTH
$BODY
EOF
fi
exit 0
И теперь демон даже если не поднимается (а он не поднимается через автозапуск entware у меня), то его поднимет хук.
Может быть будет полезно.