Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error: GLib-GIO-ERROR: Settings schema 'org.blueman.general' is not installed #274

Closed
hlechner opened this issue May 3, 2015 · 10 comments
Closed

Comments

@hlechner
Copy link

hlechner commented May 3, 2015

The last commit that I can use is: e698736 (Mar 5)

Here the error I'm facing on latest git version (abf2b30):

/usr/bin/blueman-manager:54: Warning: The property GtkAlignment:left-padding is deprecated and shouldn't be used anymore. It will be removed in a future version.
  self.Builder.add_from_file(UI_PATH + "/manager-main.ui")
/usr/bin/blueman-manager:54: Warning: The property GtkAlignment:right-padding is deprecated and shouldn't be used anymore. It will be removed in a future version.
  self.Builder.add_from_file(UI_PATH + "/manager-main.ui")
/usr/bin/blueman-manager:54: Warning: The property GtkAlignment:xalign is deprecated and shouldn't be used anymore. It will be removed in a future version.
  self.Builder.add_from_file(UI_PATH + "/manager-main.ui")
/usr/bin/blueman-manager:54: Warning: The property GtkAlignment:xscale is deprecated and shouldn't be used anymore. It will be removed in a future version.
  self.Builder.add_from_file(UI_PATH + "/manager-main.ui")
_________
Load (/usr/lib/python2.7/site-packages/blueman/main/PluginManager.py:60)
['PulseAudioProfile', 'Services'] 
_________
__load_plugin (/usr/lib/python2.7/site-packages/blueman/main/PluginManager.py:133)
loading <class 'blueman.plugins.manager.Services.Services'> 
_________
__load_plugin (/usr/lib/python2.7/site-packages/blueman/main/PluginManager.py:133)
loading <class 'blueman.plugins.manager.PulseAudioProfile.PulseAudioProfile'> 
_________
pa_context_event (/usr/lib/python2.7/site-packages/blueman/main/PulseAudioUtils.py:338)
1 
/usr/lib/python2.7/site-packages/blueman/gui/MessageArea.py:43: Warning: The property GtkMisc:xpad is deprecated and shouldn't be used anymore. It will be removed in a future version.
  self.icon.props.xpad = 4
/usr/lib/python2.7/site-packages/blueman/gui/MessageArea.py:54: Warning: The property GtkSettings:gtk-button-images is deprecated and shouldn't be used anymore. It will be removed in a future version.
  self.b_more.set_image(im)
blueman-manager version 1.99.alpha2 starting
Stale PID, overwriting
_________
pa_context_event (/usr/lib/python2.7/site-packages/blueman/main/PulseAudioUtils.py:338)
2 
_________
on_bluez_name_owner_changed (/usr/bin/blueman-manager:96)
org.bluez owner changed to  :1.1 
/usr/lib/python2.7/site-packages/gi/overrides/__init__.py:306: Warning: The property GSettings:schema is deprecated and shouldn't be used anymore. It will be removed in a future version.
  return super_init_func(self, **new_kwargs)

(blueman-manager:21001): GLib-GIO-ERROR **: Settings schema 'org.blueman.general' is not installed

Trace/breakpoint trap (core dumped)

System:
Arch Linux
bluez 5.30-1
Gnome 3.16.1

Thanks!

@cschramm
Copy link
Member

cschramm commented May 3, 2015

The gsettings schema needs to be installed. make install should do that four you.

@hlechner
Copy link
Author

hlechner commented May 3, 2015

I'm not sure if it should be this package:
extra/gsettings-desktop-schemas 3.16.1-1 [installed]

But the PKGBUILD from aur package already do the make install:

prepare() {
    cd "${srcdir}/${pkgname}"
    # Replace the python interpreter with python2
    for PY in apps/blueman-*
    do
        sed -i 's/python/python2/' "${PY}"
    done
    NOCONFIGURE=1 ./autogen.sh
}

build() {
    cd "${srcdir}/${pkgname}"
    export PYTHON=/usr/bin/python2
    export CYTHONEXEC=/usr/bin/cython2
    ./configure \
        --prefix=/usr \
        --sysconfdir=/etc \
        --libexecdir=/usr/lib/${_pkgname} \
        --with-gtk=3.0 \
        --disable-hal \
        --disable-sendto \
        --disable-static
    make
}

package() {
    cd "${srcdir}/${pkgname}"
    make DESTDIR="${pkgdir}" install

Should something be different?

@hlechner
Copy link
Author

hlechner commented May 3, 2015

I found a solution:

need to run it as root:
/usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas/

@hlechner hlechner closed this as completed May 3, 2015
@cschramm cschramm reopened this May 3, 2015
@cschramm
Copy link
Member

cschramm commented May 3, 2015

There's probably something wrong with the PKGBUILD or our make system then, so let's take a closer look. Do you have the data/Makefile from the build?

Mine includes

GLIB_COMPILE_SCHEMAS = /usr/lib/x86_64-linux-gnu/glib-2.0/glib-compile-schemas

gsettings_SCHEMAS = org.blueman.gschema.xml

all-am: $(gsettings_SCHEMAS:.xml=.valid)

%.gschema.valid: %.gschema.xml $(gsettings__enum_file)
        $(AM_V_GEN) $(GLIB_COMPILE_SCHEMAS) --strict --dry-run $(addprefix --schema-file=,$(gsettings__enum_file)) --schema-file=$< && mkdir -p $(@D) && touch $@

which should run that command on make install.

@infirit
Copy link
Contributor

infirit commented May 3, 2015

The distro's build system will run this in the build environment, most likely sandboxed or a jail of some sorts and the gschemas.compiled file will only contain the compiled blueman schemas. If this is included in the binary package it will overwrite the existing one with all the already installed schemas.

Normally distro's should pass --disable-schemas-compile to configure and run glib-compile-schemas in their pre/post-rm and post-install phases 😄.

@cschramm
Copy link
Member

cschramm commented May 3, 2015

True (it's not that explicit in the Debian world due to triggers 😉 ). Then the PKGBUILD is probably missing the step in its post_install script (or some definition to invoke something similar to Debian triggers?).

@infirit
Copy link
Contributor

infirit commented May 3, 2015

Most pkgbuilds I know of use an install file with something like the below.

post_install() {
  glib-compile-schemas /usr/share/glib-2.0/schemas
}

post_upgrade() {
  post_install $1
}

@cschramm
Copy link
Member

cschramm commented May 7, 2015

@flexiondotorg

@Markismus
Copy link

@hlechner The problem still persists. Thanks for your sudo /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas/. It solved the problem for me.

Where could we change the PKGBUILD to include this command?

@rwst
Copy link

rwst commented Sep 28, 2016

Recompiling schemas had no effect for me (both 2.0.4/master on OpenSuSE/Xfce) but when I did PYTHON_PREFIX=/usr configure --prefix=/usr and installed I got past that step. From this it seems glib-schemas does not always look by default into /usr/local, so it has to be told. I don't know glib, isn't there a user config where it can be told?

(EDITED)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants