Аналог «ножницам 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.

Реклама

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

 


Самые интересные 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 не нужно. Суперская вещь!


Скоро выйдут 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.


5 интересных программ для Linux

26.09.2016

В этой небольшой заметке я опишу пять интересных приложений для Linux,  на которые стоит обратить внимание. Каждая программа — коммерческое ПО с закрытым исходным кодом. В среде апологетов Open Source принято такие программы обходить стороной, но мы будем исходить из соображений прагматизма. Иными словами, если приложение годное, то почему бы им не пользоваться? Итак, поехали!

Архиватор B1FreeArchiver

1

Простой и удобный архиватор со множеством дополнительных функций. Умеет читать любые архивы, включая ZIP и RAR, и сжимать данные в ZIP, либо в свой собственный формат B1, код которого открыт. Однако сам архиватор — закрытое ПО с классической лицензией EULA. Тем не менее, скачать и использовать B1 Archiver можно совершенно бесплатно. По моему опыту, архиватор открывает «тяжёлые» архивы заметно быстрее, чем File Roller и Ark. Очень удобная штука! (ссылка).

Менеджер загрузок Flareget

2

Менеджеров загрузок для Linux существует очень много, плюс большинство пользователей вообще не парятся и скачивают файлы сразу в браузере — сейчас там везде есть опция паузы и возобновления, да и быстрый Интернет позволяет не заботиться о каких-то специальных программах… Однако, я сейчас вынужденно использую ADSL-соединение дома, поэтому идея скачивать «тяжёлые» файлы в специальной программе не лишена смысла. Flareget умеет интегрироваться с Opera и Firefox и перехватывает предложения браузера скачать какой-то файл. Внутри Flareget файл скачивается в несколько потоков (до 32 сегментов одновременно, ограничение Trial-версии — 4 сегмента). Программа платная, но даже в урезанном варианте она себя очень хорошо проявила. При медленной подключении к Сети становится особенно заметно, что в Flareget файлы скачиваются быстрее! (ссылка).

Графический редактор Pixeluvo

3

Редкий случай, когда пользователи Linux могут за деньги приобрести растровый графический редактор, который не похож ни на Gimp, ни на Krita. Основные «фишки» — встроенный проявитель RAW-файлов и наличие продвинутых функций автоматического исправления яркости, контраста и цветовых уровней. В Gimp’е вы будете возиться с ручными настройками, а тут достаточно нажать одну кнопку, и блёклая фотография сразу заиграет красками. Pixeluvo можно бесплатно пользоваться сколь угодно долго, но без покупки программы вы не сможете сохранять картинки с большим разрешением. (ссылка).

Редактор PDF-файлов Master PDF Editor

4

На мой взгляд, это самый многофункциональный PDF-редактор для Linux. Если вам приходится работать с PDF-документами без доступа к исходным файлам, то Master PDF Editor может очень пригодиться! Программа умеет извлекать отдельные страницы из многстраничных документов, поворачивать их, менять расположение объектов, заполнять динамические формы, шифровать PDF и много чего другого. Бесплатно программу можно использовать в Trial-режиме с ограничением по времени. (ссылка).

Офисный пакет Softmaker Office

5

Оригинальная разработка немецкой компании Softmaker. Для загрузки доступен полностью бесплатный пакет Freeoffice (меньше словарей и отключено сохранение в docx/xlsx/pptx) и платная версия Office. Обе версии имеют три компонента: текстовый процессор Textmaker, редактор таблиц Planmaker и мастер презентаций Presentations. Производитель заверяет в полной поддержки современных форматов Microsoft Office, но при тщательном тестировании это подтвердилось не полностью — некоторые файлы с шапками и ГОСТовскими рамками всё же лучше открываются в LibreOffice. Однако я сталкивался и с обратной ситуацией, когда лишь Textmaker мог корректно отобразить сложный docx-файл. Другое неоспоримое достоинство Softmaker Office — очень высокая скорость работы и отзывчивость интерфейса. Это особенно заметно на файлах с большим числом страниц! (ссылка).

Всем спасибо за внимание!


Вот оно что…

20.07.2016

Тестировал тут недавно Flatpak в RFRemix и обратил внимание на то, что приложения внутри песочницы не подхватывают тему оформления (если она отличается от Adwaita). Решение оказалось банальным: тема должна лежать в ~/.themes, а не в /usr/share/themes. Тогда всё работает!


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

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 это умеет делать стандартными средствами. Вот, собственно, и всё!

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