GNOME, KDE 또는 기타 데스크탑 특정 프로그램/라이브러리/파일을 사용하지 않고 어떻게 사용자 아이콘 테마를 결정할 수 있습니까?
pyxdg
사용자 아이콘 테마를 결정하는 방법에 대한 라이브러리나 xdg 사양에서 아무것도 찾을 수 없습니다.
xdg-* 명령줄 도구도 이 작업을 수행하지 못합니다. 특히 다음과 같습니다.
$ xdg-settings --list
Known properties:
default-web-browser Default web browser
이것이 "알고 있는" 유일한 설정입니다!
GNOME의 경우 다음을 사용하여 이를 수행할 수 있습니다.
$ gsettings list-recursively | grep icon-theme
org.gnome.desktop.interface icon-theme 'ubuntu-mono-dark'
그러나 이것은 다른 곳에서는 작동하지 않습니다!
더 구체적으로 말하자면, 내 문제는 pyxdg
테마 이름을 명시적으로 전달하거나 라이브러리의 해당 전역 변수를 직접 설정하지 않는 한 라이브러리가 많은 응용 프로그램에 대한 아이콘을 반환하지 않는다는 것입니다. 그래서 나는
- 설치된 모든 테마를 직접 찾아야 하고(추가 추악한 코드가 많고 pyxdg도 그렇게 하지 않음) 모든 테마를 검색해야 할 수도 있습니다(느림).
- 아니면 현재 테마의 이름을 찾아야 합니다(데스크톱 환경에 따라 추가로 보기 흉한 코드, xmonad와 같은 사용자 정의/최소 설정은 어떻습니까).
따라서 이것은 pyxdg
xdg 표준을 구현한다고 주장함에도 불구하고 이를 수행하지 않습니다. 이로 인해 지정되지 않은 이유/이유가 궁금합니다.
답변1
글로벌 아이콘 테마 설정이 없으므로 원칙적으로는 할 수 없습니다. KDE 아이콘 테마를 변경해도 그놈 응용 프로그램의 아이콘은 변경되지 않습니다.
KDE 응용 프로그램은 GNOME 데스크탑 환경에서 실행될 때 GNOME 테마 설정을 사용합니다. 이는 전역 설정 때문이 아니라 Qt 툴킷이 GNOME 테마를 감지하고 사용하는 메커니즘을 추가했기 때문입니다. 이는 여전히 궁극적으로 GNOME 관련 설정이며 다른 데스크탑 환경으로 전환하면 유지되지 않습니다.