سؤال

I need to programatically determine which window manager is running, on Linux.

Pseudocode for how it would be used:

if(WindowManagerOfOS.isKDE()){
      do.anyThing();
}

How can I do this? Is it even possible?

هل كانت مفيدة؟

المحلول

System.getenv("XDG_CURRENT_DESKTOP")

returns "GNOME" on my machine. Try it out on KDE-based box.

See also

نصائح أخرى

The official answer is that you aren't supposed to care. Both desktops honor existing standards. Both can run each others' software. What is it you are trying to do? If it's a particular service you are looking for that only one distribution ships by default, you should be probing for that instead.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top