Kali 환경에서 사용자 정의 Kali Linux ISO를 구축하고 있습니다. 메인 메뉴 구조를 완전히 바꾸거나 기존 칼리를 교체하고 나만의 프로그램을 추가하고 싶습니다. 원래 Kali 설치에서 Maltego만 유지했기 때문에 kali-maltego.desktop을 수정하고 새 menu.directory를 할당해야 했습니다. 그러나 업데이트 시 sudo apt를 실행할 때마다 사용자 정의 내용을 덮어씁니다.
/usr/share/desktop-directories에서 모든 Kali 메뉴 디렉토리를 삭제하고 내 것을 추가했습니다. 또한 /etc/xdg/menus/applications-merged/kali-applications.menu의 메뉴 구조를 변경했습니다. 하지만 분명히 내가 뭔가 잘못하고 있습니다.
답변1
이러한 파일을 삭제하는 것은 확실히 올바른 접근 방식이 아닙니다. 일반적으로 패키지 시스템을 엉망으로 만드는 것은 좋은 생각이 아닙니다(이 경우 설치한 파일을 외부에서 제거).
다음 요구 사항을 충족하는 소프트웨어를 사용하는 배포판에서무료 데스크탑, 사용자 홈 파일 구조 내의 데스크탑 파일은 시스템 전체 디렉토리에 있는 동일한 데스크탑 파일보다 우선합니다. 메뉴에서 제거하려는 응용 프로그램의 모든 데스크톱 파일을 사용자의 홈 파일 구조에 복사한 다음 메뉴에서 해당 파일을 숨기는 줄을 추가하여 현재 사용자에게 속한 복사된 파일을 수정하면 이 문제를 이용할 수 있습니다.
이러한 배포판에서는 다음과 같이 XYZ
사용자 메뉴에서 애플리케이션을 숨겨야 합니다.
cp /usr/share/applications/XYZ.desktop ~/.local/share/applications
~/.local/share/applications/XYZ.desktop
그런 다음 줄 끝에 NoDisplay=true
.
사용자 세션을 다시 시작하면 XYZ
더 이상 메뉴에 표시되지 않습니다. 다른 사용자는 계속 사용할 수 있습니다. 이는 업그레이드 후에도 지속됩니다.
이것이 어떻게 작동하는지와 몇 가지 대안에 대한 자세한 내용은 다음에서 찾을 수 있습니다.팁과 요령데스크톱 항목에 대한 ArchWiki 페이지에서.