Playing with OpenSolaris once again, I surely also wanted to make use of my favorite desktop environment XFCE on that platform. Unfortunately, so far there are no up-to-date XFCE binary packages available to easily be installed using either IPS or the “traditional” Solaris way. Same way, xfce.org just does list a set of Linux packages along with a link to blastwave.org which seems to be stuch at XFCE 4.2, neither including Thunar file manager nor many of the more interesting features in 4.4.x series of the lightweight desktop environment. What to do? No problem it seems, as there is a “generic” Unix installer, basically some sort of shell script unpacking everything that is needed, checking that all that is needed is actually there and, then, building things in the right order. So far, so good…
There’s a drawback however: It doesn’t work out of the box with OpenSolaris, as most of the packages required to build XFCE (gcc, GNU make, some headers, …) simply aren’t there in a default installation. Worse: As far as the build has been started, failures (resulting in missing header files, wrong arguments used to call external programs, …) are about to definitely and irreversibly stop the process, leaving you to fix what’s missing, restart things, wait a while and eventually hope that it will go through this time. Plus, a lot of errors keeping part of the whole package from building / installing correctly just might be figured out looking at the build output log files, which surely does need some more in-depth knowledge to be sure what to look for and, afterwards, to know what to get fixed in course of that.
Eventually, I figured out how to completely get it done however, using an “osol*-100a” ISO image downloaded from http://www.genunix.org/distributions/indiana/. And the way to go doesn’t seem that difficult looking back at it, after all:
– Get development packages required to do so. Figuring this out was rather easy after knowing how to correctly operate “pkg search -r”, anyway it is still more painful than on most recent Linux distributions as package names in OpenSolaris so far seem to adhere to a somewhat arcane naming scheme:
pkg install SUNWgcc SUNWgnome-common-devel SUNWGtk SUNWgnome-base-libs SUNWxwinc SUNWperl-xml-parser SUNWgmake
– Get additional perl modules (not available in IPS) using CPAN, which requires ‘lynx’, available to be installed off blastwave.org’s IPS repository:
pkg set-authority -O http://blastwave.network.com:10000/ Blastwave
pkg install IPSlynx
perl -MCPAN -e 'install URI::Escape'
Go through the CPAN configuration first which should be fine choosing defaults in most cases. Be aware that blastwave-lynx gets installed to /opt/csw/bin so be sure to set your PATH correctly after doing so, i.e. by doing “export PATH=/opt/csw/bin:$PATH” in the shell used to run the XFCE installer from…).
– Fix “install” to use GNU install per default as XFCE installer is likely to bail out complaining about disallowed args provided to “install” (eventually you want to change this back after having done the installation):
mv /usr/sbin/install /usr/sbin/orig.install
ln -s /usr/bin/ginstall /usr/bin/install
– Download and run the XFCE graphical installer, which, by now, should run through just straightaway. Be sure however to disable the “ALSA” option while building as this is pretty much Linux specific (obviously?).
The installer dumps everything right to /usr/local and, in addition to that, does modify your GDM configuration so you can choose an “XFCE 4 Session” prior to logging in to your OpenSolaris system. My first session just lasted for a fragment of seconds however and seemed to have ended because some of the XFCE applications were not found while starting the session… I simply resolved this by adding
to the beginning of
/usr/local/etc/xdg/xfce4/xinitrc which, after all, made my XFCE session usable. Fine. 🙂 Now, just minor tweaking is left to be done: Getting the visual theme all set up to resemble the incredible OpenSolaris “Nimbus” theme is easy as the GTK+ theme for that is installed and usable straightaway in XFCE4. For the window manager (xfwm), an appropriate theme can be found here. Only thing really left now is setting up language to have de_DE enabled in all parts of XFCE. But that’s probably another story and, given the amount of tries I gave to the XFCE Graphical Installer, it should be a small issue after all… 😉