Adding php-5.6.-imagick after using automated install script

Discussion in 'Installation/Configuration' started by Gert Brantner, Oct 5, 2017.

  1. Gert Brantner

    Gert Brantner New Member

    Debian 9.1, ISPc3.1
    I used the option to additionally install php5.6 in the automated install script, because one client needs it. It is there, but missing the imagemagick module.
    I don't know how the automated install script does it, at least it does not put it in /opt, like the manual method describes it. Do I need to use the PECL method, or does the automated install script download debian packages from some repository?
    Any hints very welcome!
     
  2. ztk.me

    ztk.me ISPConfig Developer ISPConfig Developer

    check your
    /etc/php/5.6/mods-available/imagick.ini
    for
    Code:
    extension=imagick.so
    
    not beeing uncommented.
    Also check wether
    /etc/php/5.6/fpm/conf.d/20-imagick.ini ( cgi/cli respectively ) is there

    https://packages.sury.org/php/ contains a readme on how it's done, oh btw. that great guy maintaines not only that but also earned some donations for his work, dunno if there's any hint in the installer, if not - that'd be a shame!
     
  3. Gert Brantner

    Gert Brantner New Member

    ok, so the auto script uses the repo. both files were missing, which to me indicates the module did not get installed, but:
    apt-get install php5.6-imagick
    Package php5.6-imagick is a virtual package provided by:
    php-imagick 3.4.3-2+0~20170825111201.3+stretch~1.gbp4fa216 [Not candidate version]
    E: Package 'php5.6-imagick' has no installation candidate

    and:

    php-imagick is already the newest version (3.4.3~rc2-2)
     
  4. ztk.me

    ztk.me ISPConfig Developer ISPConfig Developer

    that looks promising, might be a bug in the installer
    $apt-cache policy php-imagick
    should give you
    Code:
    php-imagick:
      Installed: 3.4.3-2+0~20170825111201.3+stretch~1.gbp4fa216
      Candidate: 3.4.3-2+0~20170825111201.3+stretch~1.gbp4fa216
      Version table:
    *** 3.4.3-2+0~20170825111201.3+stretch~1.gbp4fa216 498
            498 https://packages.sury.org/php stretch/main amd64 Packages
            100 /var/lib/dpkg/status
         3.4.3~rc2-2 500
            500 http://ftp.de.debian.org/debian stretch/main amd64 Packages
            499 http://ftp.de.debian.org/debian buster/main amd64 Packages
    
    you might try
    Code:
    apt-get --reinstall install php-imagick
    
    or just
    Code:
    $apt-get install locate
    $updatedb
    $locate imagick.so
    
    should give you
    Code:
    /usr/lib/php/20131226/imagick.so
    /usr/lib/php/20151012/imagick.so
    /usr/lib/php/20160303/imagick.so
    /usr/lib/php/20170718/imagick.so
    
    ( these are different libs for different versions, don't copy if one's missing )
    if that's your output, you can simply
    Code:
    echo "extension=imagick.so" > /etc/php/5.6/mods-available/imagick.ini
    ln -s /etc/php/5.6/mods-available/imagick.ini /etc/php/5.6/fpm/conf.d/20-imagick.ini
    ln -s /etc/php/5.6/mods-available/imagick.ini /etc/php/5.6/cli/conf.d/20-imagick.ini
    ln -s /etc/php/5.6/mods-available/imagick.ini /etc/php/5.6/cgi/conf.d/20-imagick.ini
    
    repeat that for every php-version ( 7.1 , 7.2 if installed, 7.0 if installed )


    check imagick works for every version ( maybe before doing code above )
    $php5.6 -i | grep imagick
    $php7.1 -i | grep imagick
    ....should say something like
    Code:
    ...
    imagick module => enabled
    ...
    
     

Share This Page