Problem with snapcraft-desktop-helpers and MATE desktop

Didier Roche didrocks at ubuntu.com
Mon Sep 19 14:20:51 UTC 2016


Le 19/09/2016 à 15:34, Eloy García (PC Actual) a écrit :
> Hi all.
>
> I'm using snapcraft-desktop-helpers
> (https://github.com/ubuntu/snapcraft-desktop-helpers) part for
> providing a "bridge" for gsettings between my snapped application and
> the host system (I'm using desktop/gtk3 part although I tried
> desktop/gtk2 part and even desktop/glib-only). The application sets a
> custom selected wallpaper and it is working great under GNOME 3 and
> Unity. However, it is not working for MATE desktop.
>
> This is the command I execute inside the snap for Unity and GNOME 3
> desktops:
> gsettings set org.gnome.desktop.background picture-uri
> file://blablabla.jpg
>
> And this is the command I execute for MATE desktop:
> gsettings set org.mate.background picture-filename blablabla.jpg
>
> Checking the application's log I find:
>
> [15:17:40] AWT-EventQueue-0 ERROR LinuxWallpaperChanger:102 - No such
> schema 'org.mate.background'
>
> Those commands are working fine using the native application (I mean,
> the application directly running on the host and not installed via
> snap package)
>
> Do I need to do something else to support MATE desktop or maybe it's a
> bug for snapcraft-desktop-helpers wiki part?
>
> Thank you very much for your help.

Hey Eloy!

Actually, it's not a bug, but the way gsettings is working. You need to
have the schema files you are writing to and/or reading from available
to your application for gsettings validating its input/output. By
default, you application isn't providing those I guess.

You can either ship directly the xml files as part of your snap or stage
the ubuntu package containing the schema. This is the reason why you can
see this playpen example shipping gsettings-desktop-schemas:
https://github.com/ubuntu/snappy-playpen/blob/master/ubuntukylin-icon-theme/snapcraft.yaml#L35

In your ubuntu-mate case, after a quick search, it seems that you want
to stage mate-desktop-common.

Then, the desktop wrapper will do the right thing compiling them the
first time you install your snap or upgrade it.

I hope this helps!
Cheers,
Didier





More information about the Snapcraft mailing list