2022-09-17 22:49:42 +03:00
|
|
|
|
---
|
2022-11-19 03:36:06 +03:00
|
|
|
|
title: "🖼️ Портативный ImageMagick в Linux"
|
2022-09-17 22:49:42 +03:00
|
|
|
|
date: 2022-09-17T22:23:58+03:00
|
|
|
|
|
draft: false
|
2022-12-28 00:46:21 +03:00
|
|
|
|
tags: [tutorial, linux, tools]
|
2022-09-17 22:49:42 +03:00
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
## 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 ;)
|