LINUX.ORG.RU

Сделать ярлык .desktop запускаемым

 ,


0

1

Всем привет.

Имеется Ubuntu 2204 LTS Desktop.

По мануалам сделал ярлык нужного мне приложения foo.desktop на рабочем столе.

Приложение через foo.desktop запускается гуд, но для запуска на foo.desktop после создания нужно клацать правой кнопкой и выбирать Разрешить запуск.

Можно это как-то из консоли делать, чтобы правой кнопкой не жать и по меню всяческим? Чтобы было решение «из коробки» так сказать.

Для foo.desktop права +x делал, 777 делал, 755 делал…не помогает. Все равно ярлык с крестиком после создания и надо правой кнопкой жать и выбирать Разрешить запуск. Может где-то гному команду надо дать? ))

Спасибо

vsevolod@hp15:~$ ls -l /usr/share/applications/smplayer.desktop 
-rw-r--r-- 1 root root 7579 авг 13  2020 /usr/share/applications/smplayer.desktop

И другие так же, .desktop файлы это тебе не скрипты, им не нужны права на исполнение. То, что они только так запускаются с рабочего стола — просто особенность DE, что ты используешь.

Но ты можешь поместить свой .desktop файл в ~/.local/share/applications/, тогда он просто появится в меню с остальными приложениями.

Vsevolod-linuxoid ★★★★★
()
Последнее исправление: Vsevolod-linuxoid (всего исправлений: 1)

Можно это как-то из консоли делать…

Можно. В этом случае десктоп-файл не нужен вообще и на рабочем столе в частности.

А еще, в гноме всеми силами уничтожают действия с файлами на рабочем столе. Сам рассуди. Зачем тебе запуск с рабочего стола, который все время скрыт окнами программ. До стола надо еще добраться. Для легкого запуска есть панель.

andytux ★★★★★
()
Ответ на: комментарий от Vsevolod-linuxoid

да это от безысходности права ставил ))

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

И да обидно, что с ярлыками такая ерунда.

Но в английской версии, кажись, этот пункт называется «Untrasted launch». Соответственно разработчики гном стали позиционировать это как «безопасность» )

skilful
() автор топика
Ответ на: комментарий от RussianWarShip

Легко, https://specifications.freedesktop.org/desktop-entry-spec/desktop-entry-spec-latest.html

Desktop entry files should have the .desktop extension, except for files of Type Directory which should have the .directory extension. Determining file type on basis of extension makes determining the file type very easy and quick. When no file extension is present, the desktop system should fall back to recognition via «magic detection».

Each desktop entry representing an application is identified by its desktop file ID, which is based on its filename.

To determine the ID of a desktop file, make its full path relative to the $XDG_DATA_DIRS component in which the desktop file is installed, remove the «applications/» prefix, and turn ‘/’ into ‘-’.

For example /usr/share/applications/foo/bar.desktop has the desktop file ID foo-bar.desktop.

If multiple files have the same desktop file ID, the first one in the $XDG_DATA_DIRS precedence order is used.

For example, if $XDG_DATA_DIRS contains the default paths /usr/local/share:/usr/share, then /usr/local/share/applications/org.foo.bar.desktop and /usr/share/applications/org.foo.bar.desktop both have the same desktop file ID org.foo.bar.desktop, but only the first one will be used.

If both foo-bar.desktop and foo/bar.desktop exist, it is undefined which is selected.

If the desktop file is not installed in an applications subdirectory of one of the $XDG_DATA_DIRS components, it does not have an ID.

IIIypuk ★★★★
()
Ответ на: комментарий от andytux

который все время скрыт окнами программ

Хватит всё время повторять эту ложную мантру.

До стола надо еще добраться

Виртуальные рабочие столы.

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

LINUX-ORG-RU ★★★★★
()

для запуска на foo.desktop после создания нужно клацать правой кнопкой и выбирать Разрешить запуск. Можно это как-то из консоли делать, чтобы правой кнопкой не жать и по меню всяческим?

[user@localhost Desktop]$ ./foo.desktop
nvl ★★★
()
Ответ на: комментарий от RussianWarShip

Из того, с чем приходилось сталкиваться, зависит от DE или даже от конкретной версии DE. Где-то надо ставить права «исполнения», где-то нет (имеется ввиду десктоп-файл).

andytux ★★★★★
()
Последнее исправление: andytux (всего исправлений: 1)
Ответ на: комментарий от nvl

Сам-то пробовал?

avn@hi10:~$ cd ~/Desktop
avn@hi10:~/Desktop$ ls -l
total 4
-rwxr-xr-x 1 avn avn 661 июн  7  2021 avkbd.desktop
avn@hi10:~/Desktop$ ./avkbd.desktop
./avkbd.desktop: line 2: [Desktop: command not found
./avkbd.desktop: line 5: Keyboard: command not found
./avkbd.desktop: line 6: keyboard: command not found
./avkbd.desktop: line 7: клавиатура: command not found
./avkbd.desktop: line 8: --: command not found
./avkbd.desktop: line 11: Utility: command not found
./avkbd.desktop: line 12: input: command not found
./avkbd.desktop: line 13: X-GNOME-Autostart-Notify=true: command not found
./avkbd.desktop: line 14: X-GNOME-Autostart-Phase=Application: command not found
./avkbd.desktop: line 15: X-GNOME-Autostart-enabled=false: command not found
./avkbd.desktop: line 16: X-GNOME-Autostart-Delay=16: command not found
./avkbd.desktop: line 17: onboard: command not found
./avkbd.desktop: line 19: [Desktop: command not found
./avkbd.desktop: line 21: --util=florence: command not found
./avkbd.desktop: line 23: [Desktop: command not found
./avkbd.desktop: line 27: --util=onboard: command not found
./avkbd.desktop: line 28: Unity: command not found
./avkbd.desktop: line 28: MATE: command not found
avn@hi10:~/Desktop$ 
andytux ★★★★★
()