Аналог «ножницам Windows» в Linux

03.03.2017

В Microsoft Windows, при всей её ущербности, имеется замечательная стандартная утилита Snipping Tool или по-русски «Ножницы». Она дополняет стандартную функциональность кнопки Print Screen и позволяет вырезать отдельные части экрана, добавляя к ними нехитрые элементы. Например, можно обвести значимую часть изображения или выделить текст маркером.

snip-win.PNG.png

В Linux  имеется множество программ для снятия скриншотов, из которых самыми лучшими являются, на мой взгляд, Spectacle и Shutter. Но ни одна программа не позволяет так удобно аннотировать экранные снимки, как Ножницы. Мне подумалось, что неплохо было бы поискать получше и всё же найти что-то похожее в Linux, — и мне это удалось. Встречайте KSnip!

snip-lin.png

Мне удалось связаться с Дамиром (автором программы) и попросить его добавить в KSnip дополнительные инструменты рисования (эллипс, прямоугольник и т.п.). Дамир довольно быстро отреагировал и обновил код, и теперь, начиная с версии 1.3, KSnip имеет даже больше функций, чем исходные «ножницы».

По неизвестным мне причинам, для сборки KSnip требуется компилятор GCC 4.8 (не новее) и заголовочный файлы Qt 4.


2GIS для Linux жив!

31.01.2017

Когда-то, в ноябре 2014 года, разработчики «Дубльгиса» выпустили новенькую бета-версию своего справочника для Linux. Там был чистый интерфейс на Qt5 и QML, плавная работа, возможность скачать карту любого города России и некоторых других стран… Красота! Однако же, дальше беты дело не пошло, и вскоре сайт, посвящённый новой версии 2GIS, закрылся, а разработка перспективного справочника в формате ПК-версии была прекращена. Но репозиторий со сборками дубльгиса для Ubuntu продолжал жить, и он работает до сих пор. В openSUSE имеется несколько частных репозиториев с rpm-пакетами 2GIS. В подобном пакете, на самом деле, содержится не сама программа, а скрипт, который вытягивает deb-пакет из сети и перепаковывает его чем-то вроде alien. В openSUSE 13.2 и 42.1 такой трюк работал без сучка и задоринки, но уже в 42.2 программа перестала запускаться:

2gis0.png

Очевидно, что приложение, собранное под старую версию Ubuntu 14.04, уже не может запускаться в более новых версиях Linux. Забавно, что неосиляторы с Гиктаймса в подобной ситуации сдались ещё раньше: на этапе установки пакета. Однако я не первый раз запускаю проприетарный софт в Linux и знаю, что большинство подобных программ (XnRetro, Dropbox, Skype и т.п.) поставляются с собственным набором некоторых системных библиотек. Всегда можно попробовать удалить одну или несколько таких библиотек и посмотреть как программа попытается использовать общесистемные. Короче говоря, если избавиться от файла /usr/lib/2GIS/v4/lib/libpthread.so.0, то Дубльгис прекрасно запускается и работает:

2gis.png

 

 


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

 


Ретро-смартфоны: личный опыт

22.11.2016

20161122_102830

Недавно я приобрёл Nokia N8 — знаменитый бизнес-смартфон из 2010 года, некогда флагман всей линейки Nokia. В те времена данная модель стоила запредельно дорого и позиционировалась как конкурент iPhone 4. Интересно то, что сейчас, в конце 2016 года, несколько фирм всё ещё продают новые Nokia N8. Аппарат стоит где-то 5-6 т.р. Если брать б/у через частные объявления, то цена составит 2-3 т.р., в зависимости от состояния.

В чём же смысл покупки морально устаревшего смартфона 6-летней давности?

  • Во-первых, у него шикарная фотокамера, которая очень хорошо снимает. Для сравнения, я приведу снимок Samsung Galaxy Alpha (SM-G850F) и такой же кадр, снятый на Nokia N8:

20161121_192126

Вечерняя съёмка на SM-G850F (Galaxy Alpha). Выбран самый чёткий кадр. Для просмотра в полный размер откройте изображени в новой вкладке.

2016-11-21-004

Тот же кадр, снятый на Nokia N8. Здесь выше чёткость и больше деталей (заметно по надписи на воротах), плюс нет такой агрессивной пост-обработки. Для просмотра в полный размер откройте изображение в новой вкладке.

  • Во-вторых, у Nokia N8 есть полный набор коммуникаций, включая порт mini-HDMI, отдельный microUSB, отдельный порт для зарядки, слот для карт памяти, 3G, Bluetooth и много чего ещё. У меня есть переходник mini-HDMI-HDMI и переходник для USB, что позволяет подключить смартфон к монитору, вставить маячок для мышки и клавиатуры (либо подцепить мышь по Bluetooth) и работать почти как на настольном компьютере. Nokia N8 умеет даже печатать на принтере! Плюс ко всему, аппарат можно при этом параллельно держать на зарядке;
  • В-третьих, у Nokia N8 есть режим USB-хоста, который не жалуют производители современных смартфонов. В результате, Nokia N8 может работать как быстрая флешка, что позволяет быстро и удобно забирать с неё файлы (например, фото), или закидывать их на смартфон. Кстати, телефон сам может читать флешки (через переходник);
  • В-четвёртых, Bluetooth-модуль в аппарате поддерживает режим DUN (dial-up network), что, опять же, уже почти не встречается в современных моделях. DUN позволяет использовать телефон в качестве беспроводного 3G-модема и заходить в интернет без обязательной раздачи Wi-Fi с телефона. На первый взгляд, смысла в этом не так много, но разница всё же есть: в режиме модема вы контролируете весь трафик на стороне клиента (компьютера), а в режиме Wi-Fi Hot Spot раздача интернета контролируется сервером (телефоном). Некоторые операторы могут вообще заблокировать раздачу своего трафика по Wi-Fi, что часто и происходит.
  • Наконец, у него металлический корпус, который круто выглядит и не подвержен истиранию, а также долгая жизнь от батареи. Аккумулятор тут всего 1200 мАч, при этом аппарат легко живёт на полной зарядке трое суток.

Разумеется, использовать N8 как основной смартфон в наши дни почти невозможно. В своё время у меня был на руках аппарат Nokia 808 — самый лучший и мощный телефон на Symbian/Nokia Belle. Я пользовался им в 2013-2015 годах и всё же вынужден был с ним расстаться: несмотря на лучшую в своём классе камеру, шикарный экран и уникальный внешний вид, под Nokia Belle было слишком мало приложений, а имевшиеся программы со временем переставали работать из-за отсутствия поддержки. Nokia N8 старше 808 на два года, и характеристики у него скромнее (хотя снимает он всё равно лучше почти всех новых смартфонов, кроме топовых), но я изначально отношусь к нему как к интересной игрушке, обладающей множеством полезных функций.

Хочу сказать, что за последнее время у меня в руках побывали основные и самые интересные смартфоны Nokia до Windows-эры: 808, N9, N8. Модель Nokia N9 я поменял на уникальную Jolla C — теперь у меня есть возможность работать с SailfishOS на современном аппарате. Nokia N8 у меня пока будет трудиться в качестве 3G-модема и походного фотоаппарата с живучей батареей. Данный телефон всё ещё актуален: если вы знаете, чего хотите и не требуете от него наличия современных Android-приложений, то N8 может стать очень выгодной покупкой.


Видео-обои

10.11.2016

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

 


Скоро выйдут Fedora 25 и openSUSE 42.2

09.11.2016

Релиз Fedora 25 запланирован на 15 ноября, а openSUSE 42.2 — на день позже. На самом деле, оба этих дистрибутива я тестирую уже около месяца, установив ещё бета-версии. У меня есть некоторые наблюдения, которыми я хочу поделиться.

Fedora

25

Это очень достойный и довольно стабильный дистрибутив, который прекрасно подойдёт для домашнего использования, если вы возьмёте не официальную версию, а сборку от проекта Russian Fedora — в ней уже добавлены дополнительные репозитории, кодеки и прочие штуки, которые в обычной Федоре нужно проделывать вручную. Даже если вы не собираетесь использовать Федору как основную систему, её всегда полезно иметь где-нибудь под рукой (в виртуальной машине или на отдельном жёстком диске/разделе), потому что Федора — это всегда самая новая версия рабочего стола Gnome, передовая и самая стабильная работа новой графической системы Wayland, надёжная и стабильная поддержка UEFI и Secureboot в инсталляторе, огромный выбор стороннего ПО через систему Fedora Copr и многое другое.

Вместе с тем, пользоваться Fedora 25 Beta как основной системой затруднительно, потому что многие проекты в Copr пока не делают сборок для версии 25, многие инструменты, вроде Fedy, тоже пока поддерживают только версии Fedora вплоть до 24-й. Короче говоря, надо просто немного подождать.

В середине октября моя Russian Fedora 25 Beta вдруг перестала обновляться и вообще видеть сервера обновлений. Я догадался заглянуть на страницу состояния инфраструктуры Федоры и увидел там много красного цвета. Инфраструктура всего проекта «лежала» примерно 2 часа по вине урагана «Матфей», который вызвал наводнения и обрыв электропередач в местечке Raleigh, где и расположен дата-центр Fedora Project. Казалось бы, Fedora умеет искать местные зеркала своих репозиториев во всех частях мира, однако сам список зеркал всё равно сначала подтягивается из США. Так что при использовании стандартных настроек пакетного менеджера DNF, работоспособность Russian Fedora всё равно критично зависит от американских серверов.

openSUSE

plasma-5-8-widgets

Предыдущий релиз 42.1 мне откровенно не понравился — он был очень «сырым» и стал более-менее хорошим только через пару-тройку месяцев, когда большинство проблем разработчики наконец решили. Я использую openSUSE ещё со времён версии 10.2 и могу сказать, что за прошедшее время было много как хороших, так и неудачных релизов —  в этом смысле проект openSUSE остаётся непредсказуемым. Правы были те пользователи, которые не стали обновляться до Leap 42.1 и остались на отличных версиях 13.1 и 13.2. Но похоже, что грядущий выпуск 42.2 получится исключительно удачным. За месяц активного использования я остался очень доволен качеством и производительностью системы. Пожалуй, стоит перечислить достоинства и некоторые выявленные недостатки в openSUSE 42.2.

Достоинства:

  • Традиционно лучший инсталлятор из виденных мною. Логичный, удобный, стабильный — оно и не мудрено, ведь готовили его изначально для платной версии SUSE SLE:
  • Приятный в использовании и очень производительный рабочий стол Plasma5;
  • Огромный набор дополнительного ПО в системе openSUSE Build Service (OBS). Здесь много энтузиастов из сообщества openSUSE поддерживают свои сборки пакетов, и тут есть практически всё;
  • Пакетный менеджер Zypper, который, на мой взгляд, гораздо мощнее любого apt или urpm*. На моей практике мне удавалось легко и изящно откатывать систему к предыдущему состоянию после обновления из «левых» репозиториев, используя Zypper. Сломать пакетную систему в openSUSE практически нереально — даже загубленную систему всегда можно вернуть в строй, вычистив её от ненужных наслоений;
  • Интересные возможности бэкапа и версионирования системы благодаря файловой системе Btrfs. В последний раз я тестировал Btrfs ещё с openSUSE 13.1, и тогда меня неприятно удивила низкая производительность этой ФС на десктопе. С тех пор я всегда форматировал корневой раздел для openSUSE в ext4, но недавно я решил поставить 42.2 RC на отдельный жёсткий диск и оставил в инсталляторе настройки по умолчанию — они-то и предлагают всегда Btrfs. В итоге, установленная система показалась мне очень быстрой, и теперь мне больше не хочется менять Btrfs на ext4. Кстати, недавние тесты показывают, что Btrfs не так уж и отстаёт от конкуренток;
  • Самый удобный способ установки обновлений, что я когда-либо видел. В системном лотке Plasma5 сидит значок обновлений, который подаёт сигнал о новых версиях пакетов. Достаточно всего двух щелчков мыши — и обновления тут же скачиваются и устанавливаются!

Недостатки:

По мелочи всегда набираются ошибки, которые хоть и не сильно влияют на общее впечатления о системе, но раздражают. Так, при выходе (log out) из Plasma5 эта самая Плазма сначала замирает на пару секунд, потом с ошибкой перезапускается, и лишь после этого сеанс завершается. Есть надежда, что это исправят в ближайших выпусках Plasma 5.8.х, так что нужно просто подождать обновлений. В остальном, некоторые программы всё равно приходится собирать вручную (KEncFS, KNemo), но их немного. Русификация Plasma5 в целом на «четвёрку» — чуть похуже чем в Rosa Fresh, но мелкие огрехи не сильно портят жизнь.

Самое главное — openSUSE 42.2 ещё до своего выхода оказался очень стабильным и пригодным для использования дистрибутивом, который я могу рекомендовать всем, кто интересуется Linux.


Jolla C

31.10.2016

20161020_144710a

Приобрёл редкую модель смартфона — финский аппарат Jolla C, работающий на Sailfish OS. После недели интенсивного использования (и всего двух подзарядок) могу заявить, что аппарат мне очень нравится. Это добротная и весьма качественно сделанная плитка с 5-дюймовым экраном и довольно мощным железом внутри. Но, конечно, главная фишка Jolla C кроется в самой операционной системе. Sailfish OS гораздо эффективнее любой сборки Android, и это касается как потребления батареи, так и многозадачности: я довольно быстро привык к тому, что запущенные приложения не «засыпают» и не выгружаются по-тихому, а продолжают честно работать, как и в настольной ОС. Приложений в Jolla Store не так уж много, но всё основное есть, а если чего и не хватает, то на помощь приходит встроенный Alien Dalvik 4.4.4, который запускает приложения для Android.

Для полного контроля над ОС достаточно включить режим разработчика в настройках и — вуаля! — к вашим услугам терминал и полный root-доступ. Красота! Кстати, вместо штатного магазина приложений ничто не мешает использовать и поиск пакетов из командной строки. Я первым делом установил Zypper и далее работал так же, как и в настольной OpenSUSE.

Напоследок немного скриншотов:

 

 

20161029210352

Для Йоллы имеется не так уже мало игр. В одну из них я люблю позалипать!

 

20161031011751

Настоящая многозадачность без уловок — это просто прекрасно!

 

20161031011810

Я поставил себе тему значков Papirus, чтобы список приложений выглядел интереснее.

 

20161031011849

2.0.4.14 — самая свежая на данный момент версия Sailfish OS.

 

20161031012012

Терминал без пони — не терминал!