File: //bigscoots/wpo/extras/install_imagick7.sh
#!/bin/bash
echo "๐ Detecting installed Remi PHP versions..."
PHP_VERSIONS=$(ls /opt/remi/php*/root/usr/bin/php 2>/dev/null | sed 's#/opt/remi/\(php[0-9]*\)/.*#\1#')
if [ -z "$PHP_VERSIONS" ]; then
echo "โ No Remi PHP versions detected in /opt/remi. Exiting."
exit 1
fi
echo "โ
Found PHP versions: $PHP_VERSIONS"
echo "๐งผ Removing any old ImageMagick6 or imagick-im6 extensions..."
yum remove -y ImageMagick6* php*-php-pecl-imagick-im6* >/dev/null 2>&1 || true
echo "๐ฆ Installing ImageMagick 7 from Remi..."
yum --disableplugin=priorities --disableexcludes=main,remi \
--enablerepo=remi-safe \
install -y ImageMagick7 ImageMagick7-devel ImageMagick7-libs
echo "๐ฆ Installing imagick-im7 extensions for detected PHP versions..."
for ver in $PHP_VERSIONS; do
echo "๐ Installing for $ver"
yum --disableplugin=priorities --disableexcludes=main,remi \
--enablerepo=remi,remi-safe,remi-test,remi-modular \
install -y ${ver}-php-pecl-imagick-im7 ${ver}-php-pecl-imagick-im7-devel
echo "๐ Restarting ${ver}-php-fpm if available..."
systemctl restart ${ver}-php-fpm 2>/dev/null || echo "โ ๏ธ ${ver}-php-fpm not running or not installed"
done
echo "โ
All done! Verifying imagick-im7 modules..."
for ver in $PHP_VERSIONS; do
echo -e "\n๐ [$ver]"
/opt/remi/$ver/root/usr/bin/php -i | grep -Ei 'imagick|magick' || echo "โ imagick not detected for $ver"
done