I start maintaining yast2-repair and first bug which I start solving is that repair from DVD menu doesn’t work same as from installation menu. Find where is problem and also test if fix is correct is not trivial. I describe below how to modify inst-sys on DVD or software on LiveCD.
Archive for the ‘Systems Management’ Category
New YaST-Web released 1.0.1
April 1st, 2009 by Stefan SchubertWe have released a new version of Web-YaST with following changes:
- Added translation support on the client side.
- Added ruby-gettext
- Split off ruby-rpam and ruby-polkit in single packages.
- Switch off IPv6 in lighttpd cause it has produced some undefined errors. (esp. on 64bit)
- Added package dependencies concerning rails. The last few weeks have shown that RAILS versions are not really compatible. So many problems have been happened due different RAILS versions on the systems where YaST-Web has been installed. Please use RAILS 2.1
- Cleanup code.
The newest packages can be found here:
https://build.opensuse.org/project/show?project=home:schubi2
Or
https://build.opensuse.org/project/show?project=YaST:Web
It would be nice to get some feedback. Bugzilla would be a nice option 🙂
Thank you !
YaST and Compiz during Installation
April 1st, 2009 by Arvin SchnellWe (Thomas Göttlicher, J. Daniel Schmidt and Arvin Schnell) have use all our
remaining ITO for this really cool feature.
Normally compiz (more precisely the cube module) shows each desktop on the
surface of a cuboid. Since we don’t have several desktops during installation
we decided to show the “wizard” steps on the cuboid. Pressing “Next” or “Back”
rotates the cuboid around the y-axis:
Entering a “subwizard” rotates the cuboid around the x-axis:
Fortunately most computers are fast enough to render the 3D-scene even without
special hardware support that we lack during installation.
Will be available in Factory within the next weeks. Comments are welcome.
Easy live upgrade from 11.0 to 11.1
March 8th, 2009 by kl_eisbaerToday I tried a new way to do a live upgrade with one of my machines from 11.0 to 11.1. In the end, it takes nearly 1 day, because I had to download nearly 3,2 GB software (puh!) – but for me it was just a 3 minute work 🙂
It turns out that the most problematic part was the new RPM-“Distribution” string for openSUSE since 11.1. As openSUSE is now completely build in the openSUSE Build Service, the Distribution string of each package switched from “SUSE LINUX Products GmbH” to “openSUSE 11.1” – and zypper complains about this vendor switch during a live upgrade.
My Solution: Just create a new file “/etc/zypp/vendors.d/openSUSE” as root and insert the following content:
[main]
vendors=openSUSE,SUSE LINUX Products GmbH
Now, zypper identifies packages from Vendor “openSUSE” as the same as packages from vendor “SUSE LINUX…”
Whats left is the adaption of the repositories (they should point to 11.1 now):
localhost:~ # cd /etc/zypp/repos.d/
localhost:~ # sed -i “s|11.0|11.1|g” *
…and right afterwards, the show can go on…
localhost:~ # zypper ref
Retrieving repository ‘OBS-Edu’ metadata [done]
Retrieving repository ‘Packman Repository’ metadata [done]
…
localhost:~ # zypper dup
Loading repository data…
Reading installed packages…
Computing distribution upgrade…
The following packages are going to be upgraded:
…
Press “y” and Enter – and go to bed or something else – next day, reboot your machine and welcome your new 11.1!
Context Menus in YaST Partitioner
March 6th, 2009 by Arvin SchnellWe received some complains that the redesigned partitioner on openSUSE 11.1 is
tedious to use. To remedy these shortcomings I’m adding context menus to the
tables so that it is no longer required to select the correct view using the
navigation tree to perform some operation. Almost all operation should be
available via context menus in the main view listing all devices.
As usual comments are welcome.
YaST Qt UI with Context Menus
March 6th, 2009 by Thomas GöttlicherContext 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:",
[
"Item1",
"Item2",
"Item3"
] );
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" ),
`item(`id(`image),
"&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.
Usability
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.
openSUSE-like update repositories for third party projects
February 22nd, 2009 by kl_eisbaerStarting with 11.0, the openSUSE-Education project hosts it’s own, separate update repository. This is our solution for the strategic decision not to use the openSUSE Build Service as repository for endusers but for development only.
So for production purposes, we always recommend to use our frozen repositories on http://download.opensuse-education.org/. But as “frozen” implies, the repositories there are frozen at the time, the openSUSE-Education team declares them as “Goldmaster” (which is the case for all except the 11.1 repo at the moment) – and no package update or changes happens for this repositories.
The openSUSE-Education team has relatively long development and testing cycles – but as everywhere, shi* happens, and so it might be that some of the packages in the frozen repository are broken or need a security fix. For this, we have created update repositories (for at least 11.0 and the upcomming 11.1 Edu-Release) which are disabled per default, but added to the system during installation of the openSUSE-Education-release package. (Reason behind this decision: if an administrator installs openSUSE-Education in a school, he wants to “mirror” the update repositories and not point every client to the official ones. All a user has to do is to enable this update repository via YaST or via “zypper mr -e ‘openSUSE-Education Updates'”.
We’re using the “updateinfo.xml” file formal described in the openSUSE-Wiki. Currently, we’ve 5 package updates/fixes for 11.0 in the update repository – and this might grow over the time. The updates are shown in the current online-update-applets as “normal” updates like the openSUSE ones. Interestingly, the user can’t see if an update is from the official openSUSE or the openSUSE-Education update repository – even if we use a different “from” tag. Perhaps we have to “play” with the “release” or other tags: testing is needed as it looks like nobody tries this before…
Status russian mirrors
February 19th, 2009 by k0daSome times ago Russian and Ukrainian users noticed strange connection drops from Yandex. I can’t solve this problem, because I’m not Yandex employee.
Russian mirrors problems are mostly solved by introducing new mirror (Thanks to Yuri xnu!! Tsarev). This mirror have all openSUSE related stuff, 100 Mbit connection, 1Tb storage drive. After testing period now we can see that mirror is ready for main workload. So we adjust priorities and if you are try to access download.opensuse.org from Russian IP you should be redirected to this new mirror.
Due problems with foreign bandwidth we can’t serve Ukrainian users with Peter Poeml help we switch they directly to German mirrors.
If you have problems with Russian mirror accessing via download.opensuse.org please contact me directly. I’ll try to solve this
Writing first YCP program
February 13th, 2009 by Alexander OrlovskyyHi folks!
It was a long time since my last blog. 😉
Today, i will show you my first program, it`s a simple test program which shows basic functions of YCP
Let`s start!!
first of all, you need all core development YaST and QT packages
(All mentioned bottom steps, can be made with normal user )
second , you must create a symlink to /usr/lib/YaST2/bin/y2base
$ ln -s <destination> <linkname>
(In my case name of symlink is y2base.)
third , you need two console`s , one for program writing and one for monitoring .y2log (where you can see all debug messages)
if you wish more detailed debug output during root session, than type in console following :
$ su
$ export Y2DEBUG=1
$ exit
(switching back to normal user)
Ok, lets see the code of PushButton.ycp !
{
// Build a dialog with one button and two labels.
// Wait until that button is clicked,
// then close the dialog and terminate.
UI::OpenDialog( `VBox(
`Label(`opt(`boldFont),”PushButton TEST!!!!!!!!”),
`PushButton( “&OK” ),
`Label(`opt(`boldFont),”JUST SIMPLE TEST”)
)
);
UI::UserInput();
UI::CloseDialog();
}
Than:
$ chmod 765 PushButton.ycp
After you have written the program , type in the console:
$ ./y2base ./PushButton.ycp qt
You will get following window:
What is amazing at YCP, that this code can be interpreted into ncurses
Try following command:
$ ./y2base ./PushButton.ycp ncurses
Result:
You have written only one code , which can be used in two different gui environments graphical and text mode!
In my next blog i will write about creating own SCR Agent.
Zypper: Improved bash completion and practical usage
February 12th, 2009 by Josef ReidingerBecause no one reported any bugs to perl-Bootloader, I have some free time. I use it to improve bash completion for zypper, because I find current one have some really annoying things. In short now completion work also for zypper global options, hint also for short version of commands and help name of repo, service and lock, if you use command which takes that as argument. Next few paragraphs contain practical examples how it help improve your command line productivity, how to get it to your system and also some notes how I implement it. (more…)