Включите поддержку изображений JPEG-XL (.jxl) в Ubuntu 24.04 и 22.04.
В этом руководстве показано, как включить поддержку файлов .jxl
для средства просмотра системных изображений, GIMP и некоторых других приложений в Ubuntu 24.04, Ubuntu 22.04, Ubuntu 20.04 и даже Ubuntu 18.04.
JPEG-XL — это новый формат изображений, разработанный комитетом JPEG. Он поддерживает сжатие как с потерями, так и без потерь, включает в себя такие функции, как анимация, альфа-каналы, слои, миниатюры, а также имеет более высокую эффективность сжатия (улучшение на 60%) по сравнению с JPEG.
Для кодирования и декодирования изображений JPEG-XL доступна бесплатная библиотека libjxl с открытым исходным кодом. Ubuntu включила библиотеку в системный репозиторий с 24.04, однако плагин загрузчика GdkPixbuf отсутствует до Ubuntu 24.10 (пока что находится в разработке).
Это означает, что система просмотра изображений по умолчанию и многие другие приложения не работают с файлом .jxl
в текущих трех выпусках Ubuntu LTS «из коробки».
Чтобы включить поддержку .jxl
без пересборки приложений, на данный момент есть два варианта:
- Установите пакеты libjxl
.deb
со страницы проекта Github (пока только Ubuntu 20.04, Ubuntu 22.04). - Пересоберите libjxl с помощью загрузчика GdkPixbuf и плагина GIMP для Ubuntu 24.04.
Способ 1. Установите официальный пакет libjxl.
Libjxl предоставляет официальные пакеты .deb
, которые однако на момент написания поддерживают только Ubuntu 20.04 и Ubuntu 22.04.
ПРИМЕЧАНИЕ. Приложения, установленные из сторонних репозиториев, которые содержат библиотеку libjxl, МОГУТ вызывать конфликт с официальной библиотекой, упомянутой в этом методе.
1. Загрузите пакет libjxl.
Сначала перейдите на страницу релизов проекта по ссылке ниже:
Загрузите libjxl (в разделе «Ресурсы»): https://github.com/libjxl/libjxl/releases
В разделе «Активы» нажмите «Показать все ресурсы xx» и выберите загрузку jxl-debs...
для вашей системы. Для Ubuntu 18.04 прокрутите вниз и выберите «Загрузить старую версию 0.8.2».
Если вы даже не знаете, какая версия системы запущена, запустите терминал (для Ubuntu нажмите Ctrl+Alt+T) и выполните команду:
lsb_release -a
Для дистрибутивов Linux, основанных на Ubuntu или Debian, запустите cat /etc/os-release
, чтобы узнать, на какой основной версии основана ваша система.
2. Установите libjxl
После загрузки пакета извлеките его в файловый менеджер, наконец откройте извлеченную папку, щелкните правой кнопкой мыши пустую область и выберите «Открыть в терминале
».
Во всплывающем окне терминала запустите ls
, чтобы просмотреть все содержащиеся файлы, и выполните команду ниже, чтобы установить все пакеты deb:
sudo apt install ./*.deb
По выбору вы можете просто установить «libjxl_x.x.x_amd64.deb», «libjxl-gdk-pixbuf_x.x.x_amd64.deb» и «libjxl-gimp-plugin_x.x.x_amd64.deb», как показано на снимке экрана ниже. ты.
После установки пакетов вы можете снова открыть программу просмотра изображений и/или редакторы изображений и проверить, работают ли они теперь с изображениями jxl.
После этого урока GIMP теперь может экспортировать .jxl.
Способ 2: Ubuntu PPA для Ubuntu 24.04
Ubuntu 24.04 включает в себя libjxl
в системном репозитории, однако в нем нет плагина gdk-pixbuf и GIMP.
Некоторые пакеты приложений (например, GIMP, Krita, Darktable и gThumb) в системном репозитории были созданы ИНДИВИДУАЛЬНО с использованием этой библиотеки libjxl
для поддержки изображений JPEG-XL.
Официальный пакет libjxl
, упомянутый в методе 1, построен с другим именем пакета и файлами библиотеки, которые БУДЕТ вызывать конфликт с этими пакетами приложений, который зависит от пакета в системном репозитории.
Поэтому, чтобы включить поддержку JPEG-XL для программы просмотра изображений по умолчанию и других графических приложений, лучше пересобрать системную версию libjxl
для поддержки плагина gdk-pixbuf. И, чтобы облегчить жизнь новичкам, я загрузил его в этот неофициальный PPA для устройств amd64
, arm64/armhf
и i386
.
ПРИМЕЧАНИЕ 1. В моем случае пакет PPA работает хорошо, без конфликтов с GIMP, Krita, gThumb, но с небольшими проверками. Не используйте его на рабочей машине.
ПРИМЕЧАНИЕ 2. Исходный пакет больше системного из-за перепаковки со встроенными библиотеками (созданными путем запуска сценария deps.sh
в исходном коде).
1. Сначала нажмите Ctrl+Alt+T
на клавиатуре, чтобы открыть окно терминала. Когда он откроется, выполните команду, чтобы добавить PPA:
sudo add-apt-repository ppa:ubuntuhandbook1/jpeg-xl
Введите пароль пользователя (без звездочки, просто введите его в уме), когда он спросит, и нажмите Enter, чтобы продолжить.
2. Затем выполните команду, чтобы обновить кэш пакетов.
sudo apt update
Это делается автоматически при добавлении PPA в Ubuntu и ее официальных версиях, но НЕ может быть для некоторых систем на базе Ubuntu, например, Linux Mint.
3. Наконец, запустите команду для установки libjxl gdk-pixbuf и плагина GIMP:
sudo apt install libjxl-gdk-pixbuf libjxl-gimp-plugin
Если вы используете пакет GIMP из системного репозитория, то libjxl-gimp-plugin
НЕ требуется, поскольку редактор изображений в Ubuntu 24.04 создается индивидуально с поддержкой jpeg-xl.
4. (Необязательно) Поскольку Ubuntu редко обновляет библиотеки в системе, PPA также обновляется редко. Впоследствии вы можете удалить PPA, выполнив команду:
sudo add-apt-repository --remove ppa:ubuntuhandbook1/jpeg-xl
Как восстановить
Для Ubuntu 20.04 и Ubuntu 22.04 просто откройте терминал (Ctrl+Alt+T) и выполните приведенную ниже команду, чтобы удалить пакеты:
sudo apt remove jxl libjxl libjxl-dev libjxl-gdk-pixbuf libjxl-gimp-plugin
Для пользователей Ubuntu 24.04, установивших библиотеку из PPA, сначала откройте терминал и выполните команду для удаления PPA:
sudo add-apt-repository --remove ppa:ubuntuhandbook1/jpeg-xl
Затем удалите плагин gdk-pixbuf и GIMP с помощью команды:
sudo apt remove libjxl-gdk-pixbuf libjxl-gimp-plugin
В случае удаления других приложений вместо удаления и повторной установки вы можете понизить версию пакета libjxl0.7
до стандартной версии в системном репозитории:
sudo apt install libjxl0.7=0.7.0-10.2ubuntu6
Последняя команда может не работать, если Ubuntu обновит версию библиотеки. В этом случае запустите диспетчер пакетов Synaptic (установите его из App Center), найдите и выделите пакет «libjxl», наконец, перейдите в «Пакет -> Принудительная версия» и выберите «Загрузить стандартную версию».
Понизить версию libjxl