Копирование 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 /. Файлы потеряли разрешение на выполнение. Я думаю, что это похожая ситуация.