Копирование Unity Launchers с 14.04 по 16.04
Пытаясь восстановить кучу .desktop файлы из Ubuntu 14.04 скопированы в 16.04, но они не отображаются в Launcher.
Сделал следующее (/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 реж.
Глядя на структуру .desktop Файлы в обеих версиях выглядят одинаково.
Что-нибудь еще, чтобы проверить / настроить?
Спасибо
4 ответа
Вам нужно вручную добавить его в Unity Launcher, недостаточно просто поместить его в папку.
перейдите к вашему
.local/share/applicationsпапка в Nautilus (папка может быть скрыта, поэтому вам может понадобиться нажать Ctrl+H)тащить, тянуть
.desktopфайлы из Nautilus в Unity Launcher, он должен появиться мгновенно
Вы должны добавить их в список избранного Launcher. Чтобы прочитать текущий список:
~$ 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 файлы.
- Актуальные приложения должны быть установлены в новой системе.
.desktopфайлы являются просто ярлыками для этих приложений. Если само приложение не установлено, копировать его бессмысленно.desktopфайлы. Согласно политике безопасности Ubuntu (ссылка https://wiki.ubuntu.com/SecurityTeam/Policies),
.desktopфайлы, находящиеся в домашней папке пользователя, должны иметь установленный исполняемый бит для запуска (также обсуждается здесь другой вопрос Ask Ubuntu).Быстрый тест подтверждает, что они не придерживаются модуля запуска, если только не установлен исполняемый бит.Без установленного исполняемого бита они не будут работать, и Unity сочтет такой модуль запуска приложений ненадежным.(Обратите внимание, что если.desktopкэшируется в памяти, он все равно может появиться на панели запуска, когда вы удаляете разрешение на выполнение - не обманывайте себя).использование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файлы для запуска: /questions/249455/ubuntu-1604-kak-dobavit-udalit-zakreplennyie-prilozheniya-v-unity-launcher-chere/249460#249460
Вы проверили, есть ли у файлов *.desktop разрешение на выполнение? Я скопировал один раз (с опцией -p) 16.04 из / usr / share / Applications / в ~/.local/share/ Applications /. Файлы потеряли разрешение на выполнение. Я думаю, что это похожая ситуация.