вторник, 18 августа 2015 г.

Создаем значок запуска для работы WEB-приложений

Простой и удобный способ для работы с WEB-приложениями. Инструкция для Firefox и Chromium/Google Chrome...



Многие пользователи заметили, что разработчики все чаще используют облачные сервисы и выпускают вместе с десктопными вариантами версии для браузеров, так называемые WEB-app. Этому есть множество примеров, таких как PIXLR, SkypeWEB, WebogramMS Office Online и т.д.
Конечно некоторым пользователям не нравится новая тенденция разработчиков - засунуть плееры, мессенджеры, офисные и другие программы в WEB. Хотя зачастую эти программы уступают в функционале нативным, но все-таки иногда кажутся более удобными. К примеру, тот же Skype, который требует 32-битные библиотеки для работы и вообще является проприетарным ПО, которое было уличено не раз в шпионстве и других темных делишках :) Но пост не об этом...
Собственно, зачем делать какой-то WEB-app? Если легко можно открыть браузер и перейти по нужной ссылке на WEB-приложение или просто установить расширение. Тут дело каждого. Во-первых, при использовании обычного браузера у вас будет много лишних панелей, вкладок и кнопок, что будет отвлекать от работы и занимать ценное пространство на рабочем столе. Во-вторых, если использовать расширение, то возрастет нагрузка на ОЗУ. Ведь мы знаем, что современные браузеры жадные на оперативную память, да и не все еще браузеры имеют эти самые расширения-приложения. Поэтому лучшим и самым практичным вариантом является создание своего WEB-app, удобного и практичного.
Первым делом создаем значок запуска. Я на примере покажу создание значка для MS Office Online Word.
Создаем файл значка:
kate ~/.local/share/applications/'MS Word Online.desktop'
Теперь прописываем необходимые параметры:
[Desktop Entry]
Name=MS Word Online
GenericName=MS Word Online
Exec=chromium-browser --app=https://office.live.com/start/Word.aspx?omkt=ru-RU
Terminal=false
Type=Application
Icon=ms-word
Categories=Network;WebBrowser;
StartupWMClass=office.live.com__start_Word.aspx
StartupNotify=true

Где,
  • Name - имя приложения
  • GenericName - системное имя приложения
  • Exec - команда запуска
  • Terminal -  запуск в Терминале
  • Type - Тип значка запуска
  • Icon - иконка
  • Categories - категории для приложеия
  • StartupWMClass - класс приложения
  • StartupNotify - нотификация запуска
Самыми главными критериями в этой настройке являются Exec и StartupWMClass, остальные параметры вы можете установить на свое усмотрение.
Опция  --app=Ссылка_на_приложение - имитирует запуск WEB-приложения (отключаются вкладки, строка поиска, кнопки и т.д.).
А опция StartupWMClass=класс_окна, задает значку запуска класс приложения, чтобы назначить иконку для приложения (без этой опции будет использована стандартная иконка браузера). Узнать класс окна можно в Терминале, введя команду и щелкнув мышкой по окну браузера с открытой ссылкой WEB-приложения:
xprop WM_CLASS


А как же Firefox? - спросите вы. Да, я долго пытался гуглить в поисках заветной опции, но так ее и не нашел. Но все-таки есть костыль, который нам поможет. Его суть заключается в использовании отдельного профиля и стиля отрисовки интерфейса с помощью css. Тоже не требует каких-либо расширений и сторонних программ, все делается штатными средствами.
Первым делом создадим новый профиль для WEB-приложений:
firefox --ProfileManager
Назовем его, к примеру web. Также не забудьте установить профиль Default по-умолчанию, так будет удобней, чтобы не задавались вопросы при старте браузера о выборе профиля.


Теперь создадим папку для стиля и за одно сам css-стиль:
mkdir -p ~/.mozilla/firefox/$(ls ~/.mozilla/firefox | grep web)/chrome
kate ~/.mozilla/firefox/*.web/chrome/userChrome.css
И отключим нафиг все ненужное:
#tabbrowser-tabs{display: none !important;}
#newtab-search-container, #newtab-search-logo { display:none !important; }
#personal-bookmarks { display:none!important; }
#nav-bar { display:none!important; }

Вот и всё, остался наш значок запуска.
Создаем:
kate ~/.local/share/applications/'MS Word Online.desktop'
И прописываем необходимые параметры:
[Desktop Entry]
Name=MS Word Online
GenericName=MS Word Online
Exec=firefox -P web https://office.live.com/start/Word.aspx?omkt=ru-RU
Terminal=false
Type=Application
Icon=ms-word
Categories=Network;WebBrowser;
StartupNotify=true

Как и в Chromium, тут особую роль играет поле Exec. Опция -P web, указывает наш новый профиль. К сожалению другую иконку так и не удалось назначить, StartupWMClass не срабатывает ((


На этом всё, удачного вам сёрфинга :)


3 комментария:

  1. Хотел бы сказать админу блога огромное спасибо за этот ламповый и уютный блог где можно найти всю нужную информацию по кубунту.Знаком с блогом с 2013 года и мне кажется этот блог самый лучший блог по кубунту в русском сегменте интернета. Желаю дальнейшего развития и всех благ.Вообще спасибо огромное!

    ОтветитьУдалить
    Ответы
    1. Спасибо за добрые слова, очень приятно, что мои статьи кому-то помогают. Будем стараться дальше...

      Удалить
  2. Подскажите, как добавить значок-ссылку на рабочий стол активной комнаты. Делал так: добавляю значок firefox-a, пишу в нем типа firefox -new-window "https://vk.com/feed". Может быть есть более быстрый способ?

    ОтветитьУдалить