앱을 실행하고 데스크톱 및 /usr/share/applications/에 이름과 앱 아이콘을 표시하기 위해 *.desktop 파일을 얻는 방법은 무엇입니까?

앱을 실행하고 데스크톱 및 /usr/share/applications/에 이름과 앱 아이콘을 표시하기 위해 *.desktop 파일을 얻는 방법은 무엇입니까?

우분투 바이오닉 비버 18.04.3 노틸러스 3.26.4(파일)

*.desktop 파일은 데스크탑이나 ~/bin에 나타납니다.애플리케이션아이콘이 표시되고 파일 이름은 파일의 Name 키 값으로 대체됩니다. 아이콘을 클릭하면 관련 앱이 실행됩니다.

HP42s Reverse Polish 계산기의 Free42 에뮬레이션을 실행하기 위한 두 개의 파일(free42dec.desktop 및 free42bin.desktop)이 있습니다. 그러나 Nautilus(파일)에서는 이러한 파일이 적절한 계산기 아이콘과 함께 Free42 Decimal 및 Free42 Binary 대신 전체 파일 이름과 일반 텍스트 아이콘으로 계속 표시됩니다. 또 다른 이상한 점은 이러한 파일의 속성을 열면 기본 탭에 일반 바닐라가 표시되지만 올바르게 작동하는 다른 *.desktop 파일에는 기본 탭에 Exec 키 값이 표시된다는 것입니다.

*.desktop 파일과 관련하여 이 문제가 발생한 최초의 사람은 아니지만 검색어를 조합해도 답을 얻을 수 없습니다. 제안된 다양한 치료법을 시도했지만 효과가 없습니다. 그래서 필사적으로 이 파일 중 하나의 텍스트는 다음과 같습니다(다른 파일도 비슷합니다).

[Desktop Entry]
Version=2.5.17
Name=Free42 Decimal
GenericName=Calculator
Comment=HP42s calculator using decimal number calculations.
Exec=free42dec -skin Realistic
Path=/usr/local/bin
Icon=/usr/share/icons/free42/free42dec.png
Terminal=false
Type=Application
Categories=Utility;Application;

##Define Actions
Actions=Quit;Free42_Binary;

[Desktop Action Quit]
Name=Quit
# Kill all free42bin or free42dec instances currently running
# Exec=pkill free42*
# Kill only free42dec instances
Exec=pkill free42dec
OnlyShowIn=Unity;

[Desktop Action Free42_Binary]
Name=Free42 Binary
# You can start the alternative calc from the right-click menu
Exec=free42bin -skin KD0GLS_Full
OnlyShowIn=Unity;

누구든지 이 파일의 결함을 볼 수 있습니까? 파서나 문법 검사기를 찾으려고 했지만 문서가 도움이 되지 않았습니다. *.desktop 파일에 대한 특별한 설치 프로그램은 없는 것 같습니다.

답변1

desktop-file-validate좀 더 조사한 끝에 파일 의 구문과 구조를 확인하는 CLI 명령에 대해 알게 되었습니다 *.desktop.

.../usr/share/applications$ desktop-file-validate free42dec.desktop
free42dec.desktop: error: file contains line "?[Desktop Entry]", which is not a comment, a group or an entry

보다 "?[Desktop Entry]". 이는 ?앞에 숨겨진 문자가 있음을 나타내며 [, 이는 BigEndian 및 LittleEndian 시스템에서 이 UTF-8 파일을 읽는 방법을 나타내는 바이트 순서 표시(BOM)로 나타납니다. 더 많은 검색을 통해 dos2unixWindows 텍스트 파일을 UNIX 형식으로 변환하는 유틸리티를 얻을 수 있습니다.

$ sudo apt install dos2unix

이제 다음을 수행하십시오.

.../usr/share/applications$dos2unix free42dec.desktop
dos2unix: converting file free42dec.desktop to Unix format...

이야! 이제 파일 이름 대신 Free42 Decimal 키를 사용하여 free42dec.desktopNautilus에 파일이 나타나고 텍스트 아이콘이 Free42 Decimal 아이콘으로 변경됩니다. 이제 이 바로가기가 실행기 대시와 응용 프로그램 대시(개요)에 나타납니다. 데스크탑에 복사하면 거기에서도 클릭하여 Free42 Decimal 앱을 시작할 수 있습니다./usr/share/applicationsName

*,desktop(런처, 바로가기) 파일 의 형식, 구조 및 구문은 다음 위치에 문서화되어 있습니다.데스크탑 엔트리 사양.

관련 정보