Dec 30, 2011

New UrukDroid 1.6 RC7 is available

Have updated my tablet to UrukDroid 1.6 RC7 - if no problems are found, this will become the
final release.

I upgraded and didn't experience any problems so far.

Dec 28, 2011

Compiling Qt 4.8.0 on OpenIndiana 151

Procedure:

  • download Qt 4.8.0
  • Set Path to include the compiler  ( /opt/SUNWspro/bin ) 
  • adjust the compiler settings to include the X11 libraries and include
    qt-everywhere-opensource-src-4.8.0/mkspecs/solaris-cc/qmake.conf
    QMAKE_INCDIR_X11    = /usr/X11/include                                         
    QMAKE_LIBDIR_X11    = /usr/X11/lib
    QMAKE_INCDIR_OPENGL = /usr/X11/include
    QMAKE_LIBDIR_OPENGL = /usr/X11/lib
  • configure:
    CC=/opt/SUNWspro/bin/cc CXX=/opt/SUNWspro/bin/CC CXXFLAGS="-library=stlport4" LDFLAGS="-library=stlport4" ./configure --prefix=/tools/qt/4.8.0 -opensource
  • gmake
  • qfiledialog.cpp:886 needed the code from the else part of the preprocessor
  • helloconcurrent.cpp failed to compile ( it is from the examples )
    had to do some tricking with the including of qfuture.h and the
    path to src/corelib/concurrent/qfuture.h from include/QtCore/qfuture.h
    I remove QFuture from helloconcurrent.cpp and the whole compile succeede, with some adjustments before.


Dec 27, 2011

Upgrade 1.6RC6 of UrukDroid for Archos Tablet available

The next RC of UrukDroid 1.6 is available. -> UrukDroid 1.6RC6 .

Download and installation were no problems. With RC5 the battery usage seems to be faster.
The short minutes I've upgraded  ( copy archive to /data/UrukUpdate ) didn't
show any problems.

Dec 22, 2011

Yesterday, I upgraded my Archos InternetTablet 10.1 from UrukDroid 1.6RC4
to
UrukDroid 1.6RC5

Did a backup before and installed it. After the installation the automatic
reboot ran in a loop.
I had to do a hard reset, but afterwards the system booted without problems. 

Dec 21, 2011

reduce system usage of firefox by Add-On ToManyTabs

Today I have read in the Book DTrace about an investigation about the
CPU usage of the firefox  browser.
There was the hint about the Plugin ToManyTabs, which allows to move
open tabs to different rows, which act like closed tabs and the
CPU usage drops.

There is a small row in the header where you can switch between different
groups.
When you select an item it is moved to the open tabs and removed from the
group, but you can drag&drop it back to the row.

Dec 20, 2011

VirtualBox 4.1.8 update on OpenIndiana 151

VirtualBox has released a new version 4.1.8 for Solaris. 

Install on OpenIndiana was without problems, but still need LD_NODIRECT=1
for starting, otherwise VirtualBox fails or the Manager doesn't find the
virtual machines.


Dec 16, 2011

code-analyzer in Oracle Solaris Studio 12.3

Oracle has release Solaris Studio 12.3 .
The suite has a new tool called code-analyzer.

It can do static code analyze by adding a compile directive -xanalyze=code.

I've used it for a project, but failed at first, because I had also to give the option on the linking step, but afterwards the executeable get a directory
called <executeablename>.analyze and here is a screenshot.


I had to mask a lot of code, because it's proprietary.
But the tool finds errors, although the code is running since years on different operating systems.


Something strange happend to my Crossbow Network

I'm using the virtual network Crossbow on my OpenIndiana, to route the
traffice between Windows XP in VirtualBox, a Zone and the outer world by
using a virtual network switch.

It worked till Wednesday, but after shut down and starting on Thursday
XP could not connect anymore????.

The Zone can connect and can be pinged from the host, XP not????.

Now I've change to use NAT in VirtualBox and changed in Windows XP the
network to DHCP and the connection itself works but not over the virtual
network.

Have to investigate sometime later why this happened.

Update:
Found the problem in my own former post.

The problem seems that the mac adresse didn't match between VirtualBox
and the setting of the vnic as shown be dladm show-vnic

root@solewer:~# dladm show-vnic
LINK         OVER         SPEED  MACADDRESS        MACADDRTYPE         VID
vnic1        vswitch1     0      2:8:20:55:9e:bf   random              0
vnicvsop0    vswitch1     0      2:8:20:7b:84:43   random              0
vnicsuse1    vswitch1     0      2:8:20:b3:bf:c1   random              0
vnicwinxp2   vswitch1     0      2:8:20:17:e7:c8   random              0

Dec 12, 2011

log4cplus && SysLogAppender

I'm a little experimenting with logging frameworks for C++.
log4cplus is a nice one.

Now I'm doing the first test on OpenIndiana.

The ConfigureAndWatchThread does it's job.
When the app runs and afterwards the config file is copied into the
target directory, the logging starts.

But now I've configured the SysLogAppender:


log4cplus.appender.syslog=log4cplus::SysLogAppender
log4cplus.appender.syslog.ident=WARN
log4cplus.appender.syslog.facility=local0
log4cplus.appender.syslog.layout=log4cplus::PatternLayout
log4cplus.appender.syslog.layout.ConversionPattern=[%d{%d %m %Y %H:%M:%S}] [%t] %-5p %c{2} %%%x%% - %m [%l]%n

And when running the app with the corresponding setting publishes
the message into the configured syslog file:


Dec 12 16:37:44 solewer WARN: [ID 702911 local0.crit] [12 12 2011 15:37:44] [1] FATAL root %% - start of app  [src/main.cpp:36]
Dec 12 16:37:46 solewer WARN: [ID 702911 local0.crit] [12 12 2011 15:37:46] [1] FATAL root %% - finish of app [src/main.cpp:41]

A nice feature to report hard errors to a central logging facility with nearly
no effort.

compiling log4cplus with SunStudio 12.3 beta on OpenIndiana

I experimented with log4cplus on Windows and MinGW, which is an
exquisite suite for compiling on Windows.

Today I attempted to compile the library on my OpenIndiana 151 box.

The compilation with the GCC 4.6.1 was no problem.
The next attempt was to compile with the SunStudio Compiler 12.3 beta, which
is now called Oracle Solaris Studio ( found the former name better, because
the compiler suite is also available for linux which has nothing to do with
solaris ).

The compilation by configure does not continue without problems.
First the PTHREAD was not found -> changed path, so that SUNWspro
was found first and set CC=cc & CXX=CC
Configure was not a problem now, but compiling or to be exact the linking
didn't succeed.


CC: Warning: -xarch=amd64 is deprecated, use -m64 to create 64-bit programs
CC: -library=Cstd cannot be used with -library=stlport4

Therefore I had to manually edit libtool and remove the option -library=Cstd
and also the linking was fine.

Compiled for 32 and 64 bit.

Dec 11, 2011

log4cplus -> dynamic configuration of log during runtime

Today I testetd around with the log4cplus documented here.

I used a simple configuration by properties like:

log4cplus::PropertyConfigurator::doConfigure( logFileName );    

but now I found another possible config by a thread watcher:

log4cplus::ConfigureAndWatchThread watcher( logFileName.c_str(), 5*1000 );

This one checks every 5 seconds the configuration file and updateds the logging
framework.

So by changing the properties, the logging of the running process can be configured.
I've teste this with MinGW on Windows.

log4cplus on Windows with MinGW

Today I tried the log4cplus Framework. Log4cplus is under the Apache License V2.0. 
This one should be more usefull for commercial projects. The last time I wrote about log4cpp.
This framework is under the LGPL licencse. I've found somewhere, that it should be possible to
use in commercial products, but with some restrictions, about only dynamically linked, hint where to
get the source, allowing the customer to change the lib, ....

I've not red the Apache License in detail, because for me it's just an attempt to use it for some testing
and learning a little C++.

log4cplus can be configured and built simple be an MinGW environment on Windows.

For running an app, the DLL of log4cplus must be found on the PATH.

A property file can look like:
log4cplus.rootCategory=ERROR, rootAppender
log4cplus.logger.Names=DEBUG, A1, A2

log4cplus.additivity.Names=false


log4cplus.appender.rootAppender=log4cplus::ConsoleAppender
log4cplus.appender.rootAppender.layout=log4cplus::PatternLayout
log4cplus.appender.rootAppender.layout.ConversionPattern=%d{%m/%d/%y %H:%M:%S} [%t] %-5p %c{2} %%%x%% - %m [%l]%n

log4cplus.appender.A1=log4cplus::RollingFileAppender
log4cplus.appender.A1.File=A1.log
log4cplus.appender.A1.MaxFileSize=1MB
log4cplus.appender.A1.MaxBackupIndex=2
log4cplus.appender.A1.layout=log4cplus::SimpleLayout
log4cplus.appender.A1.layout.ContextPrinting=enabled
log4cplus.appender.A1.layout.DateFormat=ISO8601

log4cplus.appender.A2=log4cplus::ConsoleAppender
log4cplus.appender.A2.layout=log4cplus::PatternLayout
log4cplus.appender.A2.layout.ConversionPattern=[%d{%d %m %Y %H:%M:%S} [%t] %-5p %c{2} %%%x%% - %m [%l]%n

The main module :

#include <log4cplus/configurator.h>
...
    std::string logFileName = "log4cplus.prop";
    log4cplus::PropertyConfigurator::doConfigure( logFileName );   
    cout << "Hello World" << endl;

Initializing the logger:

    Names::Names() :firstName(""), lastName(""), log(log4cplus::Logger::getInstance("Names"))
    {
        LOG4CPLUS_INFO( log, "Default Constructor" );
    }

Using in a complex format:

        LOG4CPLUS_INFO( log, "FirstName " <<
                     this->firstName
                                         << "; LastName "
                     << this->lastName );

Example of output:

[11 12 2011 15:50:41] [4624] INFO  Names %% - FirstName a; LastName b [Names.cpp:46]
[11 12 2011 15:50:41] [4624] INFO  Names %% - Combined name <a b> [Names.cpp:54]


Update: A follow up describes how to allow configuration changes of the logging for a running
process.

Dec 8, 2011

log4cpp Usage

The last time I compiled log4cpp on Windows with MinGW.

Now I got the following to work:
Names.hpp

#ifndef NAMES_HPP
#define    NAMES_HPP

#include <log4cpp/Category.hh>

namespace names {
  

    class Names
    {
    public:
        Names();
        Names(const Names& orig);
        virtual ~Names();
        void getNames();
        std::string myNames();
    private:
        std::string firstName;
        std::string lastName;
        log4cpp::Category& logger;
    };
}
#endif    /* NAMES_HPP */

using in Names.cpp as:
 


Names::Names(....) :logger(log4cpp::Category::getInstance("Names")
{
}

string Names::myNames()
    {
        std::stringstream combinedName;

        combinedName << this->firstName << " " << this->lastName;
        logger.info("Combined name <%s>", combinedName.str().c_str());
        return combinedName.str();
    }

and in the Main-Method:
int main(int argc, char** argv)
{
    std::string logFileName = "log4cpp.prop";
    try
    {
        log4cpp::PropertyConfigurator::configure(logFileName );
    }
    catch( log4cpp::ConfigureFailure e)
    {
        cerr << "Log4cpp Error: " << e.what() << endl;
    }

where the property configuration is:

log4j.rootCategory=DEBUG, rootAppender
log4j.category.Names=DEBUG, A2
log4j.additivity.Names=false
log4j.category.sub2=INFO
log4j.category.sub1.sub2=ERROR, A2

log4j.appender.rootAppender=org.apache.log4j.ConsoleAppender
log4j.appender.rootAppender.layout=org.apache.log4j.BasicLayout

log4j.appender.A1=org.apache.log4j.FileAppender
log4j.appender.A1.fileName=A1.log
log4j.appender.A1.layout=org.apache.log4j.BasicLayout

log4j.appender.A2=org.apache.log4j.ConsoleAppender
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.layout.ConversionPattern=[%d{ISO8601}] [%c/%p] %m %n


and a sample output looks like:
[2011-12-08 14:55:00,182] [Names/INFO] Default Constructor
[2011-12-08 15:14:10,542] [Names/INFO] FirstName a; LastName b

For linking with MinGW, I had to add the following lib -lws2_32




Dec 5, 2011

log4cpp compile on Windows with MinGW and Usage in NetBeans 7.1RC1

Just for testting, I attempted to use NetBeans 7.1RC1 on Windows with MinGW-Compiler.

I installed to MinGW installer, which was getting everything from the Web.

In NetBeans the Compiler must be configured by adding the MinGw/bin Path as base directroy.


Creating a new project still fails, because I had also to add
C:\MinGW\msys\1.0\bin to the PATH envrionment to find mkdir, which is used in
the makefiles of a C++ Project in NetBeans, otherwise the build fails.

log4cpp can be downloaded starting from here.

Starting a bash and using configure --prefix=/c/sdk/log4cpp/1.0 started the configure and
afterwards a make attempted to compile the source, but there are some problems.

I found the solution by a nice guy Zih Jun on his blog.

After some modifications in the log4cpp source, it could be compiled, although there was
a problem with dirname in the configure step.

After doing a make install all necessary things were copied.

In the Project-Options of NetBeans, I added the include path.


But the code completion just showed some files.



The reason therefore ist, that NetBeans doesn't recognise  header files with the extension .hh which
log4cpp is using.

Adding hh to the extensions showed all headers.



Now the real learing starts, how to use log4cpp.

Nov 30, 2011

UrukDroid 1.6RC2 upgrade to 1.6RC4

This week a 1.6RC3 update was released by sauron.
Yesterday I started a backup and an upgrade and found, that also
a 1.6RC4 is available.

Did the upgrade on the Archos 101 and had no problems.

On The RC2 there were some hangs but not very often.

See this forum for infos.

Nov 17, 2011

Running pdf_presenter_console on OpenIndiana

On this blog, I have recognized the PdfPresenterConsole.

To compile it, there are some prerequsites. I had to manually compile the
vala-Language.

Evince already brought in the libpoppler and the remaining parts were
already on my laptop.

Doing the compilation issued an error from cmake about an unsupported
command unset.

Because I compiled a new vala compiler, the version must be suitable.
To circumvent this compile error, I commented in
Pdf-Presenter-Console-2.0/cmake/Vala_CMake/vala/ValaVersion.cmake

    unset(version_accepted)

out.
After this the compilation could be done without a problem and
the presenter could be started without a problem.

It displays on the internal and external Screen, shows the remaining
presentation time and next slide.

Nov 13, 2011

VPN to Cisco via vpnc on OpenIndiana

On my laptop, I have OpenIndiana 151a installed.
The sfe repository has a vpnc package, which I installed on my system.

I configured a site config file in /etc/vpnc/, the VPN tunnel seemd to be
established, but all changing of routing issued errors about
"network not reachable", although the IP's DNS-Server IP and so on
are retrived via the VPN tunnel.

After a message to the openindiana-discussion list I got some response
and a hint from Sriram Narayanan where he has a VPN tunnel.

On his supplied links:

http://my2ndhead.blogspot.com/2008/11/connecting-opensolaris-to-cisco-vpn.html
http://atechnicaljourney.blogspot.com/2008/10/howto-get-tuntap-compile-for-x64.html

I found the redirect to the VPNC scripts
From there, I downloaded the snapshot from 2011-09-04 and replaced
the vpnc-script in /etc/vpnc with the one from the snapshot.

After this I restarted vpnc and the tunnel got established and routing could
be added.

Now I can directly communicate with the other side of the tunnel and
issue a mercurial pull and so on.

The tunnel is up now and even DNS resolving works.

jEdit attempt to reopen a file on a networkdrive not available

jEdit ist a nice java editor supporting to open and edit files via a SFTP
server.
I think it's the FTP plugin which allows to do this.

But now, the last time I had a file open from a SFTP site and now this is not
available and the editor still attempts to get a connection to this site.
Opening a local directory is always denied because of an opening of the remote site.

There is a start option for jedit to do not open recent files

jedit -noremote

Now jEdit starts without trying to open remove files.

Nov 9, 2011

Thunderbird 8.0 & Firefox 8.0 on OpenIndiana

Today I installed Thunderbird 8.0 & Firefox 8.0 on my OpenIndiana 151a.

So far everything is working. For thunderbird the lightning 1.0 must be installed.

The other plugins so far work, when the max version in install.rdf is increased
excpet the engimail. But engimail also didn't work in 7.0. Only in the 6.0 version with the engimail 1.3.2 from here.

I already attempted to compile engimail, but therefore I need a thunderbird
compilation environment, but I do not get thunderbird to compile in
OpenIndiana.

rinetd on AIX can not start

if (!allowRules && allowRulesTotal > 0 ) {
                goto lowMemory;
        }
I've tried to compile rinetd on AIX 6.1 with gcc.

For the compilation the local getopt.c must be compiled and the header file
in rinetd.c must be #include "getopt.h" and all object files including getopt.o must be linked.

But starting the rinted issued the following error:

rinetd: not enough memory to start rinetd

After some looking around, in the source code, I found the problem.

I do not have any allow or deny rules in the rinetd.conf and therefore
the malloc resulted in a NULL Pointer which branched to the lowMemory mark.

old:
if (!allowRules) {
                goto lowMemory;
        }
new:

if (!allowRules && allowRulesTotal > 0 ) {
                goto lowMemory;
        }
old:
if (!denyRules) {
                goto lowMemory;
        }
new:

if (!denyRules && denyRulesTotal > 0) {
                goto lowMemory;
        }

Interesting is, why this was not a problem on e.g.: Solaris?

Nov 4, 2011

Updated VirtualBox to Versoin 4.1.6 from 4.1.4

Today VirtualBox 4.1.6 is realeased. Here is the changelog.

Installation was done without problems. The start of my Win XP instance and
the update of the Guest Additions were no problems.

The instance is running.

The VirtualBox Manager can only be started by setting LD_NODIRECT=1, but the Preferences Dialog causes a core dump.

The extension pack can be installed via the commandline:

[ewer@solewer:~/tmp]$/opt/VirtualBox/VBoxManage extpack install --replace ../Downloads/Oracle_VM_VirtualBox_Extension_Pack-4.1.6-74713.vbox-extpack
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Successfully installed "Oracle VM VirtualBox Extension Pack".

The Settings of the VM can be viewed.

Nov 3, 2011

Archos Tablet Update to UrukDroid 1.6RC2

Yesterday Sauron published RC2 of UrukDroid 1.6. The Update can be downloaded from http://sauron.pourix.com/UrukDroid/UrukDroid-1.6/. 

The Update was smooth without problems. Only the GMail account has to
be inserted again.

The backup menu of UrukDroid is reachable by booting the Archos and
after disappearing of the Archos logo the volume key has to be pressed.
( But that I have to verify, because yesterday I did just got into the backup for
one time to save root & data filesystem. )

Oct 4, 2011

Upgraded VirtualBox to just release 4.1.4 on OpenIndiana 151a

Just saw, that VirtualBox 1.4.1 is released.

Downloaded did a pkgrm SUNWvbox and a pkgadd.

VirtualBox started without problem, by using my startscript  setting LD_NODIRECT=1.

Have to test, if this version works without the workaround.

Getting cppunit 1.12.1 to compile on OpenIndiana 151a

The cppunit 1.12.1 has some problems to be compiled on Solaris or maybee even *nix with gcc.

First configure fails, regardless if sunstudio or gcc is used as compiler platform.
dirname has to many options

creating include/cppunit/config-auto.h - prefix CPPUNIT for config/config.h defines
dirname: extra operand `/ausl'
Try `dirname --help' for more information.
/* automatically generated config/ contrib/ doc/ examples/ include/ lib

The solution was found here. Replace all
/* automatically generated */
with
$ac_prefix_conf_INP
in the configure script.
After this the configure worked. 

But compiling cppunit was failing

 g++ -DHAVE_CONFIG_H -I. -I../../config -I../../include -I../../include -g -O2 -MT TestAssert.lo -MD -MP -MF .deps/TestAssert.Tpo -c TestAssert.cpp  -fPIC -DPIC -o .libs/TestAssert.o
In file included from TestAssert.cpp:2:0:
../../include/cppunit/portability/FloatingPoint.h: In function ‘int CppUnit::floatingPointIsFinite(double)’:
../../include/cppunit/portability/FloatingPoint.h:43:21: error: ‘finite’ was not declared in this scope
The solutions was in a forum entry for cppunit.

--- cppunit-1.12.1/include/cppunit/portability/FloatingPoint.h 
+++ cppunit-1.12.1/include/cppunit/portability/FloatingPoint.h 

@@ -3,6 +3,11 @@ 
#include <cppunit/Portability.h> 
#include <math.h> 
+#if defined(__sun) && !defined(CPPUNIT_HAVE_ISFINITE) && defined(CPPUNIT_HAVE_FINITE) 
+#include <ieeefp.h> 
+ // <math.h> is still needed for usage of fabs in TestAssert.cpp 
+#endif 
CPPUNIT_NS_BEGIN
After this the compilation works.

I used the compiler commands from here  to compile with the SunStudio compiler.
I also had to insert the math.h after ieeefp.h because of unreferenced fabs
error.

Oct 3, 2011

How to change passphrase of gpg keyring

On my OpenIndiana I have gpg2 installed.
The keyring is from an older installation, with an old passphrase.

To change the passphrase list your keys with
gpg2 -k

after this you can edit the key with
gpg --edit-key <your key>
>passwd

on my side, a GTK Dialog opens to request the old and the new passphrase.

seahorse is a GUI app to do the same, available in the OpenIndiana repo

Sep 29, 2011

Thunderbird 7.0 and engimail on OpenIndiana does not work

After the release of Thunderbird 7.0, I installed the version on my
OpenIndiana installation, but engimail fails to work, although the plugin
starts.

The debug shows the following error:

2011-09-29 11:36:06.561 [ERROR] enigmail.js: Enigmail.initialize: Error - Enigmime Service not available
2011-09-29 11:36:06.561 [DEBUG] enigmail.js: Enigmail.initialize: exception=TypeError: Components.classes[NS_IPCSERVICE_CONTRACTID] is undefined

The  screenshot is:

Switching back to thunderbird 6.0 lets engimail work.


Sep 26, 2011

smime signed email on Android

A colleague started to sign the emails with smime. On my Android Tablet
I'm using K9 mail for mail reading, but the signed e-mails can not be viewed.
To see this emails also, I added an app named Djigzo from the Android market
This can also "decrypt" the email and it can be seen on the Android device. 

Sep 16, 2011

VirtualBox in OpenIndiana suddenly doesn't start -> VBoxSVC core dumps

I upgraded to the latest version and switched also the sfe repository to

sfe                                   origin   online   http://pkg.openindiana.org/sfe/
sfe-encumbered                        origin   online   http://pkg.openindiana.org/sfe-encumbered/


After some digging ( execsnoop of DTraceToolkit ) I saw, that
VirtualBox starts VBoxSVC.

I started VBoxSVC manually and after launching VirtualBox the VBoxSVC process terminates.

Here is the pstack of the core showing the relevant thread:


-----------------  lwp# 3 / thread# 3  --------------------
 00000000003c9cc5 ???????? ()
 fffffd7fff1febc5 _SUNW_Unwind_RaiseException () + 55
 fffffd7ffdda3b69 __cxa_throw () + 59
 fffffd7ff7ae2c99 _ZN3xml4FileC1ENS0_4ModeEPKcb () + 2c9
 fffffd7ff7ae8531 _ZN3xml13XmlFileParser4readERK9RTCStringRNS_8DocumentE () + b1
 00000000006acade _ZN8settings14ConfigFileBaseC2EPKN3com7Utf8StrE () + 13e
 00000000006bcdc5 _ZN8settings14MainConfigFileC1EPKN3com7Utf8StrE () + 35
 00000000006954bd _ZN10VirtualBox4initEv () + 2dd
 0000000000696a49 _ZN10VirtualBox14FinalConstructEv () + 9
 00000000006efe9d _Z21VirtualBoxConstructorP11nsISupportsRK4nsIDPPv () + 12d
 fffffd7ff6e963ce _ZN16nsGenericFactory14CreateInstanceEP11nsISupportsRK4nsIDPPv () + 24
 fffffd7ff6e57373 _ZN22nsComponentManagerImpl14CreateInstanceERK4nsIDP11nsISupportsS2_PPv () + 175
 fffffd7ff5d9a9e1 _ZN18ipcDConnectService7OnSetupEjPK13DConnectSetupj () + af
 fffffd7ff5d9a917 _ZN18ipcDConnectService17OnIncomingRequestEjPK10DConnectOpj () + 2d
 fffffd7ff5d99071 _ZN14DConnectWorker3RunEv () + 211
 fffffd7ff6e638de _ZN8nsThread4MainEPv () + 2e
 fffffd7ff6e9487a _pt_root () + 90
 fffffd7ff6e9493f _pt_iprt_root () + c
 fffffd7ff7b1374c rtThreadMain () + 2c
 fffffd7ff7b60321 _Z18rtThreadNativeMainPv () + 81
 fffffd7fff1f6e44 _thrp_setup () + bc
 fffffd7fff1f7110 _lwp_start ()
The function where the Exception is thrown is:

[ewer@solewer:~]$echo "_ZN3xml4FileC1ENS0_4ModeEPKcb" | c++filt
xml::File::File(xml::File::Mode, char const*, bool)
A truss showed that VirtualBox.xml in $HOME/.VirtualBox is attempted to open.

Before I removed the whole .VirtualBox directory, because of starting problems. Also the backup from zfs snapshot didn't solve the problem.

I found the hint for solving the problem in a Bug for VirtualBox.

Setting the Environment LD_NODIRECT=1 sovled the problem and let
VirtualBox start.

After the first start some time it also starts without the LD_NODIRECT Variable, but anytime later it fails again.


Sep 15, 2011

Getting engimal in thunderbird on OpenIndiana to work

Here I've given the link to the actual engimail -plugin for thunderbird 6,
to allow signing/encrypting of e-mails.

The installation of the plugin had no problems, but executing gpg was
a problem.

I installed gpg2 from the sfe repository.

But execution of gpg2 didn't find pinentry -> The executeables are in /usr/lib/.


So I linked /usr/lib/pinentry-gtk-2 and /usr/lib/pinentry-curses to /usr/bin
and signing with engimail works now.

Sep 14, 2011

Engimail 1.3 for Solaris x86 & Thunderbird 6.0

I have tried to compile thunderbird 6 from source, so that I can also compile
engimail.

But I failed for thundebird, because in same sources, there config said, that
the platform is not supported.

Today I found, that somebody else had more luck and compiled engimail 1.3.2

Find it here.

Now I have to configure everyhting, to get it up and running.

VirtualBox running in OpenIndiana using a vnic routed with Crossbow

OpenIndiana supports by the Crossbow-Project virtual Networkinterfaces and
a virtual Switch.

Now I've changed the configuration of the VirtualBox Instance to use such a vnic
connected to a etherswitch.

ewer@solewer:~$ dladm show-etherstub
LINK
vswitch1
ewer@solewer:~$ dladm show-vnic
LINK         OVER         SPEED  MACADDRESS        MACADDRTYPE         VID
vnic1        vswitch1     0      2:8:20:55:9e:bf   random              0
vnicvsop0    vswitch1     0      2:8:20:7b:84:43   random              0
vnicwinxp2   vswitch1     0      2:8:20:48:d2:6d   random              0


The vnic1 is used in the global zone of the machine, where routing is activated

ewer@solewer:~$ routeadm
              Configuration   Current              Current
                     Option   Configuration        System State
---------------------------------------------------------------
               IPv4 routing   enabled              enabled
               IPv6 routing   disabled             disabled
            IPv4 forwarding   enabled              enabled
            IPv6 forwarding   disabled             disabled

           Routing services   "route:default ripng:default"

Routing daemons:

                      STATE   FMRI
                   disabled   svc:/network/routing/ripng:default
                   disabled   svc:/network/routing/legacy-routing:ipv4
                   disabled   svc:/network/routing/legacy-routing:ipv6
                   disabled   svc:/network/routing/rdisc:default
                     online   svc:/network/routing/route:default
                     online   svc:/network/routing/ndp:default


For the vnic1 a static address object is created, to have the interface always
up and running:

ewer@solewer:~$ ipadm show-addr
ADDROBJ           TYPE     STATE        ADDR
lo0/v4            static   ok           127.0.0.1/8
vnic1/v4          static   ok           192.168.1.1/24
e1000g0/_a        static   ok           10.0.50.58/8
lo0/v6            static   ok           ::1/128

In VirtualBox the Interace is selected and operated in Bridged Mode.
The important thing is to set the MAC-Address to the same value as the
interface itself has.

ewer@solewer:~$ dladm show-vnic vnicwinxp2
LINK         OVER         SPEED  MACADDRESS        MACADDRTYPE         VID
vnicwinxp2   vswitch1     0      2:8:20:48:d2:6d   random              0


oterhwise the network connection will not work. Got the hint from here.



Additionally I have ipnat active, to map the outgoing traffic to the server interface ip address.


ewer@solewer:~$ cat /etc/ipf/ipnat.conf
map e1000g0  192.168.1.0/24 -> 0/32
ewer@solewer:~$ svcs ipfilter
STATE          STIME    FMRI
online          9:08:16 svc:/network/ipfilter:default


Sep 12, 2011

Update OpenIndiana on 12.09.2011

The OpenIndiana pkg repository got two frequently updates.

Both didn't have any problem. They created each a new bootenvironment

Here the log from the first update:

root@solewer:~# pkg install package/pkg
                Packages to update:     1
           Create boot environment:    No
DOWNLOAD                                  PKGS       FILES    XFER (MB)
Completed                                  1/1     124/124      0.7/0.7

PHASE                                        ACTIONS
Update Phase                                 240/240

PHASE                                          ITEMS
Package State Update Phase                       2/2
Package Cache Update Phase                       1/1
Image State Update Phase                         2/2

PHASE                                          ITEMS
Reading Existing Index                           8/8
Indexing Packages                                1/1
root@solewer:~# pkg update
                Packages to update:  1145
           Create boot environment:   Yes
DOWNLOAD                                  PKGS       FILES    XFER (MB)
Completed                              1145/1145 19518/19518  601.2/601.2

PHASE                                        ACTIONS
Removal Phase                              6183/6183
Install Phase                              7285/7285
Update Phase                             30378/30378

PHASE                                          ITEMS
Package State Update Phase                 2290/2290
Package Cache Update Phase                 1145/1145
Image State Update Phase                         2/2

PHASE                                          ITEMS
Reading Existing Index                           8/8
Indexing Packages                          1145/1145
Indexing Packages                          1145/1145
Optimizing Index...

PHASE                                          ITEMS
Indexing Packages                          1319/1319

A clone of OI151-6 exists and has been updated and activated.
On the next boot the Boot Environment OI151-7 will be mounted on '/'.
Reboot when ready to switch to this updated BE.


---------------------------------------------------------------------------
NOTE: Please review release notes posted at:

http://wiki.openindiana.org/oi/oi_151a+Release+Notes
---------------------------------------------------------------------------


The qemu-kvm still does not work for me:

[ewer@solewer:~]$pfexec qemu-kvm -hda /virtual/qemu.img -cdrom /virtual/debian.0.2.1-i386-netinst.iso  -boot d -localtime -no-hpet
kvm: unhandled exit 80000021
kvm_run returned -22


Sep 6, 2011

KVM / QEMU on OpenIndiana 151a fails

I attempted to use KVM from OpenIndiana running Build 151a.

After installing the packages, the kvm module is missing, even after reboot.
I had to modload kvm from the directory /usr/kernel/drv/amd64

First it failed, because the /dev/kvm device was missing. I did an
devfsadm, which seemd to create the device.

But starting qemu-kvm still fails with a looping

root@solewer:/usr/kernel/drv/amd64# qemu-kvm -cdrom /virtual/xpimg.iso  -boot d /virtual/aa.img 2>&1 | more
KVM internal error. Suberror: 2
extra data[0]: 80000008
extra data[1]: 80000b08


Even just starting without options fails:

root@solewer:/usr/kernel/drv/amd64# qemu-kvm -monitor stdio
QEMU 0.14.1 monitor - type 'help' for more information
(qemu) kvm: unhandled exit 80000021
kvm_run returned -22

(qemu) info kvm
kvm support: enabled

Update:
After rebooting the day after, VirtualBox failed to start and locks the
whole computer.
After modunload -i <number of kvm module>, VirtualBox starts again.

Aug 31, 2011

mucommander can not sftp to OpenIndiana

The muCommander, a file browser like Norton Commander, has the option
to connect to a remote server via sftp.




The connection to OpenIndiana fails. The /var/adm/messages log shows the following:

Aug 31 11:02:50 solewer sshd[7303]: [ID 800047 auth.crit] fatal: Client and server could not agree on a common cipher: client "blowfish-cbc,3des-cbc", server "aes128-ctr,aes192-ctr,aes256-ctr,arcfour128,arcfour256,arcfour". The server cipher list can be controlled using the "Ciphers" option, see sshd_config(4) for more information.
After adding the Ciphers listed in the man page for sshd_config containing
blowfish-cbc,3des-cbc
sshd_config:

Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-cbc,aes192-cbc,aes256-cbc,arcfour,arcfour128,arcfour256,3des-cbc,blowfish-cbc   
 and restarting the ssh service
svcadm restart ssh

muCommander can connect via sftp.


Aug 24, 2011

cvs2hg converted repository with branches and hg convert with filemap destroys data

I had to convert a CVS repository to Mercurial. The CVS repository had a lot
of branches. The conversion was done, as described in my former post about converting a CVS to HG.

After the conversion, there was a root directory in the HG-Repo, which should
be removed.

hg convert --filemap map.txt <source> <target>

would do the magic.

The content of the filemap was:

rename <rootDir> . 

But the resulting HG repository was missing some directories and files.
So this was a not usable for me.
I found the following issue discussing the problem.

The other way to convert was to convert from CVS to SubVersion and
use hg to convert from SubVersion to Mercurial

ATTENTION: for this you need subversion bindings for Python 

cvs2svn --config=svn.cfg

The changes in the svn.cfg from the example were
ctx.output_option = NewRepositoryOutputOption(
to set the SVN Repo

change all the decorders to latin1

and set
run_options.add_project
the path to the CVS Repository.

After converting to SubVersion, I deployed the Repo to the Apache/WebDav
installation and started the conversion to HG by
hg convert -A authormap http://<SubVersionServer/Repo> <MercurialRepo>

and after this a run with
hg convert --filemap map.txt <MercurialRepo> <strippedRepo> 

and the files were in the new repo with the removed root directory.

Aug 23, 2011

converting a CVS repository with branches to Mercurial ( hg )

I had to convert a old CVS repository with a lot of branches to Mercurial. 

The first attempt was to use the convert extension from Mercurial to do
a direct conversion from cvs to hg.

The conversion with
CVSROOT=$HOME/CVSDIR
export CVSROOT
cvs co 


hg convert -A $HOME/authormap <cvsworkdir> <newHgRepo>
The conversion went through with a OutOfMemory during the run,
but hg convert can continue where it left the job.

But this new HG-Repository had wrong branch data inside.
After searching for a solution, I found out that the hints all said to
convert first to subversion and afterwards to mercurial.

Here is the home for repository conversion@Mercurial

I started by using cvs2hg which uses internally the cvs2svn code base.

After cloning the cvs2hg repo with
hg clone http://hg.gerg.ca/cvs2svn

and adjusting the config example I started to do the first run:

./cvs2hg  --options=./cvs2hg-example.options

My settings changed in the example config where
  • to set the decoders to latin1, 
  •  set the author_transforms dictionary
  • set ctx.output_option for the name of the new hg repository. 
  • set in run_otpions.set_project the path to the CVS repository to convert. 
The CVS-Repository was local on my machine instead of a network drive,
because hg convert also likes to have the repo locally.

The first run failed, because on my OpenIndiana there was a wrong dbm implementation in python for the module anydbm.

I downloaded the gdbm 1.8.3, compiled and installed in the default
path to /usr/local.
After this I had to download Python 2.7 and compile it locally.

First edit Module/Setup  in the python source tree:
gdbm gdbmmodule.c -I/usr/local/include -L/usr/local/lib -lgdbm
and some other modules inside the tree.
I had to set LD_LIBRARY_PATH to /usr/local/lib and /usr/sfw/lib for
gdbm and the gcc libs.


./configure --with-dbmliborder=gdbm --prefix <my installation dir>

After compiling and installing the new python,
a restart of the cvs2hg went through the conversion,l
and created a new HG repository.

Aug 22, 2011

UrukDroid CPU Governor - battery life

After Updating my Archos to UrukDroid 1.5.1, the setting for the
cpugovernor as described here  was "lost".

So I updated the /etc/uruk.conf/cpugovernor again t switch to the convservative governor.

During the first days of using UrukDroid, I thought, that the battery life was shortened.

After some time I recognized that sending the device to sleep does not always
work.
The green led beside the power button didn't always turn off. So I'm checking
the device now, if the led goes off and now the batter life is better.



Aug 21, 2011

New Update on OpenIndiana from 19.08.2011

There are new updates on http://pkg.openindiana.org/dev-il available.

The update was smooth without problems after the reboot:


root@solewer:~# pkg image-update                                               
                Packages to update:   356
           Create boot environment:   Yes
DOWNLOAD                                  PKGS       FILES    XFER (MB)
Completed                              356/356   3330/3330  168.7/168.7

PHASE                                        ACTIONS
Removal Phase                                986/986
Install Phase                                983/983
Update Phase                               5210/5210

PHASE                                          ITEMS
Package State Update Phase                   712/712
Package Cache Update Phase                   356/356
Image State Update Phase                         2/2

PHASE                                          ITEMS
Reading Existing Index                           8/8
Indexing Packages                            356/356
Indexing Packages                            356/356
Optimizing Index...

PHASE                                          ITEMS
Indexing Packages                          1288/1288

A clone of OI151-5 exists and has been updated and activated.
On the next boot the Boot Environment OI151-6 will be mounted on '/'.
Reboot when ready to switch to this updated BE.


---------------------------------------------------------------------------
NOTE: Please review release notes posted at:

http://docs.sun.com/doc/821-1479
---------------------------------------------------------------------------

Aug 17, 2011

Thunderbird 6.0 is available

Thunderbird 6.0 is available for download.

Works so far on OpenIndiana, but Lighting does not work ( 1.0b5) even when
updating the install.rdf to the new version, there are some errors.


Exception: [Exception... "Component returned failure code: 0x80570015 (NS_ERROR_XPC_CI_RETURNED_FAILURE) [nsIJSCID.createInstance]"  nsresult: "0x80570015 (NS_ERROR_XPC_CI_RETURNED_FAILURE)"  location: "JS frame :: resource://calendar/modules/calUtils.jsm -> file:///export/home/ewer/.thunderbird/hlimkdtv.default/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/calendar-js/calUtils.js :: createTodo :: line 67"  data: no]
1: [file:///export/home/ewer/.thunderbird/hlimkdtv.default/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/components/calStorageCalendar.js:2364] cSC_logError
2: [file:///export/home/ewer/.thunderbird/hlimkdtv.default/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/components/calStorageCalendar.js:844] cSC_getItems_
3: [file:///export/home/ewer/.thunderbird/hlimkdtv.default/extensions/%7Be2fda1a4-762b-4020-b5ad-a41df1933103%7D/components/calStorageCalendar.js:647] null
This is a no go for me.

Update 19.08.2011:

There is an update for lightning 1.0b5
having a Thunderbird 6.0 compatible version at http://releases.mozilla.org/pub/mozilla.org/calendar/lightning/releases/1.0b5/contrib/solaris-x86/

With this update, the calendar plugin works again in Thunderbird 6.0

The quicktext extension has also an update from the developer ( http://extensions.hesslow.se/extension/4/Quicktext/ ) to let it work on
Thunderbird 6.0

Switched over to Thunderbird 6.0

Aug 16, 2011

VirtualBox 4.2.1 is released, but USB seems not to work in OpenIndiana

VirtualBox 4.2.1 is release.
Installation on OpenIndiana Build 151 with Illumos repository works.
Windows XP starts, but USB-Devices seem not to work:

Also a modinfo shows, that the module is loaded

root@solewer:/opt/VirtualBox# modinfo | grep vbox
219 fffffffff8b49000  2e370 296   1  vboxdrv (VirtualBox HostDrv 4.1.2r73507)
259 fffffffff7921550    d48 297   1  vboxnet (VirtualBox NetAdp 4.1.2r73507)
261 fffffffff8d33000   7960 298   1  vboxflt (VirtualBox NetDrv 4.1.2r73507)
261 fffffffff8d33000   7960   -   1  vboxflt (VirtualBox NetMod 4.1.2r73507)
262 fffffffff8d3b000   4a08 299   1  vboxusbmon (VirtualBox USBMon 4.1.2r73507)
263 fffffffff8d40000   75d8 300   1  vboxusb (VirtualBox USB 4.1.2r73507)

Aug 15, 2011

Firefox 6.0 available for download.

Firefox 6.0 is available for download.
Windows, Linux, Solaris see here.

SSH access to UrukDroid 1.5

First activate via UrukConfig the SSH server.

After activating SSH, teh overview of services shows the IP adress of the device.

Use putty.exe on Windows to connect to the device.
Username is root
Password is UrukDroid ( found here )

Changing cpugovernor on UrukDroid

The UrukConfig app allows to activate the CPU governor to activate the dynamic CPU
switching.

To save battery power, I changed in /etc/uruk.conf/cpugovernor 
cpu_governor="conservative"
...
cpu_governor_modules="cpufreq_powersave cpufreq_conservative cpufreq_userspace"

cd /etc/uruk.d
./cpugovernor stats 

shows the ticks in each frequency range.

During tests with 1.5B3 it showed a lot more ticks in 300 MHz instead of ticks in 1GHz mode.

The conservative mode only increased the CPU frequenzy for some amount and does not switch to
full mode.

UrukDroid 1.5 update from 1.5RC1 on Archos 10.1

On http://sauron.pourix.com/UrukDroid/UrukDroid-1.5/ is a new update file for 1.5
I first had to update with UrukDroid-1.5-kernel.tbz2 by copy of the file to /data/UrukUpdate.
There was no autoamtic reboot, but looking into /var/lib/urukdroid/update.log, showed that the
kernel update was successful.
There ware 2 killed message in /system/xbin/uruk_upd: line 94

After this installation, the start showed uruk 1.5 as boot, but swithing to the rootfs still shows 1.5RC1.
Also putting UrukDroid-rootfs-update.tgz into /.upgrade and rebooting didn't remove the 1.5RC1 from swithing to rootfs

Since midday ( 15.08.2011 )  there is also a UrukDroid-1.5-upgrade.tbz2 upgrade file to be put to /data/UrukUpdate.

After putting it into the directory, an automatic reboot is initiated after the uprade es decompressed and
during the reboot the rootfs is upgraded and the 1.5RC1 for init of rootfs is 1.5 and not any RC1 more.

cat /etc/urukdroid-version 
shows
UrukDroid 1.5 ( 15.08.2011)

 

Aug 10, 2011

UrukDroid 1.5 RC1 is available for download

On my Archos 10.1 if've installed UrukDroid, to get root access and vpnc ( for VPN connection  ) running.

Now there is the installation for 1.5 RC1 available.

I was allready on B3 and installed. But this was a mistake from my side. It really installed it and works
fine, but my installation with the apps was trashed.

But this was an opportunity to reformat.

The installation was via the SDE menu Recovery System -> Update Firmware and installed the firmware

Started via SDE the Developer Edition and copied the install-File. 

This installation works without problems.  

Aug 5, 2011

New UrukDroid Update 1.5B3 for Archos available

There is a new Update for Archos 101 UrukDroid 1.5 available. This is B3.

The direct update by coping to /data/UrukUpdate doesn't work. This shows "wrong signature" in
the update.fail log -file in ( /var/lib/urukdroid I think so )

But on xda-developers there is described how to manually update the system. 


0. Extract UrukDroid-1.5B3-upgrade.tbz2
1. Flash zImage and initramfs.cpio.gz through SDE
2. Enter USB MMC and copy UrukConfig.apk to /data/app and bootanimation.zip to /data/customization
3. Create .upgrade folder in / and put UrukDroid-rootfs-upgrade.tgz in it.
4. Reboot and the upgrade will start.

Upgrade the manual way worked for me. 



Jul 31, 2011

Changed OS on Archos 101 to UrukDroid ( upgrade to 1.5B2 )

Now I've changed to OS on my Archos 101 from the Archos firmware to UrukDroid.

First contact was an installation tutorial for 1.0.
Where also the files are listed for download.
The homepage of UrukDroid is at google.

 To use UrukDroid, the Archos must be patched to use the SDE Firmware from Archos itself.

Following the installation instruction was no problem to install.

The next Versions of UrukDroid are not released yet, but I'd like to upgrade to the Beta-Version
of 1.5. The download files root is here.

My first fault was, to extract the archive and just copy oer the update-File, but you have to
copy the whole archive downloaded to the archos device.

The archive has to be put to /data/UrukUpdate on you're device. So you have to use a Fileexplorer or
terminal to move the file from /sdcard to /data/UrukUpdate.
After some time the device starts to update itself.

I recognized a slowdown of the device during the updated phase. When the update is finished, the
devie reboots itself.

The file /etc/urukdroid-version contains the actual version of the instaled system.

Also vpnc ( VPN Network establish tool ) works now with UrukDroid 1.5.
Version 1.0 was not able to establish a VPN Connection.

Jul 26, 2011

Updated my OpenIndiana Build 151 Installation

Just saw that, the there was an update in PKG-Repository for Dev-Illumos at
25.07.2011.

So I started a pkg upate

root@solewer:~# pkg update
                Packages to update:   350
           Create boot environment:   Yes
DOWNLOAD                                  PKGS       FILES    XFER (MB)
Completed                              350/350   1522/1522    24.0/24.0

PHASE                                        ACTIONS
Removal Phase                                  99/99
Install Phase                                  80/80
Update Phase                               5414/5414

PHASE                                          ITEMS
Package State Update Phase                   700/700
Package Cache Update Phase                   350/350
Image State Update Phase                         2/2

A clone of OI151-2 exists and has been updated and activated.
On the next boot the Boot Environment OI151-3 will be mounted on '/'.
Reboot when ready to switch to this updated BE.


---------------------------------------------------------------------------
NOTE: Please review release notes posted at:

http://docs.sun.com/doc/821-1479
---------------------------------------------------------------------------

After the reboot everything seems to be fine so far.


Jul 25, 2011

C/C++ Feature in NetBeans to show the Callgraph of a function

Found a nice feature in the C/C++ Plugin of Netbeans.

Select a function in the code, right click and select "Show Call Graph".
This opens a window and shows the callgraph depending on the selection you do.
All Functions called by this one or all other functions calling this one.


Jul 20, 2011

VirtualBox 4.1.0 is release

The Version 4.1.0 of VirtualBox is released.

Download for Solaris x86/amd64 is here.

Installation and start of an XP instance in OpenIndiana 151 was not problem.
The installation still needed the saved boot of XP.

Jul 18, 2011

VirtualBox 4.0.12 ist released

A little bit late, because of vacation, but Version 4.0.12 of VirtualBox is release.
Downloaded and installed on OpenIndiana without problems. The Virtual XP
instance is up and running with the updated Guest Additions.

Thunderbird 5.0 -> QuickText extensions does not work

I installed Thunderbird 5.0 on my OpenIndiana Box from the reference page in opensolaris.org.

In former releases of Thunderbird, I used a lot the quicktext-extension.
This extension allows to define macros/templates of text, which can be
expanded after pressing a special key like TAB in my case.
But the extension does not work anymore with Thunderbird 5.0.
Also editing the install.rdf and increasing the version number does not solve
the problem.

But at the home of the developer I found a beta version 0.9.11.0 for download.
This extension also works in thunderbird 5.0 and all my templates are
here again.