LINUX.ORG.RU

Возможно ли использовать переменные в .desktop файле?

 


0

1

Добрый день!

Начал делать кучу .desktop-файлов для freerdp на основе одного и заметил что тот же IP или название повторяются кучу раз в файле, и соотвественно в новом файле приходится это вручную править в нескольких местах.

Можно ли в .desktop файле как в .sh создать $переменную куда занести тот же ip и уже он встанет дальше во всех местах где указана $переменная. Чтобы в файле IP правился только в одном месте…

Или придётся создавать desktop файлы на sh который в свою очередь через переменную будет подставлять IP? Но дело в том что именно в desktop файле, помимо IP указывается то же имя. Есть поля Name, GenericName, Comment и т.д.


Ответ на: комментарий от wandrien

Очень жаль, посмотрите в примере моего desktop файла ниже, одно и тоже повторяется кучу раз. Я понимаю что не все параметры обязательны, но для того чтобы kde нормально переваривала эти файлы желательно указать хотябы всё это.

Имя и ИП повторяются по 4 раза!

[Desktop Entry]
Categories=Freerdp connections
Comment=Connect $EXAMPLE_NAME_TAG server ($EXAMPLE_IP_TAG) via FreeRDP
Icon=/usr/share/icons/breeze/applets/64/preferences-system-windows-effect-invert.svg
Exec=wlfreerdp /w:1920 /h:990 /window-position:0x0 '/t:EXAMPLE_NAME_TAG ($EXAMPLE_IP_TAG)' /u:... /p:... /v:$EXAMPLE_IP_TAG
GenericName=Connect EXAMPLE_NAME_TAG server ($EXAMPLE_IP_TAG) via FreeRDP
Name=$EXAMPLE_NAME_TAG ($EXAMPLE_IP_TAG)
NoDisplay=false
OnlyShowIn=KDE;
Path=
StartupNotify=true
Terminal=false
TerminalOptions=
Type=Application
X-KDE-SubstituteUID=false
X-KDE-Username=
oOoOo
() автор топика

У него формат «Ключ=значение», а создание переменных формат не предусматривает.

Можно создать интерактивный скрипт, подобно добавления пользователя в систему Linux (например, по команде adduser), и в нём использовать переменные, получая на выходе готовый файл .desktop. Ссылка на Desktop Entry Specification.

wonit
()