Home Home
Sign up | Login

Author Archive

New Style for YaST2

October 24th, 2011 by

YaST2 got a lot of improvements which will be available in openSUSE 12.1. YaST doesn’t accidentally overwrite configuration files anymore (last bug fixed ;-) ) and snapper provides a rollback function for configuration options, just to mention a few. Therefore it’s time to give YaST2 a new and fresh style. As YaST Qt supports Stylesheets it’s simple to influence YaST’s style.

Screenshot of YaST's New Style

FACTORY contains the new style already. Packages for older releases are also available in my build service project: http://software.opensuse.org/download.html?project=home:tgoettlicher:Factory&package=branding-openSUSE.

I hope you like it. You can use YaST’s Stylesheet Editor to play around the the stylesheet as described in my this blog post. Please send me improvements you want to share. Thanks.

Install Multiple Kernel Versions using the YaST Qt Package Manager

December 8th, 2009 by

You might want to install multiple kernel versions on your system.
The YaST Qt Package Selector provides a nice user interface that allows to manage multiple package versions now.

yast2-qt-pkg 2.18.19 or later supports this feature. You can find packages in my Build Service repository.

First of all you need to tell libzypp that your kernel is a package which is multiversion-enabled by adding this line to your /etc/zypp/zypp.conf:

multiversion = provides:multiversion(kernel)

Start your YaST Software Management. The versions tab shows check boxes for multiversion packages instead of radio buttons.
This enables you to install multiple versions of the same package.

There is also a package group of multiversion packages that list all packages that can be installed in multiple versions.

YaST Qt Package Manager with Multiversion Kernel Packages

YaST Qt UI with Context Menus

March 6th, 2009 by

Context menus are supported by almost all UI frameworks and most people got used to them. Therefore it’s high time to provide context menus in the YaST Qt UI as well. yast2-qt-2.18.6 offers this feature, packages are available in my build service repository.


In four simple steps YCP programmers can benefit from this new feature:

Step 1:
Create a widget and tell via `opt(`contextMenu) that a ContextMenuActivated Event should be emitted when the user right clicks the widget:

`SelectionBox( `id(`sport), `opt(`notify,`immediate, `contextMenu),
"Open a context menu:",
] );

Step 2:
Wait and analyze events:
event = UI::WaitForEvent( ... );
if ( event["EventReason"]:"" == "ContextMenuActivated" )

Step 3:
Open a context menu. The argument of OpenContextMenu() describes the menu structure:

UI::OpenContextMenu( `menu(
[ `item(`id(`folder), "&Folder"  ),
`menu( "&Document",
[ `item(`id(`text),
"&Text File" ),
"&Image"     ) ]) ]  ));

Step 4:
Analyze the returned `id and trigger an action. An example called ContextMenu.ycp is included in the package yast2-ycp-ui-bindings.

A Context menu provides shortcuts to actions for a certain widget or item. This features improves usability when it’s used properly. Application programmers should avoid making certain features only using context menus because users might not find them.
Please keep in mind that YaST ncurses doesn’t provide context menus. Each operation that is only available via a context menu is useless in YaST ncurses because the user cannot select it.

Application Icons in the Package Selector

February 4th, 2009 by

Desktop files contain a lot of information about KDE/Gnome/X11 applications (e.g. names, icons).

Displaying this data in the package selector allows to provide a more detailed package description. The user can easily see which applications are included in an installed package.

Running these applications via mouse click is technically possible, but unfortunately security concerns don’t allow it. Please let me know if you have an idea how to solve this issue.

Smolt Popup

January 23rd, 2009 by

kupdateapplet shows a popup that asks the user to send his/her hardware profile to the smolt project.

I think kupdateapplet isn’t the appropriate application for showing this notification because smolt has nothing in common with update installation.
I’ve written a tiny python-qt script that shows the smolt popup.

You can find a package called smolt-qt in my build service home. Feel free to test and comment!

YaST Qt4 Stylesheet Editor

December 23rd, 2008 by

YaST uses style.qss located in /usr/share/YaST2/theme/current/wizard by
default. If you want YaST to use a different style sheet (e.g. the style shown
while installation) you can set the $Y2STYLE environment variable:

Y2STYLE=installation.qss /sbin/yast2 disk

I’ve added a new hotkey to YaST which allows to modify the style sheet on
runtime. Pressing [Ctrl] + [Shift] + [Alt] + [S] in a YaST module opens the Stylesheet Editor. Now you can load a style sheet and modify its style rules.

Screenshot YaST Stylesheet Editor

The Stylesheet Editor can be very usefull when you want to design your own style for the YaST Qt4 UI.

This feature will be available in openSUSE 11.2. If you want to use it now all you need is yast2-qt version 2.18.2. You can find the latest version here: