Para una de mis aplicaciones Linux, tengo la aplicación binaria, un script launcher.sh (para LD_LIBRARY_PATH) y un archivo .desktop, todos en la misma carpeta.¿Cómo puedo especificar un icono con una ruta RELATIVA para un archivo de entrada de escritorio de Linux?
Me gustaría utilizar una ruta relativa en lugar de una ruta absoluta para el icono.
He intentado:
Icon=app.svg
Icon=./app.svg
Icon=$PWD/app.svg
Icon=$(dirname %k)/app.svg
pero ninguno de estos trabajos (sólo Icon=/path/to/app.svg
). Si no es posible especificar una ruta relativa y debo usar una solución alternativa, estaba pensando que podría regenerar la ruta del icono en el archivo .desktop cada vez que se ejecuta el script launcher.sh.
¿Cuál sería la mejor manera de hacerlo? ¿Usando sed
o alguna otra utilidad de reemplazo con un pseudo-regex como Icon=([valid path chars]+)\n
quizás?
Gracias por esto ... aún así, eso es una especificación sucky. –
Claro que ... No puedo creer que nadie haya pensado en agregar compatibilidad de ruta relativa (aparentemente). –
Bueno, leí en otro lado que era un problema de seguridad: ¿qué pasaría si movieras el archivo .desktop y abrieras accidentalmente un ejecutable diferente del que pensabas ... y supongo que ese es un punto justo. Pero entonces otro método para especificar íconos hubiera sido agradable. –