Wednesday, April 28, 2010

WTF is dbusmenu-qt ?

Since two days ago, kdelibs started requiring something called DBusMenuQt and the nightly builds were failing with

...
-----------------------------------------------------------------------------
-- The following REQUIRED packages could NOT be located on your system.
-- You must install these packages before continuing.
-----------------------------------------------------------------------------
   * DBusMenuQt  <git clone="" dbusmenu-qt.git="" dbusmenu="" git:="" gitorious.org="">
     API to import export QMenu instance using DBusMenu protocol
     dbusmenu-qt is a standalone library providing a way to import and export QMenu instances using the DBusMenu protocol.

-----------------------------------------------------------------------------
I googled a bit, but did not find anything apart from some mentions in the sources of various projects. In the end asked at the kde-buildsystem mailing list and got a pointer to libdbusmenu-qt homepage (sort-of). So, if you're not really into checking out random revisions from repositories, the regular releases of libdbusmenu-qt are available at http://people.canonical.com/~agateau/dbusmenu/

 I added it to the kde-solaris project repository as well. It builds relatively smoothly, only requiring one patch for avoiding the __PRETTY_FUNCTION__ gcc extension.

Tuesday, April 27, 2010

The statue of the pioneer gets more contemporary

The statue of the pioneer/builder of communism, a remnant of the distant age, overlooking the gigantic shopping mall Centrum Chodov, already provides a slightly bizarre view, but yesterday it moved to the area of contemporary art:


(the shopping cart's gone now, so it was perhaps a 'temporary art' experience)

Thursday, April 22, 2010

DBD::mysql - Do you need to predeclare BAIL_OUT?

I was installing DBD::mysql from CPAN on a Solaris 10 8/07 Sparc today.
The install command failed with the infamous

Running make test                                                                                                                            
PERL_DL_NONLAZY=1 /usr/perl5/5.8.4/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t                  
t/00base....................String found where operator expected at t/00base.t line 20, near "BAIL_OUT "Unable to load DBI""                 
        (Do you need to predeclare BAIL_OUT?)                                                                                                
String found where operator expected at t/00base.t line 21, near "BAIL_OUT "Unable to load DBD::mysql""                                      
        (Do you need to predeclare BAIL_OUT?)                                                                                                
syntax error at t/00base.t line 20, near "BAIL_OUT "Unable to load DBI""                                                                     
syntax error at t/00base.t line 21, near "BAIL_OUT "Unable to load DBD::mysql""                                                              
BEGIN not safe after errors--compilation aborted at t/00base.t line 22.                                                                      
# Looks like your test died before it could output anything.                                                                                 
t/00base....................dubious                                                                                                          
        Test returned status 2 (wstat 512, 0x200)                                                                                            
DIED. FAILED tests 1-6                                                                                                                       
        Failed 6/6 tests, 0.00% okay

Googling for help revealed tons of people with the same problem and the lucky ones who resolved it did so by giving up CPAN and installing from rpm/whatever else.

I finaly found answer here, or rather here.

The Test module was outdated ... so to solve it:

cpan> install Test::Simple 
isn't it simple?

But that was not the end. The next issue was:

#   Failed test 'use DBD::mysql;'
#   at t/00base.t line 21.
t/00base....................NOK 2#     Tried to use 'DBD::mysql'.
#     Error:  Can't load '/.cpan/build/DBD-mysql-4.014/blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ld.so.1: perl: fatal: relocation error: file /.cpan/build/DBD-mysql-4.014/blib/arch/auto/DBD/mysql/mysql.so: symbol mysql_real_escape_string: referenced symbol not found at /usr/perl5/5.8.4/lib/sun4-solaris-64int/DynaLoader.pm line 230.


I guess this is due to the fact mysql is 64 bit while perl is 32 bit. Let me investigate later.

Wednesday, April 21, 2010

KDE dashboard now documented

A number of KDE developers, including the KDE-Solaris team are running a nightly build of the SVN KDE4 to detect breakages early.

There's a nice dashboard collecting the results at http://my.cdash.org/, where you can also subscribe to modules of interest and be notified when they break. It's also a useful source of links when filing bugs :-)




So far the dashboard wasn't really advertised, but today Alexander Neundorf unveiled a very descriptive Dashboard builds HowTo, that will make you up and running pretty fast, should you decide to help KDE4.

Saturday, April 17, 2010

Stealing from the ZOO with opencard

Today we visited the Prague ZOO (BTW 7th best ZOO in the world, according to the Forbes magazine) and while buying the tickets I noticed a sign saying something in the lines of "It's really worth having an Opencard". I asked what that means and was told a holder of Opencard has a 5% discount.

Opencard is really something special. It's a chip card with RFID that serves as public transport pass, metropolitan library pass and something with parking.
Not mentioning the obvious privacy issues, the problem is the project was extremely overpriced and Opencard is a synonym for corruption in the czech media now.
Not only this, the project is not really successful and the only reason it's not a complete failure is because they raised the public transport prices for people not using the card, so people like me just got it to save some cash.

The municipality, facing both public and political (elections are near) backlash, is pressed to do something to save their asses. They've recovered a minor part of the wasted money and are now trying to convince the public that the project is useful after all. Since they cannot directly pump more money into it, their nasty fingers are into other people's purses - municipality sponsored theatres, the ZOO and others are now forced to give discounts to Opencard holders. I'm wondering whether their lowered incomes will be refunded by the municipality (bad) or not (just as bad).

I'm not really happy I saved 8 crowns on the ticket today.

Thursday, April 15, 2010

baby prams forbidden at the Prague's main railway station

I noticed that all the conveyor belts at the Prague's main railway station  forbid baby prams. The belts are the only means of getting to the trains from the ground level, so this looks like a full ban.

Tuesday, April 13, 2010

Transition a smf service to maintenance

I was trying to trace a bug that appeared when a Solaris service was being cleared from maintenance. To reproduce it I needed to move the service to maintenance.

Here's how to do it, so you don't have to break the service first:
svcadm mark maintenance name-of-the-service