런타임 시 계산되는 일부 구성을 사용하여 실행하려는 애플리케이션이 있습니다. 이를 달성하기 위해 간단히 별칭을 사용하면 잘 작동합니다. 문제는 실행 파일 자체가 여전히 존재한다는 것입니다. 따라서 .desktop 파일, 바로 가기 또는 터미널의 다른 곳에서 응용 프로그램을 시작하면 별칭을 설정하지 않으면 이 기능을 잃게 됩니다.
나는 실행 파일을 다른 곳으로 옮기고 이를 내가 원하는 방식으로 실행하는 쉘 스크립트로 대체할 가능성을 고려했습니다. 이 솔루션의 문제점은 업데이트로 인해 덮어쓸 수 있으므로 실제로 할 수 있는 작업이 아니라는 것입니다.
어떤 제안이 있으십니까? 기본적으로 실행 파일이 세션 전체에서 전역적으로 실행되는 방식을 변경하고 싶습니다.
저는 현재 아치 리눅스 KDE를 사용하고 있습니다.
답변1
당신에게는 선택권이 있습니다.
- 환경 변수, 명령줄 매개변수/옵션 또는 시작 시 실행되는 모든 항목을 포함하도록 .desktop 파일을 수정할 수 있습니다.
exec=
.desktop 파일의 줄만 수정하면 됩니다.
또는,
- 필요에 따라 실행 파일을 시작하는 실행 가능한 sh 스크립트를 생성하여 PATH에 넣을 수 있습니다.
- 참고: 스크립트에는 실행 파일과 다른 이름을 지정합니다. 바이너리 파일만 보관해야 하며 교체하거나 이동하거나 이와 유사한 것을 시도해서는 안 됩니다.
- 그런 다음 .desktop 파일을 편집하여 sh 스크립트를 실행합니다(또는 필요한 경우 별칭을 지정합니다).
어느 솔루션이든 잘 작동할 것입니다.
나는 많은 환경 변수를 설정해야 하는 일부 와인 응용 프로그램에 대해 내 시스템에서 솔루션 #2를 사용하고 있지만 전역적으로 설정할 수는 없습니다(예: .bashrc에서)... 주로 가독성을 위해 이 작업을 수행합니다. 긴 변수 목록으로 .desktop을 수정하는 것은 불편해 보이지만 스크립트에서 읽는 것이 훨씬 쉽습니다.
답변2
업그레이드를 방해하는 변경 사항을 피하는 쉬운 방법은 시스템 디렉터리가 아닌 다른 곳에 변경하는 것입니다.
홈 디렉토리에 자신의 프로그램을 위한 디렉토리를 생성하십시오. 즉, ~/bin
이를 추가 $PATH
하고 거기에 쉘 스크립트를 넣거나 데스크탑 링크를 지정하십시오.