Попытка восстановить набор .desktop
файлы из Ubuntu 14.04 скопировали в 16,04, но они не появляются в Средстве запуска.
Сделал следующее (/14.04
смонтирован к старому диску Ubuntu / FS),
cd ~/.local/share/applications
cp -pr /14.04/home/ring0/.local/share/applications/[bunch-of].desktop .
но они делают не появляются после вхождения к 16,04. (тот же пользователь / uid на обеих версиях)
Взглянувший на /usr/share/applications
, но файлы находятся в .local
dir.
Рассмотрение структуры .desktop
файлы на обеих версиях, они выглядят подобными.
Что-либо еще для проверки / установка?
Спасибо
Необходимо вручную добавить его к Средству запуска Единицы, недостаточно просто поместить его в папку.
обзор к Вашему .local/share/applications
папка в Наутилусе (папка могла бы быть скрыта, таким образом, Вы, возможно, должны были бы нажать Ctrl + H )
перетаскивают .desktop
файлы с Наутилуса на Средство запуска Единицы, это должно затем появиться немедленно
Необходимо добавить их к списку избранного средства запуска. Прочитать текущий список:
~$ dconf read /com/canonical/unity/launcher/favorites
['application://nautilus.desktop', 'application://firefox.desktop', 'application://libreoffice-writer.desktop', 'application://unity-control-center.desktop', 'application://gnome-terminal.desktop', 'unity://running-apps', 'unity://expo-icon', 'unity://devices']
Для написания нового списка
dconf write /com/canonical/unity/launcher/favorites "['application://nautilus.desktop', 'application://firefox.desktop', 'application://libreoffice-writer.desktop', 'application://unity-control-center.desktop', 'application://gnome-terminal.desktop', 'unity://running-apps', 'unity://expo-icon', 'unity://devices']"
Не уверенный, если это возможно, для чтения dconf
дБ 14,04 использований chroot
, Если 14.04, все еще загрузочные, загружают его, затем используют dconf read ...
для получения списка. Иначе напишите список вручную от ls ~/.local/share/applications
.
Вы проверили, имеют ли *.desktop файлы разрешение выполнения? Я скопировал однажды (с-p опцией) на 16,04 от/usr/share/applications/до ~/.local/share/applications/. Файлы потеряли разрешение выполнения. Я предполагаю, что это - аналогичная ситуация.
Текущие ответы дают кусочки правильного подхода. В этом ответе я хотел бы предоставить более четкий обзор того, что необходимо сделать для переноса файлов .desktop
.
.desktop
файлы являются просто ярлыками для этих приложений. Если реальное приложение не установлено, копировать .desktop
файлов бессмысленно. Согласно политике безопасности Ubuntu (ссылка https://wiki.ubuntu.com/SecurityTeam/Policies ), файлы .desktop
, находящиеся в домашней папке пользователя, должны иметь исполняемый бит установить для запуска (также обсуждается по другому вопросу Ask Ubuntu здесь ). Быстрый тест подтверждает, что они не придерживаются модуля запуска, если только не установлен исполняемый бит. s> Без установленного исполняемого бита они не будут работать, и Unity сочтет такой модуль запуска приложений как ненадежный . (Обратите внимание, что если .desktop
кэшируется в памяти, он все равно может появиться на панели запуска при удалении разрешения на исполняемый файл - не обманывайте себя). s> Используйте chmod +x file.desktop
в терминале или справа - щелкнув по приложению и на вкладке «Разрешения» установите флажок «Разрешить выполнение как программу».
Еще одна потенциальная проблема - права собственности и права на чтение. Если файл принадлежит другому пользователю и группе, без прав на чтение вы не сможете получить доступ к файлу .desktop
, поэтому он не запустится и не перейдет в Unity Launcher. Решением здесь является либо sudo chmod +r name.desktop
, либо chown $USER:$USER name.desktop
.
ПРИМЕЧАНИЕ : Я зачеркнул детали, которые оказались неправильными. По очень специфической причине пусковая установка Unity отклоняется от политики безопасности.
Размещение .desktop
файлов в ~/.local/share/applications
(как было показано в комментариях) не приводит к их появлению на панели запуска Unity. Эта папка предназначена для хранения ваших собственных, пользовательских .desktop
файлов. Добавление элементов в панель запуска Unity может быть выполнено вручную или через командную строку с помощью команды gsetting
или dconf
. Однако существуют альтернативные подходы. Пожалуйста, смотрите этот пост о нескольких способах добавления .desktop
файлов в Launcher: https://askubuntu.com/a/829228/295286