YaST/Research/YaST DBus Service
From openSUSE
Almost all YaST modules require 'root' access to start. However, a lot of system tools and config files do allow non-root access.
Running the user interface as root also presents a security problem.
Looking forward, 'role based' access, the ability to grant specific rights to specific users without exposing the root password, becomes more and more important.
PolicyKit provides the generic means to grant modular access rights.
PackageKit provides role-based software management.
We should leverage these technologies also for YaST. Providing YaST functionality through D-Bus would
- enable PolicyKit for YaST
- provide 'role based' management (FATE entry exists)
- help in separating ui/control/backend layer
- allow other languages to access YaST functionality through D-Bus
Contents |
Current Status
Jul 1: We got absorbed into YaST as a Service as Team 4. Many YaST hackers are taking their first rides on de bus.
- YaST can use SCR via DBus
- dbus service for SCR in python (yast_service.py)
- new module for using DBus in YCP (DBus.ycp)
Open issues
- better API in DBus.ycp - it is neccessary update of the python-bindings
- using type None - dbus API for python doesn't support it
- problem with converting types DBus <-> python (there are still some bugs)
- it is necessary add general handling of values DBus <-> python
- bugs in python-bindings (problem with creating types like symbol, path... in YCP bnc #406432)
- stop service after calling (timeout)
Description
The basic functionality is done. There is implementation of DBus service in python yast_service.py. The service support 4 basic functions for YaST SCR (Read, Dir, Execute, Write) [server] Next there is DBus.ycp - module for YaST in python which supports API for calling SCR via DBus [client]
Picture should be added later
Repository
SVN repository with the current experimental code
Participants
If you wish to participate, add yourself here (your user page link, hompe, or e-mail or similar).

