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

 


Лицензия Jailware для браузера Opera

19.01.2017

Screenshot_20170119_134447.png

Как известно, недавно произошла утечка исходных текстов веб-браузера Opera 12, который использовал для отрисовки страниц оригинальный движок Presto. Исходный код провисел на Github и Bitbucket совсем недолго (после чего репозитории были закрыты «из-за обращения правообладателя»), но этого хватило для того, чтобы все желающие успели скачать его себе и перевыложить на другие хостинги для остальных. Для Opera 12 быстро подготовили патч, позволяющий собрать веб-браузер в любом современном дистрибутиве Linux.

И вот, из даркнета приходит новость: написана лицензия Jailware, под которой шутники лицензировали украденный код. Вот она:

JAILWARE PUBLIC SOFTWARE LICENSE
Version 1, January 2017

Software product made available under this license is based on illegaly obtained source code of proprietary software, modified or distributed in a way which is prohibited by its lawful owner or developer. Usage, redistributing or modifying of this software is considered potentially illegal, and may be punishable by international laws & laws of your country of residence.

JAILWARE PUBLIC SOFTWARE LICENSE
TERMS & CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. Use & distribute only at your own risk. Bugs and security issues are quite possible.
1. No warranty or support implied in any way. Should you go to jail or be sentenced to a fine — you’re on your own.

Я предложу собственный перевод:

ОБЩЕСТВЕННАЯ ЛИЦЕНЗИЯ НА ЗАПРЕЩЁННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ

Версия 1, январь 2017 года

Программный продукт, предоставляемый в соответствии с данной лицензией, создан на основе незаконно полученного исходного кода проприетарного программного обеспечения, изменение и распространение которого было запрещено её законным владельцем или разработчиком. Использование, распространение или модификация данного программного обеспечения считаются потенциально незаконными, и могут быть наказуемы в соответствии с международными законами и законами вашей страны проживания.

ОБЩЕСТВЕННАЯ ЛИЦЕНЗИЯ НА ЗАПРЕЩЁННОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ. УСЛОВИЯ ДЛЯ КОПИРОВАНИЯ, РАСПРОСТРАНЕНИЯ И МОДИФИКАЦИИ

0. Используйте и распространяйте данную программу только на свой страх и риск. Вполне вероятно, что вы столкнётесь с ошибками и проблемами безопасности.
1. Данная программа предоставляется без каких-либо гарантий и поддержки. Если вас посадят в тюрьму или приговорять к выплате штрафа — это ваши проблемы.

P.S.

К сожалению, практического смысла в использовании Opera 12 прямо сейчас нет — браузер постоянно падает с ошибкой вида opera-next got signal SIGSEGV at address 0000011A6F7F. Однако, есть надежда, что энтузиасты исправят код, напишут патчи и приведут «старую» Оперу в порядок. Кое-что уже сделано: вот здесь за пару дней неравнодушные граждане уже накидали 16 (на момент написанияч этих строк) баг-репортов.

Пока же можно насладиться комментариями пользователей под официальным ответом от Opera S.A.


Самые интересные Linux-программы за 2016 год

09.12.2016

В прошлом году я впервые опубликовал собственный список Open Source-программ для Linux, включив туда наиболее интересные и полезные, на мой взгляд, приложения. За прошедшие 12 месяцев я снова написал обзоры 132 новых приложений с открытым кодом, и теперь пришло время опубликовать новый список. Итак…

Nylas N1 — ультрасовременный почтовый клиент, построенный на базе веб-технологий (Electron, NodeJS, Flux, React…). В нём используется необычный подход: ваша почта прилетает не сразу на клиент, а сначала на проксирующий сервер синхронизации, к которому уже подключается клиент. Некоторое время назад команда Nylas стала брать деньги за использование их сервера синхронизации, обломав надежды множества юзверей. Недовольство добавляло то, что не всем было по душе, что их почта хранилась у третьих лиц. Но поскольку и почтовый клиент, и промежуточный сервер являются продуктами с открытым кодом, ничто не мешает вам поднять собственный сервер синхронизации на родном локалхосте и использовать современный Email-клиент, не пренебрегая безопасностью.

Sprut.io — облачный файловый менеджер. Позволяет работать с удалёнными хостами почти также, как и с обычной файловой системой. Идеально подходит для заливки контента на веб-сайты, FTP-сервера и т.п. Код проекта открыт, но возиться с компиляцией совсем не обязательно, так как программа уже упакована в виде Docker-контейнера и развёртывается очень просто.

MP3FS — очень удобный, хоть и необычный, инструмент для хранителей больших аудиоколлекций. Это файловая система, монтируемая в пространстве пользователя (FUSE) и позволяющая на лету конвертировать файлы из FLAC в MP3. Вы просто монтируете директорию с FLAC-файлами с помощью MP3FS и получаете в целевой директории «как будто» MP3-файлы. Конвертация фактически происходит при открытии файла и на более-менее мощных компьютерах вообще незаметна.

Opus — открытый аудио-кодек. Интересен очень хорошим сжатием при сохранении пристойного качества звучания. Это особенно заметно при кодировании звука с очень низким битрейтом (например 16) — в таких случаях Opus сохраняет качество звука лучше всех остальных. Почитать о достоинствах кодека можно тут. При этом, код постоянно развивается и совершенствуется.

qTox — защищённый, децентрализованный мессенджер на Qt5. Приятная особенность: это единственное Linux-приложение с открытым кодом, где хорошо и стабильно работают видеозвонки. Пересадите друзей и родственников на qTox и выкиньте Skype…

Wego — прикольный прогноз погоды для тех, кто живёт в консоли. Данные о погоде берутся у сервисов Forecast.io и  Worldweatheronline. У Wego есть HTTP-фронтенд под названием Wttr.in.

Neural-style — нейросеть, которая может объединить две картинки в одну, сохранив стилевые особенности обеих. Результаты получаются вполне творческие и злободневные🙂 Вскоре после того как данный софт был опубликован, в интернете расплодились сервисы, которые предлагают делать то же самое. Установка Neural-style довольно нетривиальная (в идеале вы должны понимать как работают Torch и модели данных для LoadCaffe). Но самое главное — работа нейросети требует огромных вычислительных ресурсов, так что я рекомендую тренироваться на изображениях небольшого размера. Ну или использовать облегчённый вариант программы.

Waifu2x — ещё одна программа, использующая нейросеть и матрицы свёртки (convolution matrix). Помнится, ещё в 2003 по похожему принципу работал Gimp-плагин Refocus, предназначенный для повышения резкости размытых изображений. В этот раз всё серьёзнее: мощный алгоритм вместе с нейросетью призваны улучшить качество растягиваемых (upscaled) картинок аниме. Но вы, конечно же, можете использовать Waifu2x и для воссоздания деталей любых изображений. Кстати, у программы есть демо-сервер, где каждый желающий может её опробовать.

Lepton  — новый формат хранения файлов. В прошлый раз я писал о FLIF, который предназначался для сжатия графики без потерь и был особенно эффективен для обработки PNG-файлов (хотя он поддерживает и прочие форматы). Lepton создан исключительно для уменьшения размера JPEG-файлов при неизменном качестве. По сути, это довольно эффективный архиватор, специально заточенный под оптимизацию хранилища: если у вас на диске хранятся миллионы картинок в JPEG, то ужать их на честные 20% всегда приятно!

OnlyOffice Desktop Editors — настольная версия офисного пакета OnlyOffice. Иными словами, это современный облачный продукт, который может работать на локальном компьютере и не требует интернет-соединения. Функционально он пока что не дотягивает ни до WPS Office, ни до LibreOffice, зато отлично читает Microsoft OOXML и очень хорошо подходит для совместной работы удалённых друг от друга сотрудников. Для Linux имеются уже готовые сборки.

QWeborf — графически интерфейс к консольной программе Weborf. Программа предназначена для удобного обмена файлами между двумя хостами, причём необязательно в одной подсети. QWeborf автоматически поднимает настроенный веб-сервер и позволяет вам поделиться файлом любого размера с любым другим человеком в интернете. Внутри уже встроен minupnpc, а значит QWeborf без лишних вопросов прорвётся за пределы вашего роутера — пробрасывать порты и настраивать NAT не нужно. Суперская вещь!


Снежный ком долгов

01.12.2016

Недавно наши финские соседи выпустили весьма смелое исследование, суть которого сводится к тому, что массивные заимствования скрывают годы отрицательного прироста ВВП в EC и США. И тут очень вовремя подоспела прекрасная инфографика, составленная по данным МВФ, Всемирного банка и ЦРУ:

lyz7xfg

В центре шарика страны с наибольшим показателем долга на душу населения, на периферии — страны с небольшим внешним долгом. Цвет отражает размер долга в процентах к ВВП страны.

Из данной картинки следует, что наиболее «развитые» страны одновременно являются и крупнейшими должниками, а с учётом приведённого выше финского исследования, становится понятно, что и ВВП этих стран на самом деле дутый. Иными словами, если убрать долги, то и экономики за ними почти не останется. Для сравнения, вот как на графике выглядят страны BRICS, куда входит и Россия:

lyz7xfg-2

Сумма ВВП стран BRICS как раз соответствует ВВП США (спасибо Китаю), а вот долгов у нас на порядок меньше. Это означает, что реальная производительная экономика находится (и в ближайшее время будет развиваться) именно в странах BRICS.


28 панфиловцев

30.11.2016

Вчера сходил на легендарный фильм «28 панфиловцев», чтобы наконец самому составить своё мнение о нём. Ранее я лишь читал рецензии в сети, возмущался совершенно скотской политикой Кинопоиска, который стал специально снижать рейтинг фильма, и смотрел лишь официальный трейлер.

0b47dda1fb29

Итак, «28 панфиловцев» — это уникальный военный фильм, совершенно не похожий на прочие фильмы о войне, ни российские, ни американские. В первую очередь, поражает правдоподобность и детализация самих батальных сцен. Немецкие танки T-III выглядят как настоящие, немцы похожи на настоящих, а психологическое напряжение наших бойцов, сидящих в осыпающихся под ударами артиллерии окопах, передаётся зрителю. В фильме очень качественный звук, отличная операторская работа, так что зрелищность боёв получилась выше всяких похвал. Да, фильм сугубо мужской и суровый, так что девушкам он наверное покажется слишком жёстким, если только они не являются фанатками игры World of Tanks (влияние игры на постановку танкового сражения в фильме заметно). Во-вторых, красной нитью через весь фильм проходит единение разных народов СССР в деле защиты общей Родины. Русский и казах за противотанковым ружьём смотрят на приближающихся немцев. Русский говорит: «Сейчас они увидят, как русские за свою землю дерутся!» Казах косится и добавляет: «Но я-то казах». Тот: «А казах что, не русский?… За Россию дерёмся, значит мы русские. Вот если за Казахстан будем воевать, вот тогда немцы увидят, как казахи за свою землю дерутся…». Казах (улыбаясь): «Договорились!».

Очень удачный и классный режиссёрский ход — это боец-малоросс, который пол фильма говорит на суржике. Боевое братство русских и украинцев на той войне показано ярко и достоверно, и это очень метко и больно бьёт идеологов нынешней киевской власти, которые провозгласили русофобию своим принципом. В «28 панфиловцах» все бойцы, независимо от национальности, это единый народ, объединённый общей землёй и общим языком.

Ещё интересно, что красноармейцы в фильме много работают — в деталях показаны сцены физического труда, что, опять же, традиционно обходится стороной в остальных военных фильмах. Нигде нет упоминаний ни о чём советском. Бойцы воюют за Россию, а политрук среди них показан просто толковым мужиком. Никаких акцентов на идеологии — только мужество, отвага, честность, братство перед лицом противника.

После просмотра стало понятно, почему от фильма так корёжит некоторых критиков. Фильм «28 панфиловцев» проводит важную черту и задаёт вопрос: «Вы с нами или не с нами? За нашу страну или против неё?» И тут нельзя отсидеться, но приходится объявить о своей позиции. Фильм и вправду получился толковым: очень зрелищные и правдоподобно поставленные сцены боёв сочетаются с правильным посылом и служат патриотическому воспитанию. Конечно, не обошлось и без слабых мест: диалоги в фильме слабоваты, это особенно заметно по первой части, когда живое общение бойцов больше похоже на зачитывание текста с бумаги. Но этот недостаток перекрывается остальными достоинствами фильма, а когда начинается основная атака немцев, ближе к концу фильма, то диалоги уже звучат жизненно и правдоподобно.

В общем, хотя бы один раз посмотреть «28 панфиловцев»обязательно надо. Это настоящий народный фильм (половина бюджета — пожертвования), очень нужный и востребованный для сохранения нашей памяти о Великой Отечественной Войне.


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

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 может стать очень выгодной покупкой.