Что полезно знать о приложениях elementaryOS?

03.05.2018

Проект elementaryOS развивает собственную экосистему приложений, которые доступны для установки в фирменном магазине AppCenter. Инициатива, безусловно, хорошая и правильная. Более того, в свете недавнего выхода Ubuntu 18.04 стало окончательно ясно, что рабочий стол Pantheon в elementaryOS намного толковее и удобнее Gnome Shell, как не перекраивай последний. В общем, если вы предпочитаете мир приложений GTK3, то выбор, по большому счёту, будет сводиться к Cinnamon и Pantheon.

Но, возвращаясь к AppCenter, количество новых «курируемых» приложений (сами отцы-основатели называют их приложениями «третьего поколения») явно пошло в ущерб их качеству. Новые маленькие и аккуратные программы отлично выглядят на экранных снимках, но стоит начать ими пользоваться — халтура лезет изо всех щелей. В этом небольшом обзоре я хочу показать скудную функциональность и малую полезность этих приложений. Это становится понятным, если сравнить их с аналогичными программами в составе KDE Plasma (кстати, Kubuntu 18.04 весьма неплох…).

Итак:

1. Desktop Folder — позволяет разместить на рабочем столе elementaryOS папку с файлами, картинку, заметки и т.п.

Desktop

Наиболее очевидная аналогия — стандартная организация рабочего стола в KDE Plasma. Если щёлкнуть правой кнопкой мыши по рабочему столу, выбрать пункт Настроить рабочий стол… и в поле Тип комнаты выбрать значение Рабочий стол по умолчанию, то вы сможете размещать на рабочем столе разнообразные виджеты — плазмоиды. Один из них называется Просмотр папки, и он делает именно то, что пытались скопировать поклонники elementaryOS.

Screenshot_12.png

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

123

Лишний раз напомню, что данный плазмоид является неотъемлемой частью рабочего стола KDE Plasma, ничего дополнительно скачивать или доустанавливать не надо. В списке доступных плазмоидов есть куча других интересных штук, включая заметки и т.д.

2. AppEditor — редактор меню для elementaryOS. Появление подобных сторонних программ для, казалось бы, простых и стандартных действий, говорит об изначальной ущербности и примитивности что Gnome 3, что elementaryOS. Какой смысл было сначала всё упрощать, выкидывая из системы якобы ненужные функции, чтобы потом их потихоньку возвращать в виде костылей и подпорок?

Menueditor

Гораздо правильнее иметь встроенный в рабочее окружение редактор меню, который не просит есть и всегда доступен:

124

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

Screenshot

Однако же, проблема в том, что при интенсивном использовании Color Picker вовсе не так удобен как кажется. Это станет очевидным после того, как вы попробуете одноимённый плазмоид из стандартной поставки KDE Plasma. У него нет «лупы», но зато есть другие полезные свойства. Во-первых, это плазмоид, следовательно, его можно разместить не только на рабочем столе, но и на любой панели, благодаря чему он вообще не будет загораживать собою что-то на экране.

Screenshot_13

Во-вторых, у этого плазмоида (как и у любого другого) есть возможность привязки к комбинации клавиш клавиатуры.

125

Это очень удобно: вместо наматывания километража мыши, вы просто нажимаете придуманную вами же комбинацию на клавиатуре, и плазмоид сразу же переходит в режим «пипетки».

4. Nimbus — прогноз погоды. Про эту позорную поделку я уже писал. В принципе, тут нечего добавить, т.к. любая альтернатива будет лучше Nimbus по определению.Weather

На моём рабочем столе эта программа показывает погоду так:

Screenshot_14

Фаренгейт убер аллес, лучше не скажешь! Не буду показывать здесь лишний раз великолепный Weather Widget, лучше посмотрите на другой достойный плазмоид:

Screenshot_15

Достаточно оценить количество информации, которую показывает Yahoo Weather Widget и сравнить с Nimbus…

И ещё кое-что напоследок. Желание владельцев elementaryOS собрать с населения денег вполне понятно, но то как это реализовано вызывает ассоциации с окном Овертона. Смотрите сами:

Updates

У всех обновлений теперь есть метка Платно/Бесплатно. У большинства компонентов, естественно, стоит пометка Бесплатно, как у драйверов для Virtualbox на картинке выше. Однако, если раньше бесплатность обновлений была очевидной и не требовала уточнений, то теперь эта невинная пометка говорит нам о том, что чисто теоретически, когда-нибудь, некоторые обновления могут стоить несколько долларов. Почему бы и нет, в конце концов?

Вот такие пироги…

 

Реклама

Будущее наступает

30.03.2018

Прочитав заметку Кая Уве о глобальном меню в Plasma 5.13, я уже приготовился было ждать июня, когда эта версия официально выйдет, однако меня ждала хорошая новость! В новой версии openSUSE Leap 15.0, которая тоже ещё не вышла, но уже довольно давно доступна как бета-версия, уже давно всё сделано и работает! Напомню, что речь идёт о поддержке глобального меню не только для Qt-приложений, но и для GTK-программ. Это значит, что в Plasma теперь можно добиться гораздо лучшей интеграции чужеродных приложений (не основанных на Qt5) и наслаждаться отличным и единообразным видом программ, использующтх разные графические библиотеки.

Картинки покажут всё лучше слов, поэтому смотрим:

Screenshot_20180330_004552

Для начала — список установленных пакетов, без которых ничего получится

Затем нужно просто добавить на рабочий стол верхнюю панель с меню приложений. В Plasma 5.12 это стало проще, так как больше не нужно идти в настройки стиля и выбирать там расположение меню. Теперь вы просто добавляете стандартную панель с меню и всё происходит автоматически. Так, к примеру выглядит у меня Gimp:

Screenshot_20180330_005111

А так — Inkscape:

Screenshot_20180330_005222

C Libreoffice нужно немного повозиться. Во-первых, потребуется установить VCL-плагины для интеграции пакета c GTK2 и GTK3 (увы, VCL-плагин для KF5 разрабатывается, но пока не готов). В openSUSE это пакеты libreoffice-gtk2 и libreoffice-gtk3. Затем нужно запустить любой из нужных вам компонентов, предварительно объявив переменную SAL_USE_VCLPLUGIN, например так:

SAL_USE_VCLPLUGIN=gtk oowriter

Результат:

Screenshot_20180330_005713

Это просто кра-со-та! Теперь в моём любимом KDE глобальное меню почти так же универсально как и в macOS, и уже явно не хуже чем vala-appmenu, которое работает в XFCE и Mate.

 

UPD.

Среди Linux-блогеров, которых я читаю, есть некий Alex285, являющийся большим фанатом Gnome. Он ведёт интересный блог World of Gnome (WOGUE), откуда удобно узнавать о самых свежих новостях, связанных с Gnome. Я слежу за этой темой для того, чтобы знать, что из себя представляет современный Gnome Shell и мир GTK3-приложений. Вдруг, в какой-нибудь параллельной вселенной или мире розовых пони так случится, что Gnome станет быстрее, удобнее и надёжнее чем KDE Plasma, и тогда мне придётся перейти в стан гномолюбов — хотя бы для того, чтобы оставаться честным с самим собой. К счастью, в реальном мире  всё происходит ровно наоборот: последние версии Gnome (3.22-3.28) работают в моём VirtualBox заметно медленнее чем Plasma, а про убогий набор функций Gnome можно говорить бесконечно.

Так вот, этот самый блогер внезапно очень нервно и агрессивно отреагировал на новость про глобальное меню в KDE. Дескать, это всё не нужно и вообще, вместо меню разработчикам нужно работать над стандартным API приложений, чтобы их функции были доступны из HUD (это такая вываливающаяся сверху область уведомлений со строкой поиска). На это мне есть что сказать: я прекрасно понимаю природу гнева гномовода по поводу глобального меню в KDE. Причина здесь в зависти и бессильной злобе от того, что в конкурирующем настольном окружении хорошо работают штуки, которых в Gnome нет и в ближайшее время точно не будет. У нас есть KRunner (лучшая в своём классе реализация HUD), но самое главное — в KDE меню приложений можно настраивать. Его можно оставить в окне самого приложения, можно закинуть в кнопку в заголовке окна, можно вынести в отдельный плазмоид на панель, можно вообще отключить. Любой, кто пытался освоиться в Gnome Shell, может подтвердить убогость, бедность и малую информативность как оболочки в целом, так и отдельных GTK3-программ. Пользователь Gnome не видит какие программы у него запущены, но он также не видит функций по управлению документом, открытым в GTK3-программе до тех пор, пока не перейдёт к этой программе. Эта «слепота» приводит к тому, что в Gnome нужно тратить дополнительное время на то чтобы постоянно переключаться между обзором запущенных программ и рабочим приложением, а потом отдельно искать, где у приложения меню (и есть ли оно там вообще). Современные тенденции в развитии GTK3 приводят также к тому, что цельность таких рабочих окружений как XFCE и Mate размывается и становится эклектичной. Говоря по-русски, вместо продуманного рабочего стола вы рискуете получить помойку, щедро сдобренную фантазиями дизайнеров Gnome. По этой, и по многим другим причинам, KDE Plasma — лучший рабочий стол на сегодняшний день.


Погода и донаты

19.05.2017

Поводом для этой заметки послужил выпуск операционной системы elementaryOS Loki 0.4.1, вобравший множество доработок последних месяцев.

У меня сложилось противоречивое отношение к этой системе ещё в момент выхода предыдущей крупной версии, Freya 0.3. С тех пор противоречия только усугубились 🙂

С одной стороны, нельзя не отметить традиционно высокую производительность рабочего стола Pantheon и ряд очевидно удачных находок: прекрасный терминал, отличный вывод уведомлений, удобный почтовый клиент и т.п. Я сам одно время пользовался elementaryOS в качестве основной системы, и написал тогда ставшие очень популярными заметки о всяких интересных штуках. Однако, помимо ошибок и недоработок самой системы, есть вещи, которые раздражают особенно.

В elementaryOS 0.4.1 дебютировал обновлённый AppCenter (Центр приложений), на разработку которого был объявлен сбор денег. Сбор завершился успешно, но теперь разработчики не оставляют попыток совершенно бесстыдно привлечь деньги через «добровольные пожертвования пользователей» (и это уже не первый раз!). Всё бы ничего, но нам предлагают задонатить приложения, функциональность которых не просто стремится к нуля, но и порой уходит в минус.  Нас теперь встречает такое:

loki_sucks1

 

Магазин открытый, программы (практически все) распространяются по лицензии GPL2/3, то есть их исходный код доступен всем. Но нам предлагают заплатить, кто сколько сможет. Некоторые приложения изначально помечены кнопкой «Бесплатно», за другие же по умолчанию просят небольшие суммы. Например, за стильный индикатор текущей погоды просят символический 1 доллар:

loki_sucks2

В выпадающем меню рядом с ценой можно изменить размер пожертвования: например, вам может показаться исходная сумма унизительно маленькой, и вы захотите увеличить платёж до 5, 10 или любого другого количества долларов. Для того чтобы просто установить приложения, вам каждый раз придётся расписываться в собственной жадности и вводить нищебродский 0:

loki_sucks3

Наконец, программа Nimbus установлена и запущена. Чем же она примечательна? Отвечу сразу: экстремально низким соотношением цена/качество. Это приложение просто вычисляет ваше расположение по IP-адресу и показывает для него температуру в Фаренгейтах, всего-то…

loki_sucks4

Программа Nimbus написана Даниэлем Форе, одним из создателей проекта elementaryOS. В ней нет абсолютно никаких настроек. Никаких! В данный момент я выхожу в Интернет через 4G-модем Мегафона, который показывает, что я в Москве, хотя я на самом деле в Петербурге. И плевать на то, что в Linux большинство других индикаторов погоды умеют показывать не просто населённый пункт, но и конкретный район в нём. Плевать на то, что в России, да в большинстве других цивилизованных стран, температуру меряют в Цельсиях… У меня просто нет слов. Ладно бы это была  обычная «элементарная» программа, но за неё вежливо просят ещё и заплатить. Даже в мире Apple, где исторически было принято платить за не самые сложные приложения, эти самые приложения были хотя бы качественными.

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

weather1

На мой взгляд, самый лучший погодный виджет — это Weather Widget, второй пункт сверху. Его я и поставлю. Виджет можно добавить на панель, либо на рабочий стол. Внутри имеются нужные настройки:

weather2

Weather Widget может показывать погоду для любого количества мест, используя Openweathermap, либо данные из норвежской метеорологической службы YR.no. В приведённом выше примере я добавил свой район два раза, чтобы сравнивать прогноз от двух разных поставщиков. В разделе Appearance я могу настроить то, как будет выглядеть виджет на панели, установить время отображения и включить отрисовку метеограммы для yr.no:

Screenshot_20170519_132951

В разделе Units я могу установить любую комбинацию для единиц измерения:

Screenshot_20170519_133005

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

Screenshot_20170519_133047

Если же нажать на виджет, то можно посмотреть подробную метеограмму:

Screenshot_20170519_133118

Тут есть всё что нужно: температура, давление, величина прогнозируемых осадков, облачность. Информация представлена в двух видах и по часам. Я всегда могу сравнить этот прогноз с другим, аналогичным, просто нажав на Next Location:

Screenshot_20170519_133131.png

Норвежцы допускают в субботу мелкий дождик днём, а OWM — нет. Скорее всего, дождя не будет 🙂

Всю эту красоту сделал человек, не занимающийся собственным пиаром и не просящий деньги за свой виджет. Разработчикам elementaryOS есть чему у него поучиться!


Синхронизация расширений Gnome Shell

18.04.2017

gnome-shell-extension-options

Не секрет, что для успешной установки расширений Gnome Shell с сайта https://extensions.gnome.org требуется отдельное дополнение для веб-браузера, которое обеспечивало бы такую интеграцию. На данный момент, программы Mozilla Firefox, Google Chrome и Web/Epiphany (штатный браузер в Gnome) поддерживают такую функцию. Однако, если вы используете Chrome или Chromium, то вам доступна ещё одна интересная штука: синхронизация расширений Gnome Shell между компьютерами. Это возможно благодаря способности дополнения Gnome Shell Integration взаимодействовать с вашей учётной записью Google.  Таким образом, авторизовавшись в Gmail,  вы сможете автоматически синхронизировать расширения Gnome Shell между несколькими компьютерами точно так же, как и закладки в Chrome/Chromium. Причём, синхронизируются только сами расширения, но не их настройки (в случае если вы их меняли). Подробнее можно почитать тут.

Я сам не использую Gnome Shell, потому что считаю, что есть рабочие столы и получше, однако не нужно быть специалистом по ИБ, чтобы заметить очевидное:

  • Щупальца Google и раньше проникали на рабочий стол пользователей Gnome в виде почты и календаря. Теперь объятия станут ещё крепче, так как львиная доля ваших персональных настроек Gnome (а значит и предпочтений в UI/UX) будет бережно храниться гуглом;
  • Развивая предыдущую мысль, можно предположить, что в будущем делиться скриншотами можно будет проще. Например, в Google+ при создании записи будет кнопка «Прикрепить снимок моего рабочего стола», которая сама будет генерировать картинку, совпадающую (по идее) с вашим реальным рабочим столом;
  • Доступ Google к расширениям Gnome Shell создаёт мощное направление для атаки на несчастных гномосеков. При краже аккаунта Google и последующем применении специально сформированного расширения Gnome Shell, злоумышленник получит доступ к личным файлам пользователя в ~/. Это вообще кошмар!

Получается, что сделан ещё один шаг к мечте крупных корпораций — превратить наши компьютеры в тонкие клиенты!


Вот это новости!

06.04.2017
17-04-02 13-39

Те, кто используют правильный рабочий стол по умолчанию, ничего не заметят 🙂

Марк Шатлворт намедни заявил, что разработка Unity 8 и Mir будет прекращена, работа над Ubuntu Phone и использованием смартфона в качестве рабочего компьютера (режим «конвергенции») также прекращается. Сообщается, что будущая версия Ubuntu c долгосрочной поддержкой будет использовать GNOME и Wayland.

Кстати, некая обеспокоенность тем же Ubuntu Phone была ещё в январе, однако главный хипстерский веб-ресурс тогда поспешил развеять слухи и успокоить нервничавших убунтоводов. Но, как видно, нет дыма без огня, и теперь Ubuntu снова станет слегка переиначенным клоном Debian с нескучными обоями…

Со своей стороны, хочу отметить, что подобные действия Canonical объясняются банально: у компании заканчиваются деньги, и теперь настало время экономить. Параллельно этому, не так давно закрылся журнал Linux Voice, работников которого частично приютило конкурирующее издание Linux Magazine. По имеющейся у меня информации, издательство Future Publishing (журнал Linux Format) также проводит «оптимизацию расходов», увольняя часть сотрудников. Что общего у всех этих случаев? Все перечисленные компании находятся в Великобритании, экономика которой, видимо, находится сейчас не в лучшем состоянии.

Что касается рабочего стола, то GNOME, безусловно, имеет массу достоинств, но он превращает вашу систему в планшет и вообще больше похож на интерфейс мобильного устройства. В принципе, ничего плохого в этом нет, однако следует помнить, что графическое окружение планшетов и смартфонов изначально рассчитано только на потребление контента и предполагает простоту в обмен на добровольный отказ от многих функций рабочего стола. Меня это в очередной раз убеждает в том, что лучший и самый перспективный рабочий стол — это KDE Plasma.


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