Thursday, November 24, 2011

grub customizer

Useful tool if you're going to have several operating systems on one machine (found here).

sudo add-apt-repository ppa:danielrichter2007/grub-customizer
sudo apt-get update
sudo apt-get install grub-customizer

Friday, November 18, 2011

LabVIEW licenses

Just a little thing, but while installing a fresh version of LabVIEW on my netbook (to test an installation package for students) the license manager was showing full licenses for products I had removed - a nuisance, as I was trying to take screenshots to show the students what they could expect to see.  I thought I had rummaged sufficiently through the registry and deleted enough files for that not to happen.  Turns out Microsoft have moved the location of application setting files in Windows 7, and the license files were lurking in
C:\ProgramData\National Instruments\License Manager\Licenses

Tuesday, November 15, 2011

IE and Google Search

For some reason (which I am absolutely positive will not be connected with the fact that Microsoft wants you to use Bing), Google doesn't show up in the UK when you search for alternative search providers.  Here's a direct link.

Thursday, November 10, 2011

Login wallpaper

One of the first things most people do with a new computer is change the wallpaper.  Both Ubuntu 11.10 and Windows 7 also allow you to change the wallpaper for the login screen (both of these will need to be done using administrator rights, of course).

Windows 7:
  1. Start the group policy editor (gpedit.msc).
  2. Go to Computer Configuration / Administrative Templates / System / Logon
  3. Enable "Always use custom logon background".
  4. Create the directory C:\Windows\System32\oobe\info\backgrounds if it doesn't already exist.
  5. Put the desired login wallpaper in that directory, with the name backgroundDefault.jpg.  This will need to be 256kb or less.
  1. Put the desired image file somewhere where the LightDM greeter (the program which handles logging in and out) can see it.  Because your home directory may not be accessible to the greeter before you log in (mine isn't, which caused a problem with the Simple LightDM Manager program which insists on copying wallpaper files to your home directory), this should ideally be somewhere like /usr/share/backgrounds.
  2. Edit /etc/lightdm/unity-greeter.conf to include the line
Interestingly, after fiddling around with various wallpapers, I have ended up with the Linux login wallpaper being a dark blue version of the Windows desktop wallpaper, and vice-versa:

The orange Linux wallpaper is a macro photo of a nectarine, and the light blue Windows wallpaper is the water rushing by the Poole harbour ferry.

Wednesday, November 9, 2011

Linux Mint

What counts as hot news in the Linux world: Linux Mint has overtaken Ubuntu in the DistroWatch page hits chart.  Probably because Mint has retained a GUI (Gnome 2) which users find more familiar than Ubuntu's Unity or Gnome 3, both of which are controversial departures from the "launch bar plus programs menu" style.  Personally, I like Gnome 3 very much on a netbook, I'm not convinced that it's the best way of doing things on a larger screen (my feeling is that there is a false assumption in both GUIs that you will basically be doing one thing at a time, so it is not obvious what is running behind the currently active window, and switching between running applications is not as simple as a single mouse click - that may sound a trivial objection, but if you're used to these things being obvious and quick, even a trivial barrier is irritating).  So last night I put Linux Mint on my home netbook - which took about half an hour including freeing up some disk space, downloading the ISO file, plus maybe twenty minutes this morning to download and install updates (a similar process putting Windows 7 on the work netbook took several hours with half a dozen reboots and the usual scrabbling around to find the right network driver - this for a machine which came with Windows 7 installed in the first place).  One hiccup: booting from the live USB drive just gives the error message:

vesamenu.c32: Not a COM32R image

The answer, as usual, came within a couple of minutes by googling the first line.  Hit tab, and then enter "live" to boot as normal and install into the ten gigabyte partition (two thirds of which is still free - another contrast with Windows 7).

Irritation number one: when I start a terminal, I see this before the command prompt:
/ Steady movement is more important than \
| speed, much of the time. So long as    |
| there is a regular progression of      |
| stimuli to get your mental hooks into, |
| there is room for lateral movement.    |
| Once this begins, its rate is a matter |
| of discretion.                         |
|                                        |
\ -- Corwin, Prince of Amber             /
   \   \_\_    _/_/
    \      \__/
           (__)\       )\/\
               ||----w |
               ||     ||

This is the sort of thing that gets Linux a reputation as the operating system for people who think fantasy fiction is a guide to life.  I have nothing against fantasy fiction (it's not for me, but each to their own), but I don't see why I should be subjected to some geek's idea of profundity every time I want to use bash.  I do not care what "Corwin, Prince of Amber" thinks about any subject.  The way to remove it is here - but why on earth is it set up as the default in an operating system which presumably wants to attract at least a few users who don't feel the urge to dress up as hobbits at weekends?

Irritation number two: when restoring the boot loader so that Ubuntu was still the default, the Fedora wallpaper reappeared.  It looks like this:

Many years ago I went to a conference on using the web for university education (in the days when that was a new and slightly wacky idea).  "You can always tell a university website", we were told, "because the logo and the button graphics were designed by a physics professor rather than a graphic designer".  Universities are mostly over the stage of trusting design to academic staff, and Linux is getting better, but there are still plenty of graphic elements which were obviously "designed" by a programmer who fancied they had artistic talent, rather than someone with actual artistic talent.  The solution to this one was chmod -x /etc/grub.d/05_debian_theme and then update-grub; grub-install /dev/sda (both run as root, of course).  I think the wallpaper was installed when I installed Gnome 3 (why should installing a desktop GUI also mean I want to change the boot loader wallpaper?). I wouldn't have minded quite so much if it had been Ubuntu-branded wallpaper (I know Ubuntu is a derivative of Debian, but it is a different operating system).

Tuesday, November 8, 2011


The Department recently bought me a netbook - the HP Mini 110-3704sa (and a two gigabyte RAM upgrade). It came with Windows 7 Starter, which was removed within half an hour - it is now dual-booting Ubuntu Linux 11.10 and Windows 7 Professional.  I've had an older HP Mini (running only Linux) for a couple of years and found myself increasingly bringing it in to work because it was so useful.  I've been using the Windows installation more than I thought, mainly because of Office 2010 (not ideal, due to the "looking through a letterbox" screen dimensions, but usable - pop-up forms present a more serious problem, with the "Submit" button sometimes being off the bottom of the screen with no way to reach it other than tabbing through the fields and guessing when to stop).

One of the first things I do with any new PC is set up a web server on it - even on a netbook.  I have (or had) an ugly combination of PHP and Perl which allowed me to set up lists of links, which can be updated through a web form.  Having the dual-boot machine made me wonder about setting up the servers on the two operating systems to look at the same CGI and HTML directories.  The first thing I did was to translate the Perl CGI script into Python, which is the programming language I'm most comfortable using these days.

I installed Apache 2.2.21 on Windows, then PHP 5.3.8 (many web pages say use the VC6-compiled version, I used the VC9 build, thread-safe version).  The MSI install didn't work, I used the zip file to put it directly into C:\Program Files\PHP5.  I then added these lines to Apache's httpd.conf file:

LoadModule php5_module "C:/Program Files/PHP5/php5apache2_2.dll"
AddHandler application/x-httpd-php .php
PHPIniDir "C:/Program Files/PHP5"

With PHP now working, I fiddled around for a while trying to work out a way for the same Python CGI script to be run under both Windows and Linux.  There is a way - described here.

  1. Keep the Linux "shebang line".  This is the main problem - with scripts and interpreted programs, Unix systems use the first line of a file to determine what sort of thing it is, as opposed to the Windows method of using the file extension.  Apache by default behaves that way even on Windows systems.  The Linux shebang line is #!/usr/bin/python, and the Windows shebang line would be #!C:\Python27\python.exe - but you can't have both.
  2. In httpd.conf again, enter these lines: 
    ScriptInterpreterSource registry

  3. Change the name of the script to include the .py extension (which should be already linked to Python).

I then decided that it was better to rewrite the whole thing in PHP, which made most of the above completely unnecessary.