Значок приложения не работает с упаковкой Snap

Мой файл рабочего стола:

[Desktop Entry]
Name=Heimer
GenericName=Mind map application
Comment=Mind map application
Exec=heimer
Icon=heimer
Type=Application
Categories=Education;
StartupNotify=true

Мой snapcraft.yaml:

name: heimer
version: '1.1.0'
summary: Heimer is a simple cross-platform mind map tool.
description: |
  Heimer is a simple cross-platform mind map creation tool.
  Emphasis on easy diagram creation, simplicity, and speed.
grade: stable
confinement: strict
icon: ../../../data/icons/heimer.png

apps:
  heimer:
    command: desktop-launch heimer
    desktop: usr/share/applications/heimer.desktop
    plugs: [home, x11, wayland]

parts:
  gnu-heimer:
    source: ../../../
    plugin: cmake
    configflags:
      - -DCMAKE_BUILD_TYPE=Release
      - -DCMAKE_INSTALL_PREFIX=/usr
    build-packages:
      - qtbase5-dev
      - qttools5-dev
      - qttools5-dev-tools
    stage-packages:
      - libqt5xml5
    after: [desktop-qt5]

CMake устанавливает значок приложения в:

# Install icons
install(FILES data/icons/heimer.png DESTINATION share/pixmaps)
install(FILES data/icons/heimer.png DESTINATION share/icons/hicolor/64x64/apps)

Файл рабочего стола устанавливается в:

# Install .desktop files
install(FILES ${CMAKE_BINARY_DIR}/heimer.desktop DESTINATION share/applications)

Я не понимаю, в чем проблема. После установки оснастки мое приложение всегда показывает значок системы по умолчанию в панели запуска (Ubuntu 18.04). Никаких предупреждений или чего-либо еще при создании пакета или его запуске.

Примечание. Такая же установка работает для упаковки Debian. Мой пакет Debian использует точно такие же места установки, и в этом случае значок работает нормально.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
1 152
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

В настоящее время Snapcraft не обрабатывает значки записей на рабочем столе (таким образом, система не может найти значки, поскольку значки, указанные в записях на рабочем столе, отсутствуют в значок поиска в каталогах), и разработчик пакетов должен вручную исправить значение Icon на $SNAP/path/to/the/icon.{png,svg}, чтобы файлы .desktop, указанные в ключах apps._app_name_.desktop.

Вот

Я отправил предложение по улучшению этой ситуации по адресу: Предложение: ключ apps.<app-name>.icon - snapcraft - snapcraft.io

После этих шагов на рабочем столе появится значок (приложения Snap).

  1. Перейти к var / lib / snapd / рабочий стол / приложение
  2. Скопируйте .desktop (vlc_vlc.desktop)
  3. Вставьте его в Рабочий стол
  4. щелкните правой кнопкой мыши и выберите разрешить обед

Этот вопрос касается создания пакета Snap, чтобы значок на рабочем столе работал.

juzzlin 08.05.2019 10:33

Спасибо @juzzlin, после этих шагов на рабочем столе появится значок.

Abdeldjalil Elaaeieida 09.05.2019 16:05

Другие вопросы по теме