YaST/Research
From openSUSE
Instructions
Please follow the project template when adding ideas.
- Provide steps how to update this page
- Link old projects and temporary branch
- You can find vague ideas that could be some day turned into research projects YaST/Research/Ideas
Current projects in the "lab"
Available projects
Automatic generation of YCP bindings
Make it easy for YaST module developers to access upstream system libraries.
Better Integration into Windows Domain
Allow clients in a Windows domain to automatically mount the home directory and run scripts during login.
Rewrite Storage Proposal
Rewrite the storage proposal.
(Alphabetically sorted, please, keep the sorting when adding new project)
Build YaST using cmake
This project aim to modernize YaST build system to make it easier for people to contribute and gain new developer features.
Bootloader UI Rewrite
Remove the current way user interface of the bootloader module is generated and use standard way, which allows to use the full flexibility of YaST UI library and not only a limited subset of its functionality.
Currently Supported Hardware Tool
To be able to use YaST to generate a list of supported hardware, by type or by type and vendor.
CVS/SVN for System Config Files
Revision control for the system's config files so sysadmins can keep track of changes, revert them or apply them to other systems as well. A simple version would keep all files below /etc in a CVS or SVN (or other versioning system) repository.
Make YaST Independent of YCP
Leverage the YaST toolkit and component system to popular languages and keep YCP as a component technology but not as a dependent language, but as an available one.
Make YaST more IPv6 compatible
Now YaST is not able to set up static IPv6 routes and not able to setup IPv6 tunnel. Student should make YaST network module able to setup static IPv6 configuration and create a new one IPv6 tunnel configuration module.
Signals and Slots for Libzypp
Add a generic signal / slot mechanism (very much like the Qt lib does) to libzypp to make it easier for application to receive a notification upon libzypp events (package is being installed, new package in the system). The old callbacks have serious limitations, and they require a lot of very special code in libzypp commit actions.
Using CIM from YaST modules
Easy access to CIM services from YaST components.
YaST Libzypp module
Configuration module for Libzypp
YaST XML UI Dialogs
Define dialogs in XML or similar formats.
YaST module using mod_ui directly
The goal is to prove that the mod_ui is ready to be used directly for a YaST module. As the registration logic will move to libzypp and the registration module needs a rework anyhow, this module is excellent cadidate for this task.
YaST on other Distributions
Leverage YaST to other distributions and communities.
YaST PackageKit Service
Remove PackageSystem.ycp dependency on libzypp and use PackageKit instead.
YaST PolicyKit configuration module
Define/change PolicyKit policies with a easy to use user interface.
YaST Skeletons for Rapid Development of New Modules
Enhanced skeletons to use as a base for YaST components.
YaST Style Guide
It's mandatory for all software projects maintained and created by several developers to have a simple, understandable, and easy-to-remember style guide. It helps users to learn the basic rules and understand all other dialogs later.
YaST Webcam Module
YaST module to set up webcam devices
YaST debconf Module
When packages are being installed, debconf asks the user questions which determine the contents of the system-wide configuration files associated with that package.
Candidates for being moved back to Ideas
| The following projects are not scoped/specified well enough, they may be moved back to Ideas until they are scoped. |
Make YaST Documentation Better
We've seen a lot of reports how the current YaST documentation sucks, how it is not well-maintained and how it could be enhanced, but a glamorous documentation is still only a dream. You can be the hero that will make the dream come true! Let the world remember you as the one who has resurrected the YaST documentation from the ashes!
Finished Projects
YaST as a Service
Define a service-oriented architecture for YaST, ideally REST based, and refactor modules toward this architecture. This affects a couple of other research areas, namely
- Make YaST Independent of YCP
- Using CIM from YaST modules (not required)
- YaST DBus Service
- YaST PackageKit Service
- YaST Web User Interface (side effect possibility)
YaST DBus Service
Allow easy access to DBus services from YaST.
YaST PolicyKit integration
Allow YaST tasks to be performed on a fine grained access policy configurable by the system administrator.
YaST Web User Interface
Being able to http to your virtual appliance and set it up as you do it with your DSL router, with the YaST recognized "it just works" experience.
Installation in IPv6 Environment
Allow installation in an IPv6 setup. Requires changing linuxrc and YaST network setup code (to get the IPv6 config from linuxrc).
(K)Desktop Integration for plug'n'play Hardware
Offer (k)desktop user to automatically start YaST if plug'n'play hardware has been attached
YaST Interface for Webpin
Enhance YaST Repositories / Add-Ons module(s) with possibility to search through all known openSUSE repositories and packages via the famous tool Webpin. Make the dreams about searching and finding come true! Users want to install~and~use software, not to add random repository, search for software in it, install, add another...

