세션 외부에서 현재 데스크탑 환경을 감지합니다.

세션 외부에서 현재 데스크탑 환경을 감지합니다.

코드를 작성 중이니까본케클라이언트는 사용자가 사용하는 데스크탑 환경(주로 GNOME, KDE Plasma, XFCE, LXDE/LXQT)을 감지할 수 있습니다. 이 기능은 테마와 관련되지 않은 다양한 이유로 필요합니다.

한 가지 아이디어는 다음과 같습니다.GD버스XDG_SESSION_DESKTOP실행 중인 des를 감지하기 위해 DBus를 스캔합니다. 제가 받은 또 다른 제안은 환경 변수를 사용하는 것이었습니다 . 이 솔루션의 문제점은 boinc-client가 자체 사용자가 있는 서비스로 실행되므로 XDG_SESSION_DESKTOP다른 사용자 세션에 정의된 콘텐츠를 읽을 수 없다는 것입니다.

실제로 /usr/bin/plasmashell과 같은 특정 실행 파일을 확인하거나 실행 중인 프로세스를 검색하는 것이 가장 좋은 아이디어인지 궁금합니다.

관련 정보