Вопрос или проблема
Я хочу запустить несколько веб-страниц в виде десктопных приложений в среде Gnome. Вот требования:
- Должно работать с Google Chrome.
- Должно быть доступно как отдельная иконка приложения при нажатии Alt+Tab.
Я посмотрел на программу под названием Webby, но она, похоже, не использует Google Chrome в качестве основного браузера. На данный момент я создал свой файл .desktop и смог получить отображение приложения и иконки в лаунчере:
[Desktop Entry]
Name=Gmail
Exec=google-chrome-stable --app=https://mail.google.com/mail/u/0/#inbox
Icon=gmail-icon
Type=Application
Categories=GTK;GNOME;Office;
Это работает и позволяет мне запускать приложение в отдельном окне, однако, когда я нажимаю Alt+Tab, все еще объединено под иконкой google chrome. Я также пробовал создать символическую ссылку для пути exec, но это тоже не сработало. У кого-то есть идеи?
Это может быть не то, что вы ищете. Но если вы хотите прикрепить сайт Google Chrome на рабочий стол в качестве веб-приложения, вы можете сделать следующее:
- Нажмите на 3 точки в верхнем правом углу
- Нажмите
Дополнительные инструменты
- Нажмите
Создать ярлык...
- Установите флажок
Открыть как окно
Надеюсь, я помог!
Chrome > Версия 70
Обновление для новых версий Chrome, где не появляется флажок Открыть как окно
:
- Нажмите на 3 точки в верхнем правом углу
- Нажмите
Дополнительные инструменты
- Нажмите
Создать ярлык...
- Нажмите
Создать
- Перейдите на
chrome://apps
- Щелкните правой кнопкой мыши на новом приложении
- Нажмите
Открыть как окно
После нажатия на 3 точки в верхнем правом углу Chromium или google-chrome, нажмите Дополнительно > Создать ярлык… > Создать
Это также создает ярлык на рабочем столе, но он не будет работать, пока не выполнены эти действия.
Здесь я покажу вам, как сделать Instagram десктопным приложением.
Мы можем увидеть этот код после создания ярлыка из chromium и открытия его в текстовом редакторе
#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Terminal=false
Type=Application
Name=Instagram1
Exec=/snap/chromium/2033/usr/lib/chromium-browser/chrome "--profile-directory=Profile 1" --app-id=maonlnecdeecdljpahhnnlmhbalehlm
Icon=chrome-maonlnecdeecdljpahhnnlmhbmalehlm-Profile_1
StartupWMClass=crx_maonlnecdeecdljpahhnnlmhbmalehlm
Просто измените
/snap/chromium/2033/usr/lib/chromium-browser/chrome
или
/opt/google/chrome/google-chrome
на chromium
, google-chrome
или google-chrome -incognito
Если вы создаете несколько профилей в Google Chrome, вы можете написать так
google-chrome --profile-directory='Default'
или
google-chrome --profile-directory=Profile 1" -incognito
Например
Exec=/snap/chromium/2033/usr/lib/chromium-browser/chrome "--profile-directory=Profile 1" --app-id=maonlnecdeecdljpahhnnlmhbalehlm
будет
Exec=google-chrome --profile-directory=Profile 1" -incognito --password-store=basic --app-id=maonlnecdeecdljpahhnnlmhbalehlm
Я использовал –password-store=basic, чтобы игнорировать пароль в хранилище ключей.
Для иконки я скачал иконку приложения Instagram из интернета и указал путь так, и это сработало сразу
Icon=/home/virus-attack/Icon/Google-Chrome-Google-Chrome.ico
Теперь вы также можете прикрепить этот ярлык к своей панели
Быстрый старт
Текущий способ (я использую Chrome 130.0.6723.91 под Ubuntu 24.04.1) – это более явный “Передать, сохранить и поделиться” -> “Установить страницу как приложение”. Это работает гладко и как ожидалось. Похоже, что по умолчанию теперь открывается в отдельном окне, которое Gnome обрабатывает как независимое приложение, которое можно запускать из лаунчера с собственной иконкой.
Настройка приложения
Вверху окна есть меню ...
-> Информация о приложении
, которое позволяет вам изменить некоторые настройки, такие как Открыть как окно
(это можно отключить, чтобы открыть вкладку вместо этого).
Интересно, что файл gnome .desktop
создается и хранится в .local/share/applications
(также есть копия в .gnome/app
, но, по крайней мере, на данный момент, похоже, что она ничего не делает). Имя криптографично (автоматически сгенерированный идентификатор приложения), поэтому вам может понадобиться найти его по временной метке (например, ls -lrt .local/share/applications
) или искать по имени в самом файле (например, grep Name= .local/share/applications/*.desktop
). Здесь вы можете найти такие вещи, как командная строка для его запуска в поле Exec=
или отредактировать имя приложения. Примеров редактирования этих файлов .desktop
не так много, но ознакомление со спецификациями полезно, например:
Установка SingleMainWindow=false
позволяет вам открывать несколько окон из приложения. Например, несколько документов google doc. К сожалению, на момент написания, щелчок по ссылке будет открываться в Chrome, но вы можете сразу вернуться в приложение и легко работать с несколькими связанными документами, сохраняя вкладки в порядке.
Я просто вижу другие ресурсы в этом посте, хотя детали спецификаций могут быть устаревшими.
Ответ или решение
Для запуска веб-страниц как настольных приложений в Gnome shell с использованием Google Chrome, вам следует выполнить несколько шагов, чтобы обеспечить соответствие вашим требованиям:
Шаг 1: Создание файла .desktop
Вы уже начали этот процесс, и у вас есть базовая структура файла .desktop
. Для целей вашего запроса, вот пример того, как должен выглядеть ваш файл Gmail.desktop
, чтобы он соответствовал всем вашим требованиям:
[Desktop Entry]
Version=1.0
Type=Application
Name=Gmail
Exec=/usr/bin/google-chrome-stable --app=https://mail.google.com/mail/u/0/#inbox
Icon=/path/to/gmail-icon.png
StartupWMClass=google-chrome
Categories=GTK;GNOME;Office;
Объяснение параметров:
- Name: Имя приложения, которое будет отображаться в меню и в переключателе окон.
- Exec: Полный путь к исполняемому файлу Google Chrome, указывающий на нужную веб-страницу как приложение.
- Icon: Путь к файлу иконки. Убедитесь, что он доступен и имеет правильный формат (PNG, SVG и т.д.).
- StartupWMClass: Этот параметр помогает ссылаться на класс окна, так что Gnome сможет определить, что это отдельное приложение. Для Google Chrome он, как правило, равен
google-chrome
. - Categories: Указывает категории для приложения, что облегчает его поиск.
Шаг 2: Установка файла .desktop
Сохраните созданный файл .desktop
в директории ~/.local/share/applications/
. Это позволит ему отображаться в меню запускаторов Gnome. Чтобы ваши изменения вступили в силу, можно выполнить команду:
update-desktop-database ~/.local/share/applications/
Шаг 3: Проверка работы
Теперь вы можете проверить результат. Откройте меню приложений в Gnome и запустите Gmail через созданный вами ярлык.
Важный момент:
Для того чтобы при нажатии Alt + Tab
ваше приложение отображалось как отдельное окно, убедитесь, что:
- Правильно указаны параметры
Exec
иStartupWMClass
. - Вы отключили параметр
SingleMainWindow
, если используете несколько экземпляров приложения.
Если ваше приложение все еще не отображается отдельно, вы можете попробовать изменить иконку или имя в .desktop
файле. Это может помочь системе правильно идентифицировать отдельные экземпляры.
Альтернативный метод: Создание ярлыка через Chrome
Вы также можете создать ярлык для веб-страницы прямо в Google Chrome:
- Нажмите на три точки в правом верхнем углу Chrome.
- Перейдите в раздел Больше инструментов > Создать ярлык….
- Выберите Открыть в окне (если такое доступно).
- Нажмите Создать.
Этот метод автоматически создаст файл .desktop
в папке ~/.local/share/applications/
, который вы можете дополнительно настроить.
Заключение
Следуя представленным инструкциям, вы сможете успешно запускать веб-страницы как отдельные настольные приложения в Gnome с использованием Google Chrome. Если у вас возникнут вопросы или проблемы с реализацией, не стесняйтесь обращаться за поддержкой к сообществу или техническому специалисту.