SoftCreatR / imei

IMEI - ImageMagick Easy Install
ISC License
309 stars 36 forks source link
aom aomedia avif avif-decoder avif-encoder debian hacktoberfest heic image-analysis image-manipulation image-processing imagemagick jpeg-xl jpg jxl libaom libjxl png ubuntu webp
# IMEI - ImageMagick Easy Install #### Automated ImageMagick compilation from sources for Debian/Ubuntu including advanced delegate support. [![Build](https://img.shields.io/github/actions/workflow/status/SoftCreatR/imei/.github/workflows/main.yml?branch=main&style=flat-square)](https://github.com/SoftCreatR/imei/actions/workflows/main.yml) [![Commits](https://img.shields.io/github/last-commit/SoftCreatR/imei?style=flat-square)](https://github.com/SoftCreatR/imei/commits/main) [![GitHub release](https://img.shields.io/github/release/SoftCreatR/imei?style=flat-square)](https://github.com/SoftCreatR/imei/releases) [![GitHub license](https://img.shields.io/github/license/SoftCreatR/imei?style=flat-square&color=lightgray)](LICENSE.md) [![Plant Tree](https://img.shields.io/badge/dynamic/json?color=brightgreen&label=Plant%20Tree&query=%24.total&url=https%3A%2F%2Fpublic.offset.earth%2Fusers%2Fsoftcreatr%2Ftrees&style=flat-square)](https://ecologi.com/softcreatr?r=61212ab3fc69b8eb8a2014f4) [![Installs](https://img.shields.io/badge/dynamic/json?style=flat-square&color=blue&label=installs&query=value&url=https://dist.1-2.dev/imei.php?cnt)](https://github.com/SoftCreatR/imei#one-step-automated-install) [![GitHub file size in bytes](https://img.shields.io/github/size/SoftCreatR/imei/imei.sh?style=flat-square)](https://github.com/SoftCreatR/imei/blob/main/imei.sh) [![Codacy grade](https://img.shields.io/codacy/grade/db0b2b5f22454f4280e4623de9f7075f?style=flat-square&label=codacy%20grade)](https://app.codacy.com/gh/SoftCreatR/imei/dashboard) [![CodeFactor Grade](https://img.shields.io/codefactor/grade/github/SoftCreatR/imei?style=flat-square&label=codefactor%20rating)](https://www.codefactor.io/repository/github/softcreatr/imei)

Features Compatibility Usage Contributing License ![Screenshot](screenshot.png)

Features


Compatibility

The compatibility of every IMEI build is automatically tested using GitHub Actions against the latest Ubuntu LTS version. However, manual testing is conducted to ensure compatibility with other operating systems, such as Debian 10 or Ubuntu 18.04.

Operating System

Recommended

Also compatible

Other versions than the ones listed might be compatible as well, but they are not officially supported.

Known issues


Usage

One-Step Automated Install

t=$(mktemp) && \
wget 'https://dist.1-2.dev/imei.sh' -qO "$t" && \
bash "$t" && \
rm "$t"

Alternative Install Method

git clone https://github.com/SoftCreatR/imei && \
cd imei && \
chmod +x imei.sh && \
./imei.sh

Verify installer integrity

Though the installer performs a self check upon startup, you can also perform it manually. To do so, openssl is required:

wget -q https://dist.1-2.dev/imei.sh && \
wget -q https://dist.1-2.dev/imei.sh.sig && \
wget -q https://dist.1-2.dev/imei.sh.pem && \
openssl dgst -sha512 -verify imei.sh.pem -signature imei.sh.sig imei.sh

Alternative integrity check

git clone https://github.com/SoftCreatR/imei && \
cd imei && \
openssl dgst -sha512 -verify imei.sh.pem -signature imei.sh.sig imei.sh

Options available

Currently available build options are

Additional options / switches:

Default options :

Older versions of ImageMagick (installed via apt / dpkg)

IMEI enforces a stringent policy that prohibits execution when ImageMagick is detected as pre-installed via the apt or dpkg package managers. Currently, there is no sanctioned method to bypass this limitation. To facilitate the installation of ImageMagick through IMEI, it is imperative to first remove any extant installations, e.g.:

apt remove "*imagemagick*" --purge -y && apt autoremove --purge -y

checkinstall vs. make

IMEI offers support for both checkinstall and make methods. While checkinstall enables the creation of packages that can be uninstalled at a later time, such as apt remove imei-imagemagick, the use of make does not provide the same convenience, making it potentially more difficult to remove all components installed by IMEI. However, it's important to note that checkinstall may not always be available and may have certain bugs that could lead to an incomplete installation of IMEI packages.

By default, IMEI utilizes the make method, but you have the option to use checkinstall by specifying it in the additional options or switches (refer to "Additional options / switches" for more details).

OpenCL support

IMEI provides the option to install ImageMagick with OpenCL support. However, it is important to consider that according to the information provided here, ImageMagick's performance is significantly lower when utilizing OpenCL compared to OpenMP.

When you choose to install ImageMagick with OpenCL support using IMEI, please be aware that IMEI only compiles ImageMagick with OpenCL capabilities. It does not handle the installation of necessary drivers or any other specific requirements to enable general OpenCL support on your system.

PHP Imagick extension

The ImageMagick installation facilitated through IMEI exhibits full compatibility with the Imagick extension of PHP. It is imperative to note that the compilation of Imagick must be conducted against the version of ImageMagick that is currently installed, rather than vice versa. Consequently, subsequent to the installation of ImageMagick, it is essential to undertake the reinstallation of the Imagick extension. This reinstallation can be executed either through the PECL interface or in accordance with the procedure delineated here.


Contributing

If you have any ideas, just open an issue and describe what you would like to add/change in IMEI.

If you'd like to contribute, please fork the repository and make changes as you'd like. Pull requests are warmly welcome.

License 🌳

ISC © 1-2.dev

This package is Treeware. If you use it in production, then we ask that you buy the world a tree to thank us for our work. By contributing to the ecologi project, you’ll be creating employment for local families and restoring wildlife habitats.