Как пометить файл рабочего стола как доверенный в 18.04

В Ubuntu 18.04, когда пользователь нажимает на пользовательский файл рабочего стола, программа отображает сообщение о том, что запускаемое приложение не является доверенным, и запуск может быть небезопасным. На рабочем столе также не отображается правильный значок для файла рабочего стола.

Как можно пометить, что приложение запускает файл рабочего стола как надежный, чтобы сообщение не отображалось, и ICON также отображается на рабочем столе.

Я пытался с помощью

chmod +x *.desktop

как предложено в некоторых запросах, но это не похоже на работу в 18.04.

8 ответов

Ни один из ответов, предоставленных до этого момента, не содержал информацию о том, как вы можете сделать это неинтерактивным способом. Что если я захочу написать сценарий создания лаунчера и сделать его доверенным, не нажимая на него?

Этот вариант использования уже рассматривается в этом вопросе с этим ответом. Я дублирую эту информацию здесь, потому что этот вопрос было намного легче найти, и он не является строго дубликатом, потому что вопрос здесь больше по объему.

Чтобы установить модуль запуска в качестве доверенного из командной строки, выполните:
gio set /path/to/your/launcher.desktop "metadata::trusted" yes

Сделав это, нажмите F5 на рабочем столе или в текущей папке, чтобы обновить вид. Лаунчеру теперь нужно доверять.

Существуют определенные условия, которые должны быть соблюдены (владение, запуск программ, запуск gio как правильного пользователя). Посмотрите ответ Сандера для полного списка, и не забудьте проголосовать за него, если это сработает для вас.

  • Сначала установите исполняемый бит файла.desktop, как вы уже сделали. Вы также можете сделать это, щелкнув правой кнопкой мыши файл в диспетчере файлов и установив свойство исполняемого файла на вкладке "Разрешения" диалогового окна "Свойства", если вам это проще, чем в командной строке.
  • Теперь попробуйте снова запустить значок, дважды щелкнув по нему. Снова появляется диалог, но обратите внимание: это другой диалог. На этот раз нажмите кнопку "Запустить и довериться", и ваш файл рабочего стола теперь превратится в функциональный модуль запуска с нужным значком.

После нескольких часов поиска я наконец-то обнаружил, что вызывает мою проблему с файлами.desktop, которые никогда не были доверенными и не отображали значки:

Измените владельца на свое имя пользователя (у меня был установлен root, который ломал вещи):

sudo chown $USER:$USER ~/.local/share/gvfs-metadata/home*

благодарность @George Udosen, который помог мне исправить это: GVFS-WARNING **: невозможно инициализировать дерево метаданных /home/user/.local/share/gvfs-metadata/home: open: разрешение отклонено

И просто чтобы добавить к ответу b_laoshi - после обновления с 16.04 по 18.04 у меня был рабочий стол, полный ссылок Steam, я не хотел открывать каждую игру, а затем выходить, чтобы доверять им

for i in ~/Desktop/*.desktop; do    gio set "$i" "metadata::trusted" yes ;done

Никогда не следует доверять коду из stackoverflow, не зная, что он делает:

  • задавать "$i" в свою очередь, полный путь к каждому файлу на вашем рабочем столе с именем desktop
  • бежит

    gio set </home/path/to/your/whatever.desktop> "metadata::trusted" yes
    

    для каждого

  • done отмечает конец цикла

Я создал .desktopфайл, и он был заблокирован. Затем я сделал его исполняемым, а затем у меня появилось всплывающее окно, которое позволило мне запустить приложение. Наконец, я скопировал файл рабочего стола в /usr/share/applicationsТеперь запускается без всплывающего окна.

Установите правильное имя пользователя и имя группы для определенного файла рабочего стола (chown) . Теперь попробуйте запустить снова, появится диалоговое окно и нажмите кнопку "Запустить и довериться".

У меня ничего из этого не сработало, кроме удаления gvfs-metadata

sudo rm ~/.local/share/gvfs-metadata/home

Это отлично сработало для меня: просто щелкните правой кнопкой мыши, выберите разрешения и установите флажок «Разрешить выполнение этой программы» или что-то подобное.

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