--- title: "🖼️ Портативный ImageMagick в Linux" date: 2022-09-17T22:23:58+03:00 draft: false tags: [guide, linux, imagemagick] --- ## ImageMagick Набор программ для чтения и редактирования файлов множества графических форматов. Является свободным и кроссплатформенным программным обеспечением. _(с) Википедия_ Во многих дистрибутивах продукт поставляется из коробки (скорее всего как зависимость), однако у меня в [Porteus](http://porteus.org/) (основан на [Slackware](http://www.slackware.com/)) пакет отсутсвует. Более чем начинающий пользователь ОС на базе ядра Linux знаком с [AppImage](https://appimage.org/). **AppImage** - это приложения, которые запускаются в любом месте. На странице загрузки [ImageMagick](https://imagemagick.org/script/download.php#linux) первым в списке представлен вариант AppImage. Я даже не могу вспомнить, кто из разработчиков ПО предлагал загрузить их программу в пакете AppImage по умолчанию. В релизах на странице проекта на [GitHub](https://github.com/ImageMagick/ImageMagick/releases) представлены для загрузки исключительно AppImage пакеты. Даже в двух вариантах, собранных GCC и Clang. На сайте ImageMagick написано, что образ AppImage имеет открытую политику безопасности. Они также настоятельно рекомендуют настроить политику безопасности. Для этого необходимо просто добавить [пользовательскую политику](https://imagemagick.org/script/security-policy.php) безопасности в свой локальный путь, например, `~/.config/ImageMagick/policy.xml` и проверьте с помощью этой команды: ```sh ./magick -list policy ``` ## Использование В других дистрибутивах, где ImageMagick собирается из исходных кодов доступна команда `convert`. В сети множество примеров обработки изображений посредством этой утилиты. В случае использования образа AppImage необходимо запускать `convert` как аргумент. ```sh magick convert ``` ## GCC or Clang Несмотря на то, что я загрузил **Clang** версию `ImageMagick--clang-x86_64.AppImage` (7.1.0-48) со страницы [GitHub](https://github.com/ImageMagick/ImageMagick/releases/tag/7.1.0-48), запуск утилиты с параметром `--version` говорить мне, что программа собрана **GCC**. ```text magick --version Version: ImageMagick 7.1.0-48 Q16-HDRI x86_64 c1ca24765:20220910 https://imagemagick.org Copyright: (C) 1999 ImageMagick Studio LLC License: https://imagemagick.org/script/license.php Features: Cipher DPC HDRI OpenMP(3.1) Delegates (built-in): bzlib djvu fontconfig freetype jbig jng jpeg lcms lqr lzma openexr png raqm tiff webp x xml zlib Compiler: gcc (4.2) ``` ХЗ почему так, работает и пофиг. ## Размеры AppImage пакет занимает ~27MB, против ~11MB в том же ArchLinux. Да больше, но зато я не буду увеличивать энтропию, тратить процессорное время и собирать из исходных кодов. Use AppImage, Luke ;)