4

我的意图

我有一张由 BitBake 生成的图像,我有兴趣将窗口管理器更改为 metacity 或类似的东西。

我的过程

我已经添加require recipes-graphics/images/core-image-x11.bb到我的核心配方中,它提供了一个简单的 Matchbox 终端窗口,但似乎没有其他功能。如果我添加matchbox-desktopand matchbox-session-sato,它会增加一点可用性,但不是我想要的。

我已将OpenEmbedded 元数据索引中层的metacity_2.34.13.bb配方中的默认包包含在我的核心图像的变量中。这会安装几个组件,包括. 如果我运行该命令,我会收到以下消息:meta-gnomeIMAGE_INSTALLmetacity/usr/bin

GLib-GIO-Message: Using the 'memory' GSettings backend. Your settings will not be saved or shared with other applications

(metacity:1124): GLib-GIO-ERROR **: Settings schema 'org.gnome.metacity' is not installed

Trace/breakpoint trap

我已经导航到/usr/share/glib-2.0/schemas并运行glib-compile-schemas .,然后运行:

startx
metacity --replace

再次。现在,输出是:

Window manager error: Unable to open X display

我还没有找到适用于我的具体情况的此错误的明确解决方案。

更新(2/29):

我现在可能已经使用以下命令找到了解决此错误的方法:

X&
export DISPLAY=:0
metacity&

在这一点上,我似乎在我的一个 VT 上运行了一些东西。我可以像glxgears在那个 VT 中那样运行演示(glxgears包含在mesa-demos配方中),但我不知道如何实际创建一个可用的环境。

我的问题

  1. 我没有使用太多来自meta-openembedded/meta-gnome(just metacity) 或meta/recipes-gnome( adwaita-icon-theme, gnome-desktop3, gsettings-desktop-schemasand gtk+3) 的东西,所以我是否错过了一些自动添加 metacity 的配方?
  2. (如果不是问题 1)我该如何解决这个错误Window manager error: Unable to open X display
4

1 回答 1

4

x11-common配方添加了一个 X 会话脚本,它将运行/usr/bin/x-session-manager: 负责启动您的桌面环境。

在 OE-Core 中实现新会话/DE 的方法是对“x-session-manager”使用update-alternatives:请参阅 matchbox-session 配方以了解默认实现和 mini-x-session 配方以获取替代方案。

mini-x-session 可能会根据您的需要进行修改,因此您无需编写新的:/etc/mini_x/session像这样的文件可能会解决问题:

# start any apps here, e.g. "my-desktop &"
exec metacity

从这个(正在运行的窗口管理器)到“可用环境”可能仍然需要大量工作,具体取决于您对可用的定义。

于 2016-03-01T09:22:08.353 回答