Ubuntu meld:系统上未安装 GSettings 架构

xpt*_*xpt 7 ubuntu settings gnome meld

这是一个 vanilla Ubuntu 16.04 LTS,完全基于Xubuntu 核心。所以我需要自己安装软件包。一切都很顺利,除了meld在开始时,我会得到:

(meld:4188): GLib-GIO-ERROR **: No GSettings schemas are installed on the system

[2]+  Trace/breakpoint trap  
Run Code Online (Sandbox Code Playgroud)

我找到了三个现有的答案,但没有一个适合我的案例。

按照建议,我已经重新安装了gsettings-desktop-schemas

sudo apt-get install --reinstall gsettings-desktop-schemas
Run Code Online (Sandbox Code Playgroud)

但是,它们都不起作用。

  $ ls -l /usr/share/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml   
  -rw-r--r-- 1 root root 5354 2016-03-24 16:46 /usr/share/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml

$ XDG_DATA_DIR=/usr/share/glib-2.0/schemas/ meld ...
(meld:4326): GLib-GIO-ERROR **: No GSettings schemas are installed on the system

[2]+  Trace/breakpoint trap
Run Code Online (Sandbox Code Playgroud)

我也咨询过这个,但是,那是 Redhat 6.3 服务器环境,并且 OP 将每个组件安装到自己的前缀;因此他遇到了这样的错误。换句话说,他的情况不适用于我的香草 Ubuntu。

我已经没有选择了。请帮忙。

谢谢

$ gsettings list-recursively
No schemas installed

$ lsb_release -a 
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04 LTS
Release:        16.04
Codename:       xenial

$ uname -rm
4.4.0-21-generic x86_64

$ apt-cache policy meld gsettings-desktop-schemas
meld:
  Installed: 3.14.2-1
  Candidate: 3.14.2-1
  Version table:
 *** 3.14.2-1 500
        500 http://archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
        100 /var/lib/dpkg/status
gsettings-desktop-schemas:
  Installed: 3.18.1-1ubuntu1
  Candidate: 3.18.1-1ubuntu1
  Version table:
 *** 3.18.1-1ubuntu1 500
        500 http://archive.ubuntu.com/ubuntu xenial/main amd64 Packages
        100 /var/lib/dpkg/status
Run Code Online (Sandbox Code Playgroud)

Jon*_*lin 8

来自帖子评论:尝试设置:

export XDG_DATA_DIRS=/usr/share/ubuntu:/usr/share/gnome:/usr/local/share/:/usr/share/
Run Code Online (Sandbox Code Playgroud)

这似乎是 Ubuntu 15.10 中的旧行为。经过仔细检查,现在似乎/etc/X11/Xsession.d/55gnome-session_gnomerc只有在会话(在 env var 中$STARTUP)与模式匹配时才会设置“旧值” gnome-session*。我有一个~/.xsession风格启动所以这就是为什么它不适合我。我猜 Xubuntu 可能同样$STARTUP设置为与模式不匹配的内容。

这一切都可以通过微调~/.xessionrc来自/etc/X11/Xsession.d/40x11-common_xsessionrc. 因此,您只需将XDG_DATA_DIRS本答案顶部显示的设置放入,~/.xsessionrc无论会话类型如何,都将安装所需的值。在那里您还可以覆盖您想要的会话类型等。 /etc/X11/Xsession.d/ 中的文件都按字母升序加载(来源)。