Another exciting event has just been announced for Dublin next year with an Open Source Software Barcamp planned for Dublin March 28th next year. And you could be one of the speakers! The idea behind a barcamp is to have a casual relaxed atmosphere where the attendees can help drive the schedule – like a conference done in the spirit of Digg. For more info check out Laura Czajkowski’s blog post and if you want to keep up to date with further details you can track things on ossbarcamp on twitter.
Archive for the ‘Linux’ Category
3 Cheers for OSS Barcamp Dublin!
Sunday, November 23rd, 2008File downloads over the command line via CURL
Sunday, November 23rd, 2008This could be a pretty obvious one to a lot of people but it’s just so handy. This will download a file from somewhere.com to your local directory
curl -O http://somewhere.com/somefile.tar.gz
Really handy when you’re administering a remote server and need to pull down files.
Troubleshooting fcgi and the dreaded undefined method `require_gem’ error
Thursday, October 9th, 2008It happens to the best of us. We’ve coded our app go to deploy it and encounter some dispatch.fcgi issue. Today was the turn of
<br />
dispatch.fcgi error: undefined method `require_gem' for main:Object (NoMethodError)<br />
Well way to troubleshoot and arrive at a solution is to actually run ./dispatch.fcgi. I didn’t know you could do this! It’s well handy! If you are on a remote server to which you don’t have ssh access then you can probably still run it as a cron job. Something like cd /path/to/my/app/public && ./dispatch.fcgi should do it. Remember that the dispatch.fcgi file is in the public directory of your application. The combination of running ./dispatch.fcgi and viewing the Rails log file revealed the useful error message above. Then a quick google search revealed that we need to change require_gem to simply gem (see here).
I had to change this in the dispatch.fcgi and then grepped the whole application directory for any instances of require_gem and changed them to gem too.
Recording Sound in Kubuntu 8.10 (running KDE 4.1)
Sunday, September 14th, 2008Exciting times ahoy! This weeks mystery was to get sound recording with the minimum of fuss. We’re not sure what soundcard is running inside the Dell Inspiron 1520 which was our test laptop but it seems to report itself as an HDA Intel SigmaTel STAC9205 in the system settings. Anyway, the first thing to do was to apt install audacity which can then be used for testing the recording functionality. Not being sure if the laptops builtin in mic had been detected correctly, we jacked in an external microphone into the mic socket.
This didn’t produce any encouraging results initially when we tried recording in audacity so we opened up the KDE volume controls by clicking the speaker icon on the taskbar and electing to open the mixer. Unfortunately the GUI controls for the mixer doesn’t have the full complement of volume controls so it was the good ol command line to the rescue – typing alsamixer in terminal brings up a nice range of controls. You can navigate between screens of controls with the tab key and jump from control to control using the left/right arrow keys. The trick was to navigate to the two controls marked ‘Capture’ and bump up the volume (they also need to be activated by pressing the spacebar when you’re on the control). Additionally, there were two controls marked ‘Digital’. One of these controlled the volume of the mic (via the up and down arrows) and the other switched between analog and digital mode (again via the up and down arrows). We found that the latter had to be set to ‘Analog I’ for the best result.
Then it was back to audacity to record a bit of chatter – and then lament how weird ones voice sounds when recorded! Now get mixing mon amis!
QUICK UPDATE (14 Sep 08)
One issue that occurred was that after recording a sample, it couldn’t be played back(“Error while opening sound device. Please check the output device settings and the project sample rate.”). Additionally, a second track couldn’t be recorded. The solution to these problems was to open the Preferences dialog and set both the Playback and Record devices to ALSA (default). Reference: http://audacityteam.org/forum/viewtopic.php?f=18&t=3377
Getting Ruby Plasmoids up and running in KDE 4.1 (on Kubuntu)
Saturday, August 2nd, 2008NOTE: THIS ARTICLE IS NOT YET COMPLETE. IF YOU FOLLOW IT THEN YOU WILL GO A LONG WAY BUT THE PLASMOID IS NOT YET DISPLAYING. SEE THE ‘Run your applet’ SECTION NEAR THE END OF THIS ARTICLE BEFORE PROCEEDING.
Introduction
KDE 4.1 is an absolutely terrific release of the KDE desktop, licking most of the issues presented in the original 4.0 release. Although it is still an early adopter release, 4.1 will be of interest to techie’s who want to get their mitts on a sexy new graphical interface and is reasonably stable for daily usage. Not quite ready for Aunt Tillie yet though! One of the nicest features is the beauty and simplicity of Plasmoids and these super flexible little gadgets can now be written in Ruby – well almost!
This guide assumes that you’re using Kubuntu Hardy Heron. But you should be able to adjust the instructions for any distro.
- The starting point for our tour is to have Ruby installed. Google this if you’re unsure as to whether or not it’s installed.
- We need to install cmake via ’sudo aptitude install cmake’. This is a cross-platform build system, similar to make.
- It’s likely that you will need to install the build UNIX build tools via ‘aptitude search build-essential’.
Get coding!
And now you’re be ready to go. The main tutorial out there on Ruby Plasmoids at time of writing is the Ruby Applet tutorial on KDE Techbase. This is a very good, well written guide on creating a simple Ruby applet in which a web browser is embeded inside the plasmoid. But the guide has a couple of gotcha’s, especially for the newbie (myself included!), so we have listed solutions to these problems as we go. In summary, use our article as an supplement to KDE Techbase’s.
Ok, to start with a demo everyone wants a nicely packaged directory of files, so let’s quickly put together the basic directory structure for our plasmoid – it’s pretty simple!
- Create a directory called ‘ruby-web-applet’
- Save the files plasma-ruby-applet-web.desktop and web_applet.rb into this directory.
- Create a file called CMakeLists.txt under your ruby-web-applet directory and paste the following code into it
set(SERVICES_INSTALL_DIR /usr/lib/kde4/share/kde4/services/)
set(DATA_INSTALL_DIR /usr/lib/kde4/share/kde4/apps/)
FIND_PACKAGE (Ruby REQUIRED)
include_directories( ${RUBY_INCLUDE_PATH} )
install(FILES plasma-ruby-applet-web.desktop DESTINATION ${SERVICES_INSTALL_DIR})
install(FILES web_applet.rb DESTINATION ${DATA_INSTALL_DIR}/plasma_ruby_web_applet)
Go to KDE Techbase
Once you have the above directory in place, go and read the Ruby Applet tutorial on KDE Techbase article down to just before the ‘Install and test the Applet’ paragraph. This will teach you what’s going on in the code. At that point come back to me as I’ll go into a little more detail on the final installation procedure!
You’re back!
Great! Ok, so we have the files on disk, you have a good idea of what the code is doing, now let’s install it and kick your plasmoid into action!
Open the CMakeLists.txt file listed above in a text editor. Change the path listed for KDE4 services and data directories to the ones on your system. These are the lines to change.
set(SERVICES_INSTALL_DIR /usr/lib/kde4/share/kde4/services/) set(DATA_INSTALL_DIR /usr/lib/kde4/share/kde4/apps/)
Do this by replacing ‘/usr/lib/kde4/share/kde4/services/’ with the output of the command ‘kde4-config –install services’ and replace ‘/usr/lib/kde4/share/kde4/apps/’ with the output of the command ‘kde4-config –install data’ command. If you are using Kubuntu then they should be the same as mine but otherwise you may need to change them.
Then make sure you are inside your ruby-web-applet directory and type
cmake .
to generate nice makefiles for you which the make command can then use. Don’t forget the trailing dot! Now type ‘make’ and ’sudo make install’. This will install your plasmoid code into the KDE4 services directory (you can see where this is by running ‘kde4-config –install services’) and your plasmoid data into the KDE4 data directory (you can see where this is by running ‘kde4-config –install data’). Effectively, the installation just involves the two files – plasma-ruby-applet-web.desktop web_applet.rb. If it’s worked then you’ll get output like
Install the project…
– Install configuration: “”
– Installing: /usr/lib/kde4/share/kde4/services/plasma-ruby-applet-web.desktop
– Installing: /usr/lib/kde4/share/kde4/apps/plasma_ruby_web_applet/web_applet.rb
The applet is now installed!
Run your applet (THIS DOES NOT WORK YET)
There are two ways to do this. In a developer kind of way you can run ‘kbuildsycoca4′ from the command line followed by ‘plasmoidviewer plasma-ruby-web-applet’. Unfortunately this currently brings up the error
findServiceByDesktopPath: not found findServiceByDesktopPath: not found
IF YOU HAVE A SOLUTION TO THIS THEN PLEASE COMMENT BELOW!!!
As a user, the cmake/make/make install procedure should have done all the necessary to install your plasmoid and you can activate it by going to the right of the task bar and clicking the Add Widgets icon. You should see your plasmoid listed but unfortunately this is not yet working – presumably for the same reason as the above. Oh well, I’m sure a solution will soon be posted. Until then, happy hackin!
Final notes
Note that the KDE techbase article provides a version of this file but it didn’t work for me because
- I knew nothing about cmake or cmake files and I didn’t even cop that right clicking on the CMakeLists.txt file link in their article and saving it to disk would also save a load of HTML into the file
- The line ‘FIND_PACKAGE (RUBY REQUIRED)’ should really be ‘FIND_PACKAGE (Ruby REQUIRED)’ as it’s case sensitive and will otherwise give you the error
CMake Error at CMakeLists.txt:6 (FIND_PACKAGE):
find_package could not find module FindRUBY.cmake or a configuration file for package RUBY.Adjust CMAKE_MODULE_PATH to find FindRUBY.cmake or set RUBY_DIR to the directory containing a CMake configuration file for RUBY. The file will have one of the following names:
RUBYConfig.cmake
ruby-config.cmake - The destination targets specified in the file didn’t work for me. Perhaps some environment variables need to be set somewhere
- I didn’t even know how to use cmake! Or that you needed to follow it up with ‘make’. Anyway we’ll come cover this soon!
I didn’t need to set any CMAKE_MODULE_PATH but if you are having troubles with this then it’s at /usr/share/cmake-2.6/Modules/ on Kubuntu Hardy Heron. You may be able to set it in your script if your having difficulties as follows ’set(CMAKE_MODULE_PATH /usr/share/cmake-2.6/Modules/)’. Again I haven’t tried this my self!
Getting the Huawei E870 to work on Kubuntu (and Mobile Internet from O2)
Wednesday, March 26th, 2008It’s a shiny express card and it promises Internet free from cables, plugs and sockets but will it work on your pretty Kubuntu laptop? Let’s hope so. This guide worked for me and hopefully it’ll work for you too!
Now before we start let me tell you my setup. I’ve got this working on a Kubuntu based Dell Inspiron using O2 as my network provider. It did not work on a separate Dell Vostro running Ubuntu 7.10 (however I did get it working on a different Kubuntu 7.10 Dell Inspiron laptop). So I’m not sure whether that was a Ubuntu or Vostro thing or just bad luck. Also, note that the below approach worked for me when setting up Huawei’s E220 USB modem too.
In any case, here’s the 6 step plan to happiness
1.) Download the huaweiAktBbo-i386.out file
2.) Create the /etc/chatscripts/huawei-e220.chat file
3.) Create the /etc/ppp/peers/huawei-e220 file
4.) Create the /etc/wvdial-huawei.conf
5.) Edit the /etc/resolv.conf
6.) Create and tailor the /home/username/bin/connectme script (and chmod it!)
7.) Tip of the day – lose the Edge!
1.) Download the huaweiAktBbo-i386.out
This can be done by visiting http://www.kanoistika.sk/bobovsky/archiv/umts/ and downloading the file huaweiAktBbo-i386. If you really want you can also build it from the C source provided (in order to build it you will need to have a C compiler and some basic tools on your system). NB: Copy the huaweiAktBbo-i386.out file to your /home/username/bin directory after downloading. If you don’t have a bin folder under your home directory then create one (‘mkdir /home/username/bin’). Also ensure that it is in your $PATH environment variable. Try echo $PATH and if you don’t see it listed add the following line to your /home/username/.bashrc file
export PATH=$PATH:/home/username/bin
To get this change immediately picked up by your shell run the command ’source ~/.bashrc’. This something I didn’t learn for years!!! D’oh!
2.) Create the following /etc/chatscripts/huawei-e220.chat file
TIMEOUT 3 ABORT BUSY ABORT 'NO CARRIER' ABORT VOICE ABORT 'NO DIALTONE' ABORT 'NO DIAL TONE' ABORT 'NO ANSWER' ABORT DELAYED "" ATZ OK ATQ0V1E1S0=0&C1&D2 OK ATDT*99# CONNECT ""
3.) Create the /etc/ppp/peers/huawei-e220 file
/dev/ttyUSB0 460800 noipdefault defaultroute persist noauth nodetach usepeerdns connect "/usr/sbin/chat -vf /etc/chatscripts/huawei-e220.chat"
4.) Create the /etc/wvdial-huawei.conf
[Dialer Defaults] Modem = /dev/ttyUSB0 #Baud = 3600000 Baud = 7200000 Init1 = ATZ Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 Init3 = Area Code = Phone = *99# Username = ppp Password = ppp Ask Password = 0 Dial Command = ATDT Stupid Mode = 1 Compuserve = 0 Force Address = Idle Seconds = 0 DialMessage1 = DialMessage2 = ISDN = 0 Auto DNS = 1
5.) Edit the /etc/resolv.conf file
Add the following entries at the top of this file (they are O2’s nameservers)
nameserver 62.40.32.33 nameserver 62.40.32.34
6.) Create the and tailor the /home/username/bin/connectme script as follows (and chmod it!)
Note: See step 1 for more instructions if you don’t have a bin folder in your home directory
#!/bin/bash sudo /home/username/bin/huaweiAktBbo-i386.out # CHANGE THIS TO YOUR 'USERNAME' sleep 3 # wait for the USB host to settle down... sudo wvdial --config /etc/wvdial-huawei.conf #/usr/sbin/pppd call provider
Then just do a ‘chmod u+x /home/username/bin/connectme’ from the command line (to allow you to run ‘connectme’ from the command line directly) and hopefully you should be ready to rock! The next step is to insert your E870 into the express slot. You might start to see Linux picking up the the devices and popping dialogs asking you if you want to mount the device (you should select ‘Cancel’ for them all).Wait about 5 seconds for it to steady itself and then run ‘connectme’ from the command line. You should see
Hladam HUAWEI E220 a prepnem na modem - bbo 06 4 set feature request returned 0 Prepnute-OK, Mas ttyUSB0 ttyUSB1 (cez usbserial vendor=0x12d1 product=0x1003) pozri /proc/bus/usb/devices WvDial<*1>: WvDial: Internet dialer version 1.56 WvModem<*1>: Cannot get information for serial port. WvDial<*1>: Initializing modem. WvDial<*1>: Sending: ATZ WvDial Modem<*1>: ATZ WvDial Modem<*1>: OK WvDial<*1>: Sending: ATQ0 V1 E1 S0=0 &C1 &D2 WvDial Modem<*1>: ATQ0 V1 E1 S0=0 &C1 &D2 WvDial Modem<*1>: OK WvDial<*1>: Modem initialized. WvDial<*1>: Sending: ATDT*99# WvDial<*1>: Waiting for carrier. WvDial Modem<*1>: ATDT*99# WvDial Modem<*1>: CONNECT WvDial<*1>: Carrier detected. Starting PPP immediately. WvDial: Starting pppd at Tue Mar 25 21:22:08 2008 WvDial: Pid of pppd: 11465 WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: Using interface ppp0 WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: local IP address 62.40.58.185 WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: remote IP address 10.64.64.64 WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: primary DNS address 62.40.32.33 WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: secondary DNS address 62.40.32.34 WvDial<*1>: pppd: H���h�[06][08]`�[06][08]
If you want to disconnect from the web simply press Ctrl-C twice to kill it off. The first time you press it, it talks of wanting to exit gracefully – but better to press it a second time and exit effectively
You’ll see the following
Caught signal 2: Attempting to exit gracefully... WvDial<*1>: Terminating on signal 15 WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: Connect time 8.6 minutes. WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: pppd: H���h�[06][08]`�[06][08] WvDial<*1>: Disconnecting at Tue Mar 25 21:30:45 2008
7.) Tip of the day – lose the Edge!
Disclaimer: this is just my opinion as to the performance of the Edge network so O2 lawyers keep your knickers on (however Apple iPhone suckers, enjoy the sheer speed of the Edge network, getting dripfeed broadband at 1500 Euros a year!). In stark contrast though, my experience with the HSDPA network have been good. Yes, as you may have already guessed, the Edge network was not really delivering for me. But a friend of mine showed me how to change your O2 broadband Express card (or USB modem) settings so that it not even bother connecting if it can’t get a proper UTMS or HSDPA signal. For this you need a Windows friend. Install the express card on their machine and from the O2 broadband application and select “Tools->Choose Network Type->3G Only”. This setting directly updates the card so even when you switch back to a using it on a Linux box it will go with 3G only. If I don’t do this I’ve found that it will flip flop between Edge (GPRS) and 3G networks and drive you mad in the process. I found it pretty much impossible to even check my email on Edge.
Special thanks to Andy and Paul on the ILUG mailing lists for their help and also to O2, Vodaphone, Three et al. for providing Mobile Internet via hardware that can actually be used on an Open Source platform such as Linux; as we hopefully move from an era of proprietary lock-in and DRM-based crippleware to software that delivers genuine value for businesses and users. Vodafone have gone as far as having their own Open Source website to help along development at Betavine. Enjoy!
The revolution will not be televised! It will be streamed over TCP/IP…
Simple ‘Through Associations’ in Ruby on Rails
Monday, January 14th, 2008This little article shows one way to model many-to-many relationships using a join table.
Obviously, The Penguin isn’t the first so here is an alternative good practical example which might give your good self an different perspective. Also this documentation has some more detailed information but doesn’t have a simple self contained example like below (and neglects to mention belongs_to in its primary example – at time of writing this).
Here goes. The following statements define our basic requirements.
* An order has many items
* An item has many orders
* We shall model this through a join table called order_items
orders order_items items
----- ---------- ----
id order_id id
item_id
Before we continue, please note that a massive massive thing to remember is that Order needs to have a has_many to the join table model AS WELL as a has_many (through the join table model) to Item. Also the join table model has a belongs_to for each model.
class Order < ActiveRecord::Base
has_many
rder_lines #Don’t forget this line!
has_many :items, :through =>
rder_lines
end
class Item < ActiveRecord::Base
has_many
rder_lines #Don’t forget this line!
has_many
rders, :through =>
rder_lines
end
class OrderLine < ActiveRecord::Base
belongs_to
rder
belongs_to :item
end
Ok so that’s it folks! The Penguin has to admit that the above code hasn’t been run in a RoR interpreter so if has typo’s or smelly code please comment below.
One last thing is that if you’re going to try and present a RoR solution in an enterprise situation it is quite likely that the powers that be will want to see foreign key relationships in your database tables (note, this applies to all db relationships; not just man-to-many). These will give referential integrity to your associations. One very very handy and straightforward way to do this is using Red Hill’s foreign_key_migrations plugin. This really is great (it does pretty much all the hard work for you!) so it’s worth a serious look.
One gotcha with using foreign keys in Rails, is that the order in which test fixtures load becomes important. See Per Olesen’s post for tips on countering this. Other than that happy hacking and may the Rails Rise to Meet You!
Uninitialized Constant GemRunner Error When Using Ruby Gem
Sunday, December 9th, 2007Here’s the problem…
me@host:~$ sudo gem update
/usr/bin/gem:23: uninitialized constant Gem::GemRunner (NameError)
… which had us on the ropes more than on the rails for a while. Unusually googl’ing on this error provided no solutions.
What led to the situation was that we used the source install of rubygems on Ubuntu Gutsy (7.10) instead of using the rubygems in Ubuntu’s repository but then changed our mind and apt-getted the Ubuntu repository version. Surprise! Surprise! These 2 versions were conflicting a bit; leading to the above error. The workaround is pretty simple, just go to your /usr/local/lib section and delete the site_ruby directory (as this is the remnant of the rubygems source install and thus cause of the problem). This removes all the gems (that were downloaded by the original rubygems which we no longer want) off our system. Perhaps you want to simply move this directory first in case something goes wrong and you need to revert (eg. sudo mv /usr/local/lib/site_ruby /usr_local/lib/site_ruby_old).
Note: In case your not aware, /usr/local/* is the set of directories under which programs that you compile yourself get installed to by default. Generally the directories will start out pretty empty on a freshly installed Linux distro and then as you (if ever!) compile and install programs from source (eg. using ./configure && make && make install) then they end up under this directory. Also not that programs installed using apt-get (or via rpms on non-Debian systems) don’t get put here – they usually end up under the /usr/ directory itself (this varies a bit from distro to distro but what we’ve just outlined holds true for Ubuntu anyway).
Now, once your finished you should find that gem works. Do a ‘gem list’ and see if the above error is gone. If this doesn’t work you may need to ’sudo apt-get install rubygems’. Next up, we need to rebuild that gem directory that we deleted (site_ruby) with the apt-gotten rubygems (if apt-gotten is a real word!). To do this run
’sudo gem update’
’sudo gem update –system’
You will notice that the result of these commands means that /usr/local/lib/site_ruby is back and populated. This is where ruby likes to put it’s gem extensions. Finally reinstall rails with
’sudo gem install rails’
Hope this solution works for you! We’re still getting to grips with this rails stuff so if you find any glaring errors in this post please comment below to let us know.
New KDE Theme – Castle at Night
Thursday, December 6th, 2007After initially being a little disappointed with Kubuntu’s default theme, The Irish Penguin new he’d have to roll his own.
Well, finally it’s been tweaked to penguin perfection and, amidst much wing flapping, uploaded as a KDE theme for everyone to enjoy. However, before it’s unleashed upon you, please be aware of a little gotcha. The KDE Theme Manager is the tool you’ll need to install/create your own themes. However it’s not to be found in ‘System Settings’ on the K-menu. Rather you must go to the command line (unless I am missing the menu icon with my dodgy eyes!) and type ‘kcontrol’. From here you navigate to ‘Appearances & Themes’ and then ‘Theme Manager’. Ok, now armed with this knowledge here’s what to do.
Save the Castle at Night zipped theme file to your ‘/home/yourusername/.kde/share/apps/kthememanager/themes/’ directory. Then unzip it and, via the KDE Theme Manager, install this file and, hey presto(!), you’re looking good.
(Click to view)
Note: If you are having trouble with installing this theme you can download, unzip and install some additional files (Castle at Night – Required Files) into your /home/yourusername/.kde/share/apps/kthememanager/themes/’ folder.
To fully enjoy the theme you should right-click on the quicklauncher at left of the taskbar and configure it to have a fine big icon size – 28 looked good on the Inspiron (I think big icons always look nice in KDE’s taskbar).
Note: It’s been created on a Dell Inspiron 1520 laptop (running Kubuntu 7.10 ‘Gutsy’) so perhaps the colours might look at little different depending on your machine. Now hopefully one day we’ll all have gamma correction that works. Until then, enjoy!
K-k-kubuntu 7.10 on a Dell Inspiron 1520
Thursday, November 22nd, 2007Ahhh… Another day, another distro. The harddrive partitions around here are a bit like the Wizard of Oz; every day a new one joins the merry troupe. Todays turn was the KDE spin on Ubuntu Gutsy. So armed with the standard Kubuntu CD, which serves as a live distro and an install CD in one, we set on the path to enlightment (or should that be KDE – always good to end the week on a bad pun).
Generally, it seems to be recommended practice these days to install Ubunutu or its derivates off the ‘alternate’ CD when trying to set up an Inspiron to avoid things like incompatible versions of ALSA or wireless drivers working their way into the install. But the Penguin didn’t really feel like giving the whole GUI experience a miss. And so the live CD was fired up before you could say ‘Holy wireless drivers, Batman!’. A nice desktop link provided a pretty path to installation and within an hour Kubuntu was installed and ready to go.
First thing that was apparent was that the default Kubuntu appearance is quite bland. Especially when compared with something like OpenSuse’s nice crisp out-of-the-box KDE look (however nothing will ever get installed waiting around for YAST!). But the good news is that Kubuntu’s eye-candy vacuum can be fixed with a bit of tweaking. That wasn’t the initial major concern though. The lack of sound and wireless was!
The fix for the sound was easy, running ’sudo apt-get install linux-backports-modules-generic’ from the command line delivered sound after a reboot. The wireless was a lot more fiddly to get working – the strange thing is that NetworkManager was picking up all the secured networks and tantilisingly displaying them in its wireless list. But no way in the world was it going to connect to any of them. (BTW, the card is a Intel Pro Wireless 3945). However, the laptop in question is also running Ubuntu Studio out of another partition and it can connect through Gnome’s network-admin program without any probs. So there was definitely something fishy up.
Plan A at solving the problem was to install wlassistant (sudo apt-get install wlassistant) in order to try and put a different network program in the firing line. But alas still no connection. Then after a bit of head scratching we decided to install the whole bloody Gnome network admin and try and use that (sudo apt-get install gnome-system-tools) – which can be run via the ‘network-admin’ command. There was a time there when this was looking like a winning plan but no joy. Weird thing is, and the Irish Penguin has no explaination for this, is that rebooting and connecting via wlassistant did the job! Worked a charm! A lucky charm!!!
Final things on the list was to glam up that gaudy GUI. The install of Gnome’s networking stuff had left a few stray icons in the menu so they had to be wisked away as they weren’t working anyway. Then a few nice things to do are
* Right-click on the quicklauncher at left of the taskbar and configure it to have a fine big icon size – 28 looked good on the Inspiron. Big icons always look nice in KDE’s taskbar, otherwise where’s the fun?
* One of the best ways to brighten up the panel is to (right-click on the taskbar and configure) set ‘Enable background image’ for the panel and select a nice tile. This also puts a pretty sash down the left of the K-menu. Optionally choose ‘Colorize to match desktop theme’
* In the system settings keep the Style->Widget Style as ‘Polyster’ but change the Window Decoration to ‘Keramik’
* Change the window background to be a nice soft colour – a very light fawn is nice – and in keeping with the Ubuntu theme…
* And for God’s sake pic a nice desktop background!
Along the way, we flicked over to the proprietary NVidia drivers via the restricted driver management without problems. Although it did make all the fonts bigger for some reason – so they had to be tamed again using the following fix (note: changing font properties in System Settings isn’t enough to fix this). I used a dpi of 75 instead of 100 as the fix did. Another thing that was hard to track down was power management adjustment there’s no setting in System Settings – rather it can be found by right-clicking on the battery icon to the right of the task bar and selecting ‘Restore’ to bring up the dialog – of course!
So what’s the verdict after all the hard work is out of the way. Kubuntu is a fine desktop if you’re prepared to put in a little effort customising its look and feel. Because of the effort required in prettying it up – Kubuntu initially feels less polished than it’s sister Ubuntu. Package management in Adept isn’t as smooth as Synaptic. But there are some real pluses out of the K stable. Dolphin has replaced Konqueror as the default file browser and its two pane mode is great. Not quite sure why its taken so long for a two pane file manager to crop up in a modern OS but it’s not before time. All the usual great KDE apps from K3B to Amarok are in there. The Penguin’s final verdict is that it feels a little more ‘bright’ and ‘fun’ than Ubuntu which is more ‘finished’ but serious.

