KDE и перспективный формат FLIF

27.01.2017

comparison

В номере №205 журнала Linux Format я писал о новом графическом формате FLIF (Free Lossless Image Format), который превосходит PNG и WebP по сжатию данных без потерь. В комплекте с исходным кодом FLIF (т.н. reference implementation) имеются библиотеки кодировщика и декодера, сам кодировщик, а также простейшее средство просмотра — консольная программа viewflif. С таким минимальным набором вполне можно работать, однако формат, по сути, в этом случае выполняет роль архиватора: ни листать, ни редактировать FLIF-файлы без предварительной конвертации нельзя. Правда, есть ещё набор консольных утилит ImageMagick, который с некоторых пор поддерживает формат FLIF. Приличных графических программ просмотра, которые были бы основаны на ImageMagick, в природе нет, к тому же, большинство готовых сборок ImageMagick собраны без поддержки FLIF и не могут его читать. Хотите поддержку — собирайте из исходного кода сами.

На этом фоне Qt FLIF Plugin оказался глотком свежего воздуха. Данная разработка сделана датским программистом Себастьяном Валем (Sebastian Wahl), который ведёт свой блог и увлекается алгоритмами сжатия изображений. Суть Qt FLIF Plugin проста: в вашем распоряжении появляется разделяемая библиотека libflif.so (не путать с одноимённой библиотекой из состава самого кодировщика FLIF!), которая может быть использована любыми Qt-приложениями, поддерживающими QImageIOPlugins, например Gwenview, Kolourpaint и многими другими. Автор плагина также написал свой собственный минималистичный просмотрщик графических файлов, вполне неплохой!

Итак, для сборки нам потребуется слегка подредактировать файл project.pro, добавив туда строку CONFIG += c++14:

flif1.png

Если этого не сделать, то проект просто не соберётся современными версиями GCC. Затем нужно убедиться в том, что заголовочные файлы FLIF лежат в нужном месте — между прочим, их нужно заранее вручную положить в /usr/include/FLIF:

flif2.png

Далее командуем make и ждём несколько секунд. Получившуюся библиотеку нужно проверить на успешную линковку с кодировщиком FLIF (дело в том, что плагин почему-то иногда не линкуется):

flif3.png

Дальше, нужно установить саму библиотеку, скопировать .desktop-файлы и зарегистрировать соответствующий тип файла для share MIME database. Следующие команды я выполнял из директории ~/qt_flif_plugin/configuraton:
sudo cp ../libflif.so /usr/lib64/qt5/plugins/imageformats/
sudo cp qimageioplugins/x-flif.desktop /usr/share/kservices5/qimageioplugins/
sudo cp imagethumbnail-flif.desktop /usr/share/kservices5/
sudo cp x-flif.xml /usr/share/mime/packages/
sudo /usr/bin/update-mime-database /usr/share/mime

Результат будет заметен сразу же. Во-первых, заработает генератор миниатюр в файловом менеджере Dolphin:

flif4.png

Во-вторых, можно будет смотреть FLIF-файлы в Gwenview, стандартной программе просмотра из набора KDE:

flif5.png

На данный момент можно использовать лишь версию Gwenview 16.08 или более старую, так как из-за этого коммита программа, начиная с версии 16.12, содержит другой механизм поддержки сторонних форматов. Но это уже вопрос к автор FLIF-плагина — надеюсь, он обновит свой код когда-нибудь. Меня же очень радует сжатие, которое обеспечивает FLIF. Только посмотрите:

flif6.png

 


Видео-обои

10.11.2016

Рабочий стол Plasma 5 поддерживает установку видеороликов в качестве обоев рабочего стола, а также для экрана блокировки. Делюсь ссылками: процесс и результат.

 


Карта здорового человека

15.07.2016

С 11 июля карта пользователя GNOME выглядит так:

gnome-maps

В то время как карта здорового человека по-прежнему выглядит так:

kde-marble.png

Как видно на первой картинке, разработчики GNOME Maps получили предательский удар в спину и теперь должны срочно договариваться с OpenStreetMap или ещё кем-то о поставке картографических данных. Подробнее об этом тут.


Защитить нефтяные вышки!

13.07.2016

oilwar

Отличная маленькая игра из 2003 года, написанная финским товарищем Ярмо Хекконеном. В наши дни уже давно ничего не слышно про автора, а сайт игры (2ndpoint.fi) закрылся ещё в 2007 году. Но игра имеется в стандартном репозитории операционной системы Rosa Fresh — лучшего дистрибутива Linux на планете Земля!

Так что делаем так:
urpmi oilwar
и играем, прокачивая скорость нажатия на левую кнопку мыши 🙂

Если же вам хочется достичь таких впечатляющих результатов как у меня на скриншоте, то нужно просто задействовать xdotool:
urpmi xdotool
Далее я сделал простой скрипт, который делает подряд 5000 щелчков:
#!/bin/bash
for i in {1..5000}
do
xdotool click 1
done

Скрипт удобно повесить на удобную вам комбинацию клавиш, благо KDE это умеет делать стандартными средствами. Вот, собственно, и всё!

В процессе игры плотность живой силы противника постоянно растёт, и в какой-то момент реально эффективными остаются только осколочно-фугасные бомбы, запас которых можно пополнять прямо на поле боя. Враг не пройдёт!


Кружка с оригинальным дизайном

16.06.2016

На Чёрном Море, где я недавно провёл отпуск, находится много торговых точек типа «сделаем футболку или кружку с вашей картинкой». Недолго думая, я открыл Krita и набросал дизайн для кружки, используя логотип KDE и обои из последнего выпуска Plasma5. Получилось вот так:

20160615_110306

Как видно, на кружке нашлось место и для зелёного дракона Konqi, который мне всегда нравился. Вот ещё вид спереди:

20160615_110326

Картинка запечена прямо под поверхность лака и не смывается. Кстати, я сделал два экземпляра кружки, на всякий случай 😉


В KDE теперь есть нормальный браузер!

05.05.2016

Не прошло и трёх лет с тех пор, когда я написал заметку про достоинства Konqueror, как появился веб-браузер на Qt, который наконец-то действительно очень хорош. Речь идёт о Qupzilla, который недавно обновился до новой мажорной версии 2.0 Qupzilla существовал и раньше, но ничего интересного из себя не представлял, т.к. использовал довольно слабый движок WebKit — да, в наше время это уже старьё.

Новенький Qupzilla 2.0 использует QtWebEngine, который, в свою очередь, базируется на коде Chromium. Для нас с вами это означает, что теперь в KDE Plasma Desktop есть браузер, который идеально вписывается в рабочее окружении и отлично отображает любые сайты и сервисы. Для работы Qupzilla 2.0 требуется Qt 5.6, которая уже имеется во всех нормальных дистрибутивах, включая Росу. Интересно, что в Росе новый браузер просит удалить Rosa Media Player — увы, оригинальные разработки «старого» Росалаба умирают, но сам дистрибутив замечательно живёт!

qupzilla

Из крупных функций Qupzilla 2.0 лишён только синхронизации настроек с облачным аккаунтом. В остальном же браузер работает просто шикарно:

qupzilla2.png


OpenMandriva Lx 3 с новенькой плазмой…

16.03.2016

OpenMandriva возникла как клон Rosa Desktop Fresh R3 и поначалу обе системы были почти идентичны. Однако команды шли разными путями и сейчас Rosa Fresh и OpenMandriva уже заметно отличаются друг от друга. И если сборка Rosa Desktop Fresh R7 с рабочим столом Plasma5 мною уже неплохо изучена (это моя основная система сейчас), то аналогичную тестовую систему от сообщества OpenMandriva я увидел только сейчас.

Встречайте новинку:

f65d67dac60dc5fa5ac8a9248b9c4543ef58b583

Скачать и попробовать сборку можно здесь, обсуждение сборки традиционно ведётся на официальном форуме сообщества.