답변:
데스크탑 파일 자체에서 다음을 통해 프로그램을 실행할 수 있습니다 env
.
Exec=/usr/bin/env VAR=value /usr/bin/yourprogram
또는 래퍼 스크립트 (예 :)를 사용하십시오 /usr/bin/yourprogram.env
.
#!/bin/sh
VAR=value
export VAR
exec /usr/bin/yourprogram.real "$@"
그러나 Unity가 래퍼를 통해 시작된 경우 Unity가 프로그램을 올바르게 추적 할 수 없으므로 솔루션이 모두 좋지 않습니다.
~/.profile
작업하는 것이 훨씬 낫습니다 . 올바른 구문을 사용하고 있는지 확인하십시오.
export VAR=value
또는
VAR=value
export VAR
또한 로그인 할~/.profile
때만 읽을 수 있으므로 변경 후 로그 아웃해야합니다.
~/.gnome/apps
아직도 사용되고 있다는 것을 몰랐다 ; ~/.local/share/applications
지난 몇 년간 불려 왔다.) @ 마이크가 자신의 응용 프로그램이라면 왜 적절한 환경 변수를 자동으로 결정하도록 고칠 수 없는가? (또한 어떤 변수를 구체적으로 설정 했는지 물어볼 수 있습니까?)
.desktop
사용 하여 파일을 설치했습니다 xdg-desktop-menu install <my-desktop-file>
. 두 위치로 복사 한 것 같습니다. 항상 잘못된 위치를 편집하고있었습니다.
env VAR=value /my/app
가 없습니다. 시작할 때 환경 변수VAR
가 설정되어 있지 않습니다 (에서 파일을 편집하여 시도했습니다 ). 래퍼 스크립트를 만드는 것은 나에게 선택 사항이 아닙니다. 이것은 최종 사용자에게 배포 된 응용 프로그램에서 작동해야하며 최종 사용자가 래퍼 스크립트를 배치 할 위치를 모르겠습니다 (런처를 만드는 데 관리자 권한이 필요하지 않아야 함) ).value
/my/app
desktop
~/.gnome/apps