xorg如何确定哪个窗口管理器正在运行

分享于 

3分钟阅读

ubuntu

  繁體

问题

是否有方法(例如命令或环境变量)确定当前会话中正在运行的窗口管理器?


如果安装了wmctrl,第一行输出


 wmctrl -m



将显示窗口管理器的名称,如果没有安装wmctrl,请使用以下命令安装它:


 sudo apt-get install wmctrl



注意,man wmctrl (那是manwmctrl的页面)部分表示:

-m显示有关窗口管理器的信息。


在Linux系统上,我测试了环境变量XDG_CURRENT_DESKTOPGDMSESSION,得到了以下结果。

可以使用此行获取输出:


printf 'Desktop: %snSession: %sn'"$XDG_CURRENT_DESKTOP""$GDMSESSION"



Ubuntu 18.04
  • XDG_CURRENT_DESKTOP=ubuntu:GNOME
  • GDMSESSION=ubuntu
  • Ubuntu 16.04

  • XDG_CURRENT_DESKTOP=Unity
  • GDMSESSION=ubuntu
  • Ubuntu 14.04

Unity与Mir一起运行

  • XDG_CURRENT_DESKTOP=Unity
  • GDMSESSION=ubuntu

注意MIR_SERVER_NAME也被设置

  • MIR_SERVER_NAME=session-$NUMBER

没有Mir的Unity运行

  • XDG_CURRENT_DESKTOP=Unity
  • GDMSESSION=ubuntu

XFCE

  • XDG_CURRENT_DESKTOP=XFCE
  • GDMSESSION=xfce
  • Ubuntu 12.04

KDE

  • XDG_CURRENT_DESKTOP=
  • GDMSESSION=kde-plasma

Unity 3d

  • XDG_CURRENT_DESKTOP=Unity
  • GDMSESSION=ubuntu

Unity 2d

  • XDG_CURRENT_DESKTOP=Unity
  • GDMSESSION=ubuntu-2d

  • XDG_CURRENT_DESKTOP=GNOME
  • GDMSESSION=gnome-shell

GNOME经典模式

  • XDG_CURRENT_DESKTOP=GNOME
  • GDMSESSION=gnome-classic

Gnome经典(无效果)

  • XDG_CURRENT_DESKTOP=GNOME
  • GDMSESSION=gnome-fallback
  • 其他基于Ubuntu的发行版

Mint 13 (简体中文)

  • XDG_CURRENT_DESKTOP=GNOME
  • GDMSESSION=cinnamon

Mint 16 (KDE版本)

  • XDG_CURRENT_DESKTOP=KDE
  • GDMSESSION=default

Mint 17 (简体中文)

  • XDG_CURRENT_DESKTOP=X-Cinnamon
  • GDMSESSION=default

Lubuntu 12.04

  • XDG_CURRENT_DESKTOP=LXDE
  • GDMSESSION=Lubuntu

瓦斯塔14.04

  • XDG_CURRENT_DESKTOP=X-Cinnamon
  • GDMSESSION=cinnamon

使用Gnome桌面的Wasta 14.04。

  • XDG_CURRENT_DESKTOP=GNOME
  • GDMSESSION=gnome

Ubuntu Mate 18.04

  • XDG_CURRENT_DESKTOP=MATE
  • GDMSESSION=mate

Xubuntu 18.04

  • XDG_CURRENT_DESKTOP=XFCE
  • GDMSESSION=xubuntu


Window  MAN  异或  XORG  
相关文章