mirror of
https://github.com/C4illin/ConvertX.git
synced 2026-11-07 22:10:08 +01:00
45 lines
1.6 KiB
Bash
Executable File
45 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
if [ -n "$MAGICK_MAX_WIDTH" ]; then
|
|
if ! [[ "$MAGICK_MAX_WIDTH" =~ ^[0-9]+$ ]]; then
|
|
echo "Error: MAGICK_MAX_WIDTH must be a positive integer in pixels" >&2
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
if [ -n "$MAGICK_MAX_HEIGHT" ]; then
|
|
if ! [[ "$MAGICK_MAX_HEIGHT" =~ ^[0-9]+$ ]]; then
|
|
echo "Error: MAGICK_MAX_HEIGHT must be a positive integer in pixels" >&2
|
|
exit 1
|
|
fi
|
|
fi
|
|
|
|
if [ -n "$MAGICK_MAX_WIDTH" ] || [ -n "$MAGICK_MAX_HEIGHT" ]; then
|
|
POLICY_DIR="/etc/ImageMagick-7"
|
|
POLICY_FILE="$POLICY_DIR/policy.xml"
|
|
|
|
if [ -f "$POLICY_FILE" ] && grep -q "</policymap>" "$POLICY_FILE"; then
|
|
[ -n "$MAGICK_MAX_WIDTH" ] && sed -i '/<policy domain="resource" name="width"/d' "$POLICY_FILE"
|
|
[ -n "$MAGICK_MAX_HEIGHT" ] && sed -i '/<policy domain="resource" name="height"/d' "$POLICY_FILE"
|
|
if [ -n "$MAGICK_MAX_WIDTH" ]; then
|
|
sed -i "s|</policymap>| <policy domain=\"resource\" name=\"width\" value=\"$MAGICK_MAX_WIDTH\"/>\n</policymap>|" "$POLICY_FILE"
|
|
fi
|
|
if [ -n "$MAGICK_MAX_HEIGHT" ]; then
|
|
sed -i "s|</policymap>| <policy domain=\"resource\" name=\"height\" value=\"$MAGICK_MAX_HEIGHT\"/>\n</policymap>|" "$POLICY_FILE"
|
|
fi
|
|
else
|
|
mkdir -p "$POLICY_DIR"
|
|
echo "<policymap>" > "$POLICY_FILE"
|
|
if [ -n "$MAGICK_MAX_WIDTH" ]; then
|
|
echo " <policy domain=\"resource\" name=\"width\" value=\"$MAGICK_MAX_WIDTH\"/>" >> "$POLICY_FILE"
|
|
fi
|
|
if [ -n "$MAGICK_MAX_HEIGHT" ]; then
|
|
echo " <policy domain=\"resource\" name=\"height\" value=\"$MAGICK_MAX_HEIGHT\"/>" >> "$POLICY_FILE"
|
|
fi
|
|
echo "</policymap>" >> "$POLICY_FILE"
|
|
fi
|
|
fi
|
|
|
|
exec bun run dist/src/index.js
|