Imagick missing - version php 7.3

Hey guys. There already exist discussions about that this module is outdated and has security vulnerabilities and should not be used anymore. I never found what exactly what it is used for in Nextcloud, but the warning only shows up when the theming app is enabled.

So simply disable the theming app (as long as you anyway go with default theme) and get rid of the warning.

Not sure about the hassle on the PHP version at it is clearly PHP7.3 as shown by php -v and on Nextcloud web UI. No need to check via phpinfo.php…
To install (if really required) the app try:
apt install php7.3-imagick

If that does not exist, then the source (whichever it was) where you installed PHP7.3 from does not ship this app, perhaps for a good reason :wink:. Although Ondrej ships it for all PHP versions: https://launchpad.net/~ondrej/+archive/ubuntu/php/+index?batch=75&direction=backwards&memo=150&start=75

4 Likes

I have the same problem on my raspi. Updated to php 7.3 with this info: https://janw.me/2019/installing-php7-3-rapsberry-pi/

Nextcloud now says it’s missing

It’s not found on the buster repo. What’s the correct way to get this module for php7.3 on the raspi with buster repo?

As above:

  • If you don’t use theming, disable the theming app instead.
  • If you use theming, ignore the warning.

If you do not want to follow my recommendation or you exactly know what you/Nextcloud needs this module for and you require this feature, then:

  • Indeed strange that on Raspbian Buster, the php-imagick package is the PHP7.2 vesion:

    2019-05-25 15:45:20 root@micha:/tmp# apt search php-imagick
    Sorting... Done
    Full Text Search... Done
    php-imagick/testing 3.4.3-4 armhf
      Provides a wrapper to the ImageMagick library
    
    2019-05-25 15:45:48 root@micha:/tmp# apt show php-imagick
    Package: php-imagick
    Version: 3.4.3-4
    Priority: optional
    Section: php
    Maintainer: Debian PHP PECL Maintainers <team+php-pecl@tracker.debian.org>
    Installed-Size: 362 kB
    Provides: php7.2-imagick
    Depends: php-common (>= 1:7.0+33~), phpapi-20170718, libc6 (>= 2.4), libmagickcore-6.q16-6 (>= 8:6.9.10.2), libmagickwand-6.q16-6 (>= 8:6.9.10.2)
    
  • On Debian Buster that is correctly PHP7.3: https://packages.debian.org/buster/php-imagick

  • Not the first time that Raspbian had some inconsistencies in their Buster repo. I’m running my RPi on Raspbian Buster since Stretch became stable and I regularly ran into such, also missing dependencies and sometimes critical ones so that an apt-get dist-upgrade would have removed half of my system :smile:.

  • If for whatever reason you still want to install the module, you need to compile it from source. See e.g.: https://howto.biapy.com/en/debian-gnu-linux/servers/php/install-the-php-extension-imagick-on-debian
    The “Manual” part. It’s a bid outdated, of course use the PHP7 commands/paths but the basic steps should be still true.

2 Likes

I run my NextCloud on Raspberry Pi, too. Indeed, the buster channel only provides imagick for php7.2 currently.

Disabling theming did the trick. :slight_smile:
Thank you.

Faced the same issue and found this thread. Well, tbh I was just to lazy to check all that php version stuff… so as a Linux veteran (haha), I know that in most cases some support modules need the main application as well.
So I checked if the main app imagemagick was installed as a dependency of php-imagick and it wasn’t (weird somehow). Installed it, rebooted NextCloud, logged into the web interface again and voilà - works. Thumbs are now created by imagemagick, message has gone. No disabling of theming or anything - still theming is enabled here. Maybe that will help someone who finds this thread the way I did.

Just install those two with dependencies and you should be good to go:
sudo apt-get install imagemagick php-imagick

Proof:

3 Likes

I’ve got the same problem after upgrded my server to Ubuntu 18.04.3. My Nextcloud instance use PHP 7.3 and I’ve already installed imagemagick php-imagick modules as suggested by @Captain_Jellyfish but it still doesn’t work. It seems that my PHP doesn’t load the magick module. I use Theming and I would like to fix it. Any suggestions?

You Sir, are a gentleman and you saved my day from a disaster! Thank you!!:slightly_smiling_face:

Greetings,
so, I have the same issue still today. NC 17.xxx
I do have theming and I wish to keep the login theme I changed (rather than the default one).
The questions:

  1. should I just ignore the warning? could ignore leade to more issues in future time?
  2. Adding the dependencies as mentioned above, would safely solve the problem? (now and future)
    Thanks
    kattivius

sudo apt-get install imagemagick php-imagick

I had to reboot the server (apache reload was not removing the warning)

Greetings,

I have debian (not raspbian) buster installed on a raspberry pi, and had the same issue with imagick module not loading in apache.

To solve this, what worked for me was to add the following in /etc/php/7.3/apache2/php.ini

extension=imagick.so

Which triggered a php error “Module ‘imagick’ already loaded at Unknown#0”. To fix this, I had to comment out the following in /etc/php/7.3/apache2/conf.d/20-imagick.ini

;extension=imagick.so

1 Like

You just saved me after 1 hour of research on this plugin, thank you!! :smile:

Hi!

I made the extension=imagick.so entry in php.ini, because the the error message in nextcloud admin apears. After that the error message was gone. But after a while i recognize messages in cron log:
(I use cron for nextcloud background jobs)

PHP Warning: Module ‘imagick’ already loaded in Unknown on line 0
PHP Fatal error: Uncaught Error: Call to a member function getLogger() on null in /var/www/nextcloud/nextcloud-18.0.4/cron.php:162

In detail: with the entry in php.ini i got no error in nextcloud admin system …missing imagick php module, but after a while an error from cron.
Without the extension entry in php.ini i got the error in nextcloud admin, and cron runs without an error message.

phpsysinfo() gives me allways information about the imagick module, with or without the extension entry in php.ini. So from that side everything seems allright.

Any idea?

bye.

You should consider this:

Hi enoch85,

I read it. Without - hoppefully, from security view descript in nextcloud forum - because phpinfo() says other - imagemagick php module was gone.

The warning goes away with occ app:disable theming , descript as behind your hyperlink.

From my point, i like imagemagick. The server runs only in local network enviroment, and only known users have the permission to write. This gives me a good overview about security, I think. And so I think I have more negativ effects without imagemagick.

Hopefully the developer find a good solution to that.

Thank you, and bye!

1 Like

Disabling Theming did the trick for me - Thanks!

1 Like

Thanks, you save my day!

“To solve this, what worked for me was to add the following in /etc/php/7.3/apache2/php.ini”

extension=imagick.so

after this I restart the server and it work like a harm.
NC V20.0.4

1 Like
sudo apt install php7.3-imagick
sudo phpenmod imagick
sudo systemctl restart {apache2,mysql,php7.3-fpm}

The problem is in newest php-imagisk version 8.0 updated with other modules.

My answer in another thread may be helpful here. Scroll down as needed to see it.

I had this same issue on NextcloudPi on the Odroid-HC2 with Nextcloud Version 21.

I first did this (installs for php 7.3):

sudo apt install php-imagick
sudo phpenmod imagick
sudo reboot (this took care of the error)

However, then I got an error complaining about lack of SVG support in imagick.
To fix this error, I used this thread: How to enable SVG for php-imagick and did the following:
sudo apt install libmagickcore-6.q16-6-extra

This solved the SVG issue.

3 Likes