As part of the initial code for the Cloud4All project, we already have a GSettings bridge for to handle some desktop settings, but we needed a mechanism for to deal with other behaviours/settings of the GNOME Desktop, and DBus fits here.

The endline for this implementation isn’t too close, but we’re already making the Cloud4All stack better and I’ve just pushed a DBus module for Node.js.

At this moment, the functionalities are a little bit limited, but I can think in two working use cases:

  • Enable/disable GNOME Shell Magnifier.
  • Change GNOME Shell default behaviour and/or appearance by using extensions.

But there are a lot of applications running their DBus services and there are a lot of already demonstrable use cases. 😉

I have this code into a personal branch in github and I’ve attached a test which does basically four things.

  • Enable the magnifier
  • Disable the magnifier
  • Install a remote extension in GNOME Shell (you need to click on “Install”)
  • Uninstall the extension

Now is a preliminary working code, it was my first time dealing with Node.js and needed to learn some about V8 and Node.js, so the code will change a bit in a few weeks. Next steps will be:

Soon, I’ll post more about Cloud4all, so stay tuned!