Значок приложения не работает с упаковкой Snap - PullRequest
0 голосов
/ 09 сентября 2018

Файл моего рабочего стола:

[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 использует точно такие же места установки, и в этом случае иконка работает отлично.

Ответы [ 2 ]

0 голосов
/ 07 мая 2019

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

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

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

Вот вам

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

...