<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-15640890</id><updated>2012-02-02T21:29:48.845-08:00</updated><title type='text'>Andrew Marlow's Web Log</title><subtitle type='html'>Andrew's random technical ramblings.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>47</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-15640890.post-3229806644078129358</id><published>2011-12-11T07:44:00.000-08:00</published><updated>2011-12-11T07:45:52.505-08:00</updated><title type='text'>How to use lean/agile as a stick with which to beat the developer</title><content type='html'>This article, http://jimhighsmith.com/2011/11/02/velocity-is-killing-agility, by Jim Highsmith, says it all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-3229806644078129358?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/3229806644078129358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=3229806644078129358' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3229806644078129358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3229806644078129358'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2011/12/how-to-use-leanagile-as-stick-with.html' title='How to use lean/agile as a stick with which to beat the developer'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-1971011382947562897</id><published>2011-11-26T01:45:00.001-08:00</published><updated>2011-11-26T02:05:08.051-08:00</updated><title type='text'>Ipods</title><content type='html'>My wife and I have an iPod each, I am ashamed to say. AFAIK it is the only way one can have an MP3 player with a capacity greater than 32GB. As soon as a large capacity MP3 player comes along that is not made by Apple, we will buy it immediately. We have been waiting for years and we are still waiting. I reckon Apple have some kind of monopoly on large capacity MP3 players. They must do, right? Why else does no-one else produce one?
&lt;br&gt;
We have the black iPod classic 160GB version. Brenda's is the older model, the one where it is possible to disable the European cap, and sadly mine is more recent where, for the moment, the cap cannot be disabled (keep working on it, guys!).
&lt;br&gt;
But it's not the European cap that causes the most irritation. It's the fact that proprietary software is needed to actually use it. We are Windoze-free in our house so this means the iPod comes with a problem: how does one put music on it? I have been using gtkpod (thanks, guys, what a great utility!) but I have found a problem with it. When one uses gtkpod to update two different iPods from the same desktop it seems that gtkpod can get confused regarding which model the iPod is. I managed to trash Brenda's iPod, i.e. get it into the state where music is on it but the iPod reckons it is not there. It reckoned the iPod was empty in fact. Eventually I managed to fix this by editing the file /media/IPOD/iPod_Control/Device/SysInfo, removing the line that refers to the model name. If you do this then gtkpod prompts for it and this time I put the correct value in.
&lt;br&gt;
When you read the various posts on the web about how to make the iPod recognise that music is there that has been placed by gtkpod, they all say you need to give the firewire id. What they don't tell you is that the model name also has to be accurate. If either is missing or wrong then you get this problem. During my attempts to diagnose and fix the problem I did a factory reset and wiped all the music from Brenda's iPod. Luckily I have all the music on an external USB drive so I will be able to restore it. But why does Apple create this pain for all it's users? Cowon does not bother creating proprietary software for its MP3 players. To load a Cowon player you just drag and drop. Simple, eh? What a pity that the largest capacity MP3 player by Cowon is a mere 32GB (the S9).
&lt;br&gt;
I am patiently waiting for RockBox to support the iPod classic. I use RockBox on my ancient iRiver H30 and it is fabulous. What a pity I can't use it on the iPod yet. What a pity that I am not technical enough to help with the porting. The code really is quite hairy to a novice such as me. I know, I've looked.
&lt;br&gt;
I can't wait for Cowon to create a large capacity player. They have a tablet that does the job (the X7) but the tablet is just that little bit too large for Brenda to take to the gym. But the spec is great. It even plays FLAC and Ogg Vorbis, which of course, Apple does not do. Come on Cowon! Just go that little bit further and I'm sure your sales will skyrocket!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-1971011382947562897?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/1971011382947562897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=1971011382947562897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/1971011382947562897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/1971011382947562897'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2011/11/ipods.html' title='Ipods'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-1250317642835162750</id><published>2011-11-14T11:30:00.001-08:00</published><updated>2011-11-14T11:40:06.172-08:00</updated><title type='text'>Ubuntu and I are no longer friends</title><content type='html'>I have decided to abandon Ubuntu. I don't know what I am going to use instead yet but with Ubuntu I have had the last straw. 

I have the same complaints about Canonical's direction as all the other developers but the straw that broke the camel's back was when Brenda said she didn't like it. Yes, that's right Canonical; even the computer-naive don't like it. And guess what; they don't like it for the same reasons that devs don't like it. I won't bother listing the reasons here. The web is already full of detailed complaints and it is not going to change the minds of those at Canonical. What worries me is how much of this is down to Canonical and how much is down to Gnome 3. I will have to do some more research. 

If Gnome 3 is the source of most of the trouble then the outlook is grim indeed. Debian is moving to Gnome 3 which would mean, as far as I am concerned, the end of Debian as well. This is serious because not only is there no other distro base I can turn to but even if there was, it would only be a matter of time before they adopted Gnome 3 also. I suppose all I can hope for is that someone forks Gnome 2 and continues support so that distros can continue to base their UI on Gnome 2. And before anyone asks, "no I will not go KDE".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-1250317642835162750?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/1250317642835162750/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=1250317642835162750' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/1250317642835162750'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/1250317642835162750'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2011/11/ubuntu-and-i-are-no-longer-friends.html' title='Ubuntu and I are no longer friends'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-4754919580317398424</id><published>2011-07-14T13:19:00.000-07:00</published><updated>2011-07-14T13:40:23.037-07:00</updated><title type='text'>Ubuntu, netbooks and wireless</title><content type='html'>I recently got a cheap refurbished Dell netbook, mainly so I can work on documents on the move. I never bothered trying to set up wireless, I plugged in into my lan whenever I needed to download anything, which was not very often.

Then Brenda's niece, Emily, said she had a netbook that wouldn't work with wireless. It looked to be a very similar make and model to mine. I offered to help and discovered that it was running Windoze 7. Arrggh. After struggling with that for a few hours I offered to put ubuntu on it for her. I just assumed the wireless would be a breeze. When I got it home I thought "I had better get wireless working on mine first before I trash her Windoze installation" so I had a go. Then I found that getting wireless to work on ubuntu on netbooks can be a right pain. I eventually got mine working. Here's how I did it:

&lt;ul&gt;
&lt;li&gt; I downloaded a netbook ISO image for Maverick Meerkat &lt;/li&gt;
&lt;li&gt; I created a bootable USB drive containing the ISO image. I used unetbootin-linux-549, which I built from a source code download.&lt;/li&gt;
&lt;li&gt;I booted the network using the USB stick and did the install.&lt;li&gt;
&lt;li&gt;I used the lspci command to reveal that the wireless hardware is a RealTek 8176.&lt;/li&gt;
&lt;li&gt;I googled and found someone with the same problem asking for help on a forum. The web page no longer worked but luckily it was still available in the google cache. Some kind person answered with a very detailed step by step set of instructions. I also tried them and they worked for me too!
&lt;/ul&gt;
&lt;p&gt;The instructions are as follows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;sudo su&lt;/li&gt;
&lt;li&gt;add-apt-repository ppa:lexical/hwe-wireless&lt;/li&gt;
&lt;li&gt;apt-get update&lt;/li&gt;
&lt;li&gt;apt-get install rtl8192ce-dkms,
&lt;p&gt;This went through a long rigmarole and eventually said&lt;/p&gt;
&lt;pre&gt;
Building initial module for 2.6.35-24-generic

Done.

r8192ce_pci.ko:
Running module version sanity check.
 - Original module
   - No original module exists within this kernel
 - Installation
   - Installing to /lib/modules/2.6.35-24-generic/updates/dkms/

depmod.......

DKMS: install Completed.
&lt;/pre&gt;
At this point I rebooted and after the reboot it just worked. Wow.&lt;/li&gt;
&lt;/ul&gt;
I am all set to do the same on Emily's machine now but I will leave that to another day.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-4754919580317398424?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/4754919580317398424/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=4754919580317398424' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4754919580317398424'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4754919580317398424'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2011/07/ubuntu-netbooks-and-wireless.html' title='Ubuntu, netbooks and wireless'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-3548663491287658449</id><published>2011-07-03T15:05:00.000-07:00</published><updated>2011-07-03T15:26:09.249-07:00</updated><title type='text'>No-one cares about computers and security.</title><content type='html'>&lt;p&gt;No-one cares about computers and security.
&lt;/p&gt;&lt;p&gt;
I care. I am quite interested in computer security from a technical point of view. I also 
want to keep my data and credentials safe from prying eyes and corruption/deletion, accidental or otherwise and misuse.
&lt;/p&gt;&lt;p&gt;
However, I now believe that among computer users I am on my own. The only other people that seem to be interested are security consultants. But then they have something to sell. I find this annoying because computer security is important for a number of reasons that really do have the potential to adversely affect me when not done right.
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;My money. Is it safe? Do the retail banks take responsibility for making sure that it is not easily stolen and that the account is resistant to fraud? No, they don't. Everyone's bank account is at risk. So are their credit cards and debit cards.
&lt;/li&gt;&lt;li&gt;
My personal details. Will they end up in the hands of spammers and junk mailers. Yes, they will. The people that had these details for perfectly legitimate reasons cannot be trusted to look after them responsibly or even with basic competency. This is why everyone is taking to shredding everything these days.
&lt;/li&gt;&lt;li&gt;
Impersonation. Will someone be able to log to my online-account, pretend to me, and do all sorts of horrible things in my name? Yes, they can. Newspapers are full of these stories happening
more and more often. Do you think your Facebook account is secure? How about your Twitter account? Your PayPal account? Your Amazon account?
&lt;/li&gt;&lt;li&gt;
Computer breakins. I want my computer to remain mine and no-one else is allowed in. Thankfully I don't use Microsoft Windows so this greatly increases my chances. However, security holes are discovered in commonly used software every day, including the software that runs on Linux. My own machines are regular attacked using port scanning and password guessing.
&lt;/li&gt;&lt;li&gt;
Privacy. I want the stuff that I do on my computers to be private. AFAIK only the UK government have passed a special law that grants them the right to force your decryption keys from you. Also, when using encryption there is the problem that most other people don't know anything about it. It is hard to communicate securely with people that are not interested in keeping the communication secure.
&lt;/ul&gt;

&lt;p&gt;
Although I say I care, I have stopped caring in certain areas. This is because I have just got fed up of security not being done right so that it hinders work, even hinders real security and 
certainly does not provide it. My boss put it so well when he said "security is that which impedes the developer whilst at the same time not offering security".
&lt;/p&gt;&lt;p&gt;

These areas are listed below.
&lt;ul&gt;
&lt;li&gt;
o Passwords. I write them down. I keep the number small by reusing them across systems. They are drawn from a small list of passwords that I use over and over. I often don't make them a complex mixture of numbers, letters and special symbols as is recommended. They are often based on words that make them vunerable to a dictionary attack. I keep them all in a notebook in my desk drawer.
&lt;/li&gt;&lt;li&gt;
Usernames. I tend to use the same one every time. Yes, it is based on my name.
&lt;/li&gt;&lt;li&gt;
I tell people my username and password. Well, at least I do at work. Well at least I would if anyone was interested or asked. The workplace is where security is just a joke so this doesn't matter as far as I am concerned.
&lt;/li&gt;&lt;li&gt;
I lend people my security pass. No-one looks at the pass anyway, it is just used to open the
door locks. I never wear my pass, I keep it in my pocket.
&lt;/li&gt;&lt;li&gt;
I don't lock my terminal when leaving it unattended. The corporate environment tends to force a lock after a very brief period of inactivity so I find myself subconsciously rebelling.
&lt;/li&gt;&lt;li&gt;
When I briefly leave my desk I leave the drawer unlocked with the notebook inside containing all my passwords.
&lt;/li&gt;&lt;li&gt;
I share my main working directory with everyone indiscrimanently using Windoze Shares and lax permissions. Windoze is not secure anyway, FTP, telnet and CIFS protocols sends usernames and passwords over the wire in plaintext anyway, so what's the problem?
&lt;/li&gt;&lt;li&gt;
I don't use two-factor authentication. Well actually I would like to but it would be really useful, like looking after the money in my bank account for example, it is not even offered.
&lt;/li&gt;&lt;li&gt;
I don't use public key encryption for sensitive communication. Actually I refuse to use email for sensitive communication. I would like to use public key encryption but usually the person
at the other end of the communication does not understand the need and is incapable of using public key encryption so I try to find another way, e.g a face to face meeting or using the telephone (which is not secure either).
&lt;/li&gt;&lt;li&gt;
I don't digitally sign anything. After all, no-one uses or understands public key encryption anyway.
&lt;/li&gt;&lt;li&gt;
I don't use an Intrusion Detection System (IDS). Actually I did try out an IDS once which is how I know my machines do get attacked. But I never use an IDS at my clients site. They don't use one either. Tough luck. And those systems are typically Windoze-based where a breakin will happen sooner or later.
&lt;/li&gt;&lt;li&gt;
I don't use a virus scanner. Well, I use Linux at home, which is a much smaller target for crackers and malware. My clients, being typically Windoze-based, will use whatever the corporate standard is for a virus checker. It is typically configured to not update each day but rather at the behest of the 'security' department. It is often either partially or completely disabled since the continual disk scanning slowers the machine down for developers (word processing users don't notice).
&lt;/li&gt;&lt;li&gt;
Whenever I receive a Word or Excel document containing macros I enable them without any consideration of the potential consequences. Such is life in the corporate world. Of course at home I don't use Microsoft Office so it's not a problem there.
&lt;/li&gt;&lt;li&gt;
I use Internet Exploiter as my web browser. At home I use Firefox of course. But Firefox has yet to be discovered by the corporate world. IE is still the standard on the desktop and provides a rich source of attack vectors, drive-by-shootings etc.
&lt;/li&gt;&lt;li&gt;
I use software that sends usernames and passwords over the wire in plaintext. The most commonly used is FTP. I would like to use secure protocols/commands such as sftp, ssh etc but these have yet to be discovered by the corporate world.
&lt;/li&gt;&lt;li&gt;
&lt;/ul&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-3548663491287658449?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/3548663491287658449/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=3548663491287658449' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3548663491287658449'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3548663491287658449'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2011/07/no-one-cares-about-computers-and.html' title='No-one cares about computers and security.'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-3839445884680963429</id><published>2011-04-19T12:21:00.000-07:00</published><updated>2011-04-19T12:40:41.083-07:00</updated><title type='text'>The CUDA compiler can go into a CPU loop</title><content type='html'>I am working on a project that uses CUDA to perform certain calculations at greater speed, using the machines NVIDIA graphics card. Today I thought I would try to move the project closer to Continuous Integration (CI) using the well-known CI tool, Jenkins (formerly known as Hudson). So I set up a script for Jenkins to run.
&lt;br/&gt;
Mysteriously, it hung when it got to the bit where it runs the CUDA compiler. I tried building the project interactively in Visual Studio from the Jenkins sandbox. This also hung at the same point. Process Explorer revealed CUDA was consuming roughly 25% CPU but making no progress. It was stuck in a CPU loop. Process Explorer revealed that it was in that part of the compiler that does the preprocessing, so it should have been really fast.
&lt;br/&gt;
After a lot of tinkering in Jenkins, renaming the project, rebuilding the sandbox, reinstalling CUDA etc etc I eventually fixed the problem. It turns out that CUDA seems to be sensitive to the path that it is running in. If any part of the path contains a directory whose name begins with a dot, then you get the CPU loop. This is unfortunate because Jenkins likes to run in $HOME/.jenkins. When I picked a different Jenkins home (setting JENKINS_HOME via the control panel) and called the directory jenkins rather than .jenkins, then CUDA started working again. Weird, huh? For good measure, I renamed the job so that it did not contain any spaces (Jenkins creates a directory named after the job). I am not sure if this has any effect or not but getting rid of the leading dot definately fixed the problem.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-3839445884680963429?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/3839445884680963429/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=3839445884680963429' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3839445884680963429'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3839445884680963429'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2011/04/cuda-compiler-can-go-into-cpu-loop.html' title='The CUDA compiler can go into a CPU loop'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-6519347186480288220</id><published>2010-11-25T10:11:00.000-08:00</published><updated>2010-11-25T10:20:50.858-08:00</updated><title type='text'>Boost for C++ developers has lost its shine</title><content type='html'>I have decided that I don't like the C++ boost libraries with just two minor exceptions. The exceptions are the smart pointers that are part of TR1 and boost threads (along with their mutexes and condition variables). They're ok. I haven\'t used all of the rest but I have used
the following:

--filesystem
--named semaphores and named mutexes
--sockets (asio)
--POSIX date/time

I have also looked briefly at the graph library but not actually used it.

In the above cases my criticisms are the same:

&lt;ul&gt;&lt;li&gt;   I have found several cases where the code does not work. 
Examples include:
&lt;ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;filesystem: has difficulty with UNCs&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;         named semaphores/mutexes: does not cleanup properly and does not use the underlying WIN32 primitives on MS-Windows.
&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;         sockets: Counterintuitive model that is contrary to the way that BSD sockets work. For example, async_accept does not do an asynchronous accept!
&lt;/ul&gt;
&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;   The source code is template mania. It is VERY hard to understand. Compare this with Poco or ACE where the code does what you would expect, more-or-less how you would expect.
&lt;/li&gt;&lt;/ul&gt;&lt;ul&gt;&lt;li&gt;The code does not have a clean separation for those parts of the implementation that are platform-dependant. This is very hard to do well but Poco manages to pull it off nicely. Boost fails dismally.
&lt;/li&gt;&lt;/ul&gt;
The more I look at boost, the less I like it. It seems to me that it is a prime example of what happens when you give a problem to academics to solve. You get a convoluted solution that only appeals to the Elite and is not very practical.

In future, I hope that I get the chance to use Poco for my foundation C++ classes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-6519347186480288220?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/6519347186480288220/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=6519347186480288220' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6519347186480288220'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6519347186480288220'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2010/11/boost-for-c-developers-has-lost-its.html' title='Boost for C++ developers has lost its shine'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-4269357179461200167</id><published>2010-04-24T12:03:00.000-07:00</published><updated>2010-06-21T12:10:51.453-07:00</updated><title type='text'>NTFS junctions are a poor substitute for symbolic links</title><content type='html'>Recently, I have been working in a Windoze-XP environment using multiple sandboxes checked out from CVS. Each sandbox needs a large collection of third party libraries (headers, lib and .dll files). Each third party directory takes up around 2GB. This space very quickly mounts up. In Unix we would use symbolic links to make all the third party directories point to a common place.
But what to do in Windoze? Some people would say that NTFS junctions is the answer. Well, they can help and I am using them for this purpose but there are some nasties and I am documenting them here.

I once saw a signature on USENET which goes:

"Those who do not understand Unix are condemned to reinvent it, poorly."

This is certainly true of Windoze. It doesn't understand symbolic links so it is no suprise to learn that NTFS junctions are a very poor imitation. Here are several points to bear in mind:

&lt;ul&gt;
&lt;li&gt;They are a cross between hard links and symbolic links. Like the hard link, they can onloy refer to files on the same partition, but like symbolic links the path of the link is stored which means it can become invalid.  This is because Windoze filesystems do not support links!  Also, only directories can be linked.&lt;/li&gt;

&lt;li&gt;Windoze-XP has insufficient support for NTFS junctions despite them first appearing in Windoze-2000. There are no commands to manipulate them. You will have to download and install 
the SysInternals commands and use the junction command.&lt;/li&gt;

&lt;li&gt;More explicit support for NTFS junctions was added to Vista and is also in Windows 7. But even by these versions of Windoze, support is incomplete. When you use Windows Explorer to navigate to a directory that contains NTFS junctions, if you delete the directory it deletes the files that the junctions refer to!!! See http://shell-shocked.org/article.php?id=284 for the gory details. &lt;/li&gt;
&lt;/ul&gt;

The only way to delete a junction safely is to the use the SysInternals junction command. There is no safe way to delete a directory that may contain junctions. Currently, I do not know what the solution is to these problems. The cygwin rm command does  not help, it follows the junction references just like Windoze Explorer does. I have a feeling a special delete command may have to be written. I will probably have to write it, in Python, and it will probably use
the SysInternals junction command to delete any NTFS junctions it finds.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-4269357179461200167?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/4269357179461200167/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=4269357179461200167' title='6 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4269357179461200167'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4269357179461200167'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2010/04/ntfs-junctions-are-poor-substitute-for.html' title='NTFS junctions are a poor substitute for symbolic links'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-3148905201401224507</id><published>2010-03-22T02:11:00.000-07:00</published><updated>2010-03-22T02:16:01.866-07:00</updated><title type='text'>cron on Windoze using cygwin</title><content type='html'>There is quite a useful little document, http://csc.csudh.edu/kleyba/cygwin-cron.pdf, that explains how to install the cygwin cron, complete the cygwin setup screenshots. Very nice. But there is a little nasty when setting up cron in a corporate network. Typically the home directory is a network drive which will not be accessible. It took me a while to work out what was wrong and how to fix it. Some of the advice I found whilst googling turned out to be wrong.

I tried setting HOME in the crontab. No effect.

I tried seting HOME as an environment variable in the control panel. No effect.

Finally I edited /etc/passwd and changed the value of the home directory field from /cygdrive/u to /cygdrive/c. Problem solved!

Also, note that the pdf document says how to run the cron config command. This was very helpful because other web pages omit this and it turns out to be crucial to getting the service running. Without that config the service gets installed but dies as soon as it starts up.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-3148905201401224507?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/3148905201401224507/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=3148905201401224507' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3148905201401224507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3148905201401224507'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2010/03/cron-on-windoze-using-cygwin.html' title='cron on Windoze using cygwin'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-4990803024558545627</id><published>2010-02-12T02:26:00.000-08:00</published><updated>2010-02-12T02:28:11.732-08:00</updated><title type='text'>Setting up PHP and Apache on Windoze</title><content type='html'>This link is very useful:
&lt;b&gt;
http://www.thesitewizard.com/php/install-php-5-apache-windows.shtml
&lt;/b&gt;
I mention it here instead of adding it to my list of bookmarks. After all, it's not going to be done every day, is it?&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-4990803024558545627?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/4990803024558545627/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=4990803024558545627' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4990803024558545627'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4990803024558545627'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2010/02/setting-up-php-and-apache-on-windoze.html' title='Setting up PHP and Apache on Windoze'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-5866829145944597303</id><published>2010-01-13T13:42:00.000-08:00</published><updated>2010-01-13T13:49:52.086-08:00</updated><title type='text'>IBM MQSeries queue viewer (Hermes)</title><content type='html'>At long last I managed to get JMS Hermes working with IBM MQSeries queues. These notes are about how I did it.

First, there is a very useful install guide at
&lt;pre&gt;
http://www.hermesjms.com/confluence/display/HJMS/Installing
&lt;/pre&gt;
A little detail it misses out is that you must set JAVA_HOME as well as HERMES_ROOT. Also, when you track down the jars for MQ, you might find it hard to find the PCF jar. I found it at

&lt;pre&gt;
 http://www-01.ibm.com/support/docview.wss?rs=171&amp;amp;uid=swg24000668&amp;amp;loc=en_US&amp;amp;cs=utf-8〈=en
&lt;/pre&gt;
Finally, there is a flash tutorial at  http://www.hermesjms.com/demos/demo_mq.html. It is a little out of date but still very helpful.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-5866829145944597303?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/5866829145944597303/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=5866829145944597303' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/5866829145944597303'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/5866829145944597303'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2010/01/ibm-mqseries-queue-viewer-hermes.html' title='IBM MQSeries queue viewer (Hermes)'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-2041716160686034893</id><published>2009-11-29T10:11:00.000-08:00</published><updated>2009-11-29T10:12:36.840-08:00</updated><title type='text'>Computers and dates</title><content type='html'>Here follows a very useful link about Julian day numbers: http://www.hermetic.ch/cal_stud/jdn.htm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-2041716160686034893?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/2041716160686034893/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=2041716160686034893' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/2041716160686034893'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/2041716160686034893'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/11/computers-and-dates.html' title='Computers and dates'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-3253924970984880393</id><published>2009-11-29T09:26:00.001-08:00</published><updated>2009-11-29T09:27:28.563-08:00</updated><title type='text'>The joys of Open Access</title><content type='html'>I have been clearing out my mailbox of old reference articles, useful links etc and came across this one about Open Access: http://www.earlham.edu/~peters/fos. This is of interest (to me anyway) after my work on Digital Libraries.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-3253924970984880393?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/3253924970984880393/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=3253924970984880393' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3253924970984880393'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3253924970984880393'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/11/joys-of-open-access.html' title='The joys of Open Access'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-3333110142988403691</id><published>2009-11-29T08:59:00.000-08:00</published><updated>2009-11-29T09:00:56.913-08:00</updated><title type='text'>Searching PubChem</title><content type='html'>Here is a useful link for how to search PubChem. http://acdlabs.typepad.com/my_weblog/2008/02/dereplication-v.html. The focus is on having an unknown sample with some NMR data. Well, I thought it was interesting, anyway, especially in the light of my recent work on a Digital Library for a major publisher.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-3333110142988403691?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/3333110142988403691/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=3333110142988403691' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3333110142988403691'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3333110142988403691'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/11/searching-pubchem.html' title='Searching PubChem'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-333824326505939743</id><published>2009-09-24T14:43:00.000-07:00</published><updated>2010-09-09T16:03:05.458-07:00</updated><title type='text'>Free news server (NNTP) access</title><content type='html'>Most UK ISPs have never heard of newsgroups. They think the internet == the web. Duh! So it is very difficult these days to find an NNTP server. This note is to remind me of which one I am using at the moment. 

Currently it is nntp.aioe.org.

I will update this page as this changes over time.Free newsgroup servers do tend to get shutdown eventually (sigh).&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-333824326505939743?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/333824326505939743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=333824326505939743' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/333824326505939743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/333824326505939743'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/09/free-news-server-nntp-access.html' title='Free news server (NNTP) access'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-6633038173592414254</id><published>2009-09-19T15:05:00.001-07:00</published><updated>2009-09-19T15:14:37.432-07:00</updated><title type='text'>getting mySQL set up on ubuntu</title><content type='html'>It is too painful to setup mysql via a source code build so I used a non-RPM install. It didn't quite work out of the box. Here's what I did:

groupadd mysql&lt;br/&gt;
useradd -g mysql mysql&lt;br/&gt;
cd /usr/local&lt;br/&gt;
gunzip &lt; /path/to/mysql-VERSION-OS.tar.gz | tar xvf -&lt;br/&gt;
ln -s full-path-to-mysql-VERSION-OS mysql&lt;br/&gt;
cd mysql&lt;br/&gt;
chown -R mysql .&lt;br/&gt;
chgrp -R mysql .&lt;br/&gt;
scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --force&lt;br/&gt;
chown -R root .&lt;br/&gt;
chown -R mysql data&lt;br/&gt;
bin/mysqld_safe --user=mysql &amp;&lt;br/&gt;

This last step was an attempt to start up the mysql server. It failed, as can be seen by the next command and its output.

bin/mysqladmin version&lt;br/&gt;
bin/mysqladmin: connect to server at 'localhost' failed&lt;br/&gt;

error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'&lt;/br&gt;
Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!&lt;br/&gt;

On with an attempt at a fix:

touch /var/run/mysqld/mysqld.sock&lt;br/&gt;
chown -R mysql /var/run/mysqld/&lt;br/&gt;
bin/mysqld_safe --user=mysql &amp;&lt;br/&gt;

THIS DIDN'T WORK. Error log said:&lt;br/&gt;

[ERROR] Can't find messagefile '/usr/share/english/errmsg.sys'&lt;br/&gt;

fixed by saying:&lt;br/&gt;
bin/mysqld_safe --user=mysql --language=./share/english &amp;&lt;br/&gt;

Now I can connect. All I need to do now is put this into the bootup sequence....&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-6633038173592414254?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/6633038173592414254/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=6633038173592414254' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6633038173592414254'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6633038173592414254'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/09/getting-mysql-set-up-on-ubuntu.html' title='getting mySQL set up on ubuntu'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-6592791266250429373</id><published>2009-09-11T00:44:00.000-07:00</published><updated>2009-09-11T00:51:03.609-07:00</updated><title type='text'>How to rollback a changeset in subversion</title><content type='html'>Suppose you want to rollback the changes in changeset 2340. You checkout the HEAD into some working directory, then do the following:
&lt;br/&gt;
svn merge -c-2340 . .&lt;br/&gt;
svn ci -m &lt;message&gt;&lt;br/&gt;
Then you will probably want to set up the working copy so it has the changes you rolled back so you can fix whatever was wrong. Here's the command you use:
&lt;br/&gt;
svn merge -c2340 . .&lt;br/&gt;
This is not very obvious to the beginner. It is done using merge rather than revert. The revert command is used to revert uncommitted changes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-6592791266250429373?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/6592791266250429373/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=6592791266250429373' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6592791266250429373'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6592791266250429373'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/09/how-to-rollback-changeset-in-subversion.html' title='How to rollback a changeset in subversion'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-8674666221768769918</id><published>2009-08-26T05:52:00.000-07:00</published><updated>2009-08-26T05:58:02.197-07:00</updated><title type='text'>How to solve a weird JAXB/xerces spring application context load error</title><content type='html'>I was trying to get an app working standalone a spring application context via the classpath. In eclipse it worked fine but at the command line I got:
&lt;pre&gt;
Unable to validate using XSD: Your JAXP provider [org.apache.crimson.jaxp.DocumentBuilderFactoryImpl @148cc8c] does not support XML Schema. Are you running on Java 1.4 or below with Apache Crimson? Upgrade to Apache Xerces (or Java 1.5) for full XSD support.
&lt;/pre&gt;
I was using java 1.6 and the latest Xerces so this error message is not at all helpful. What was VERY helpful was finding the thread at http://forum.springsource.org/archive/index.php/t-21140.html which contained the answer. I need to define a couple of properties that force the factories for XML parsing. Just add the following as JVM parameters:
&lt;pre&gt;
-Djavax.xml.parsers.DocumentBuilderFactory=com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
-Djavax.xml.parsers.SAXParserFactory=com.sun.org.apache.xerces.internal.jaxp.SAXParserFactoryImpl
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-8674666221768769918?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/8674666221768769918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=8674666221768769918' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/8674666221768769918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/8674666221768769918'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/08/how-to-solve-weird-jaxbxerces-spring.html' title='How to solve a weird JAXB/xerces spring application context load error'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-1448043280106781441</id><published>2009-07-11T15:04:00.000-07:00</published><updated>2009-07-11T15:21:06.745-07:00</updated><title type='text'>How to have an iPod without using iTunes</title><content type='html'>I trashed Brenda's iPod today. I eventually managed to recover it. Here's what happened:
&lt;br/&gt;
I ripped a couple of CDs and copied them to the iPod using gtkpod. This was an experiment. I had always used iTunes before, but I am trying to escape from Windoze so I wanted to see if I could use some open source software on my Debian machine. I found that although the iPod contained the new music, once the iPod was supposedly synch'd then disconnected, the iPod reckoned the music wasn't there. As I tried various approaches eventually the iPod reckoned there was no music on there at all. Even doing a factory reset didn't fix it. On my travels I found stories of people who had managed to get iTunes up and running on their system using wine. That didn't work for. For a start, the Etch version of Debian has a version of wine that is too old. I tracked down a backport and I used winetricks to fool the system into thinking I am on XP, which the iTunes installer requires. But iTunes could not fix the iPod with the state it had gotten into, and IMHO iTunes is rubbish anyway.
&lt;br/&gt;
Eventually I found out that the problem is caused by Apple turning the iPod against me. They want it to work only with iTunes and they keep revising the firmware to make it not work with other software. This is behaviour worthy of the Evil Empire itself.  Brenda's iPod is a fourth generation nano. That means it has all the latest stuff to prevent people being able to use the device without using Apple software. 
&lt;br/&gt;
I found that some kind people have backported a recent version of gtkpod to Debian Etch. The glibpod3 library required has also been backported. I downloaded and installed the Debian packages. The next and final trick was to update a crucial file on the iPod which is used to identify the firewire device. I mounted the ipod to /med/ipod. This made the pathname of the file to be /media/ipod/iPod_Control/Device/SysInfo. Run the command "sudo lsusb -v | grep -i Serial" (without the "") with your iPod plugged in, this should print a 16 character long string like 00A1234567891231. This is the id. Put it in that file in the form: &lt;br/&gt;
FirewireGuid: 0xffffffffffffffff.&lt;br/&gt;
The leading '0x' is important.
&lt;br/&gt;
I found this help at http://mandrivausers.org/lofiversion/index.php/t50594.html. Phew. At last, I can now use the iPod without Windoze and without Apple software.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-1448043280106781441?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/1448043280106781441/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=1448043280106781441' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/1448043280106781441'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/1448043280106781441'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/07/how-to-have-ipod-without-using-itunes.html' title='How to have an iPod without using iTunes'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-6402279482210998646</id><published>2009-06-15T23:38:00.000-07:00</published><updated>2009-06-15T23:43:41.153-07:00</updated><title type='text'>managing photos without facebook or flickr</title><content type='html'>I got tired of the unreliable photo upload of facebook and found the bandwidth and size limitations of flickr too, er, restrictive, so I looked around for something else. I came across Coppermine Gallery and IMHO it is brilliant. 
&lt;br/&gt;
The online manual tells you exactly how to set it up and it worked first time. I am pleased to say it works with FastHosts (my webspace provider). There is a slight deterioation in image quality that you don't get with facebook or flickr. I think this is combination of me making smaller jpgs and the fact that Coppermine is using GD. It can use ImageMagic where available. I am not sure which one is supposed to be the best.
&lt;br/&gt;
So, all I need to do now is add menu options to my web site to refer to the various albums.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-6402279482210998646?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/6402279482210998646/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=6402279482210998646' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6402279482210998646'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6402279482210998646'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/06/managing-photos-without-facebook-or.html' title='managing photos without facebook or flickr'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-2971245032087075180</id><published>2009-04-09T02:14:00.000-07:00</published><updated>2009-04-09T02:21:45.870-07:00</updated><title type='text'>The pain of building subversion on solaris</title><content type='html'>I have eventually managed to get subversion 1.5.0 built on solaris (opensolaris running on VirtualBox actually). At the time of writing this, the most recent version of subversion is 1.6.0. However, I have a requirement to use an older version of subversion, 1.5.0. This is because subversion, subclipse and svnant need to all cooperate with each other. This means dropping back to 1.5.0. 

When I tried to build subversion 1.5.0 on solaris I got a load of link time errors to do with relocatable code in libneon.a. I eventually found a blog at  http://sreekalyan.blogspot.com/2005/07/installing-subversion-on-solaris.html which gave me a hint on how to solve the problem.

First, I found I had to use version 0.28.1 of neon. The subversion configure does not like a more recent version and says neon is not there! By default, libneon does not build shared libraries. You have to configure with --enable-shared=yes, an undocumented option no less! I then deleted /usr/local/lib/libneon.a so that it could not be picked up by accident. After a configure in subversion I had to hack the value for the neon library, changing it from libneon.la to libneon.so. Wow, what a pain this was!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-2971245032087075180?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/2971245032087075180/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=2971245032087075180' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/2971245032087075180'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/2971245032087075180'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/04/pain-of-building-subversion-on-solaris.html' title='The pain of building subversion on solaris'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-7230196040957994976</id><published>2009-02-14T04:44:00.000-08:00</published><updated>2009-02-14T04:58:52.671-08:00</updated><title type='text'>DSpace, chemical structures, CML and jmol</title><content type='html'>&lt;p&gt;
I have started to put some chemical structures into my DSpace instance. They are going in as CML files. CML is Chemical Markup Language. There is an open source tool called jmol which allows structures to be viewed as 3D rotating images, given a CML file. JMol includes a servlet so that web pages can display these images. I would like to see this used by DSpace. But in the meantime I have set things up so that CML files invoke an external jmol viewer. This is a bit like putting up PDFs and getting the external acrobat reader to display them. Here's how I did it:
&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Add a mimetype for XML to the list of registered types. Make the type known (as opposed to unknown or unsupported), and the mimetype chemical/x-cml. &lt;/li&gt;

&lt;li&gt;Download the jmol package from sourceforge and ensure that the script jmol.sh (or jmol.bat on Windoze) has execute permission. On Windoze the environment variable JMOL_HOME must also be defined. On Unix just add the jmol directory to your PATH.&lt;/li&gt;

&lt;li&gt;Test jmol by running the standalone viewer on a CML file. When that works you should be ready.&lt;/li&gt;

&lt;li&gt;Add a CML item to a collection in your Dspace. That's it. Clicking on it will now run the viewer!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;
It would be great if the 3D image could be in the web page directly, like PDFs can with the browser add-on. But AFAIK there is no such add-on. There is the servlet but this would involve codes changes to DSpace.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-7230196040957994976?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/7230196040957994976/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=7230196040957994976' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/7230196040957994976'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/7230196040957994976'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2009/02/dspace-chemical-structures-cml-and-jmol.html' title='DSpace, chemical structures, CML and jmol'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-839951704962808352</id><published>2008-12-23T08:12:00.000-08:00</published><updated>2008-12-23T08:36:10.926-08:00</updated><title type='text'>Customizing DSpace v1.5.1</title><content type='html'>&lt;p&gt;Prior to version 1.5.1 of DSpace, customization was done using a separate project called Manakin. The name persists within DSpace, including DSpace documentation, but actually it is all integrated now and customization is done in the dspace tree, not some separate project.&lt;/p&gt;

&lt;p&gt;
Details on how to customize dspace are very thin on the ground and most talk about how to do it when it was the separate Manakin project. I have managed to find something that works for me. Here's how I did it:
&lt;/p&gt;

&lt;p&gt;
&lt;ul&gt;
  &lt;li&gt;Stop tomcat.&lt;/li&gt;
  &lt;li&gt;Delete the tomcat dir webapps/xmlui.&lt;/li&gt;
  &lt;li&gt;go to the dir in which you unpacked dspace. My dir is called dspace-1.5.1-src-release.&lt;/li&gt;
  &lt;li&gt;Go to the sub-dir where the themes are stored. The documentation I found leads you to the wrong place. I found I had to go to dspace-xmlui/dspace-xmlui-webapp/src/main/webapp/themes.&lt;/li&gt;
  &lt;li&gt;Copy the dir that is closest to the theme you want. Copy the whole dir to a new target theme name. The one I copy is Reference.&lt;/li&gt;
  &lt;li&gt;This next step is CRUCIAL - edit sitemap.xmap to make it refer to the new theme name. If you don't then it will still refer to Reference! You need to go to the map:components section near the start. There you will see a section that looks like this:
  &lt;pre&gt;
&amp;lt;map:component-configurations&amp;gt;
    &amp;lt;global-variables&amp;gt;
        &amp;lt;theme-path&amp;gt;Reference&amp;lt;/theme-path&amp;gt;
        &amp;lt;theme-name&amp;gt;put your theme description 
            here&amp;lt;/theme-name&amp;gt;
    &amp;lt;/global-variables&amp;gt;
&amp;lt;/map:component-configurations&amp;gt;
  &lt;/pre&gt; 
Change Reference and update the comment.
  &lt;/li&gt;
  &lt;li&gt;Edit dspace/config/xmlui.xconf. Go to the end where you will see the path defined for the default theme. It is Reference/. Note the trailing slash, it is important. Change Reference for your theme name.&lt;/li&gt;
  &lt;li&gt;Change something in your theme dir so that the change will be visually obvious. For example you can change the style sheet to refer to a different background image.&lt;/li&gt;
  &lt;li&gt;Rebuild dspace with these theme changes. Use the command 'mvn package'. This builds to [dspace-src]/dspace/target.&lt;/li&gt;
  &lt;li&gt;Update the dspace installation (which is in c:\dspace for me). Use the command 'ant update'.&lt;/li&gt;
  &lt;li&gt;copy the dir dspace/webapps/xmlui to the tomcat webapps dir.&lt;/li&gt;
  &lt;li&gt;Restart tomcat.&lt;/li&gt;
&lt;/ul&gt;
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-839951704962808352?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/839951704962808352/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=839951704962808352' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/839951704962808352'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/839951704962808352'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/12/customizing-dspace-v151.html' title='Customizing DSpace v1.5.1'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-604296761663529233</id><published>2008-12-17T13:15:00.000-08:00</published><updated>2008-12-17T13:25:55.446-08:00</updated><title type='text'>importing into DSpace</title><content type='html'>&lt;p&gt;I finally managed to import a text file into DSpace today. It was "Decline of Science in England" by Charles Babbage. Here's how I did it:&lt;/p&gt;

&lt;p&gt;
&lt;ul&gt;
&lt;li&gt;create an import directory. I called mine test-import.&lt;/li&gt;
&lt;li&gt;Create a directory below the import directory. I named it decline, after the book.&lt;/li&gt;
&lt;li&gt;Put the text file into the directory 'decline'.&lt;/li&gt;
&lt;li&gt;Create the file dublin_core.xml, in the 'decline' directory.
The file looked like this:
&lt;pre&gt;
&amp;lt;dublin_core&amp;gt;
    &amp;lt;dcvalue element="title" qualifier="none"&amp;gt;
        Decline of Science in England
    &amp;lt;/dcvalue&amp;gt;

    &amp;lt;dcvalue element="subject" qualifier="none"&amp;gt;
       science
    &amp;lt;/dcvalue&amp;gt;
&amp;lt;/dublin_core&amp;gt;
&lt;/pre&gt;
&lt;/li&gt;
&lt;li&gt;Create a file called content. The file contains a list of filenames,
one per line. In this case I had body (which was the name of my text file) and preface, which was a separate preface file I created.
&lt;/ul&gt;
&lt;/p&gt;

&lt;p&gt;
To import the item I then created a community and a collection under it, and gave this command:&lt;/p&gt;
&lt;pre&gt;
bin\dsrun org.dspace.app.itemimport.ItemImport -a -e emailAddress
-m mapfile.out -c 125050010/1469 -s test-import
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-604296761663529233?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/604296761663529233/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=604296761663529233' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/604296761663529233'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/604296761663529233'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/12/importing-into-dspace.html' title='importing into DSpace'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-972314995707570935</id><published>2008-11-26T03:27:00.000-08:00</published><updated>2009-02-14T04:43:44.823-08:00</updated><title type='text'>setting up DSpace and tomcat on windoze</title><content type='html'>&lt;p&gt;
My attention has turned to digital repositories. I looked at Greenstone but had enough problems with even a simple setup (admittedly trying to build from source) that I gave up. So I am now looking at DSpace. I had terrible trouble getting it to work on Windoze with Tomcat. I got it working eventually. Here is the tale of my voyage of discovery.&lt;/p&gt;

&lt;h1&gt;Prerequisites&lt;/h1&gt;
&lt;h2&gt;Postgres.&lt;/h2&gt;
&lt;p&gt;
goto http://www.postgresql.org/download/ and click on link for windoze.
this will take you to a one-click installer for 8.3
the one-click install runs a nice setup wizard.
database superuser = postgres,1gandalf.
listening port=5432 (default).
locale = English, United Kingdom
I got the popup "A non-fatal error occured during the cluster initialisation.
Please check the installation log in /tmp for details."
There did not seem to be a log in either c:\temp or c:\windows\temp.
The wizard then went on to completion.
The service says it is starting for quite a while then stops.
this seems wrong.
The windoze event log has a timeout waiting for server startup, 
preceeded by a fatal error "could not create lock file 'postmaster.pid',
permission denied. Went into c:/Program Files/PostgreSQL/8.3 and
did a recursive chmod 777. Then restarted the service. this fixed it.
&lt;/p&gt;

&lt;h2&gt;tomcat.&lt;/h2&gt;
&lt;p&gt;
download binary distro for tomcat 5.5 core, windows installer.
connector port = 8030 (default is 8080).
u,pw=admin,1gandalf
service fails to start.
turn on debug in tomcat configuration panel, then restart.
catalina logfile shows a bind error, address already in use.
this was because there was a leftover process that interferred.
I found the process using tcpview. need to put tcpview on my web pages.
it is much better than netstat.
after the kill tomcat restarted just fine.
&lt;/p&gt;

&lt;h2&gt;maven.&lt;/h2&gt;
it does not seem to come with anything ready for windoze.
I unpacked the binary zip and found it is an installation directory.
mvn can be run from the bin directory.
Add the full pathname of the bin dir to the PATH using the control panel.

&lt;h2&gt;postgres (continued)&lt;/h2&gt;
run PG Admin III (start-&gt;PostgreSQL 8.3-&gt;pg Admin III.
double-click on localhost to connect to the db, enter the password
for the postgres user.
double-click on loginRoles then rightMouse. Select 'New login role...'.
u,pw=dspace,dspace, check 'can create database objects' and
'can create roles'.
double-click on databases then rightMouse, select 'new database...'.
name=dspace,owner=dspace, UTF8 encoding.
privilege properties, add user/group public with connect rights.

&lt;h2&gt;dspace.&lt;/h2&gt;
&lt;pre&gt;
edit dspace/config/dspace.cfg.
change pathnames so they work for Windoze, e.g /dspace =&gt; c:/dspace
change port number to 8030, i.e the one used by tomcat.
db.name = postgres
db.driver = org.postgresql.Driver
db.username = dspace
db.password = dspace
mail.server=mail.company.co.uk
mail.from.address = amarlow@company.com
feedback.recipient = amarlow@company.com
handle.prefix = 123400009
authentication.password.domain.valid = company.com
&lt;/pre&gt;

&lt;p&gt;
create c:\dspace
cd to where dspace was unpacked.
mvn package.
this starts by doing lots of downloading and takes a *long* time.
it takes over 77 minutes!
cd dspace/target/dspace-1.5.1-build.dir.
ant fresh_install
&lt;/p&gt;

using a DOS cmd window:

&lt;pre&gt;
cd c:\dspace
bin\dsrun org.dspace.administer.CreateAdministrator
email: amarlow@company.com
first name: andrew
last name: marlow
password: 1gandalf
&lt;/pre&gt;

&lt;p&gt;
shutdown tomcat.
cd to tomcat conf dir
edit context.xml putting in the dspace stuff.
the context file is new to tomcat v5.
restart tomcat.
http://localhost:8030/jspui does not work!
could not get this to work.
tried to copy webapps/jspui to tomcat webapps dir but this
also failed, but for a different reason. this gave an error
in the tomcat log because it couldn't 
find ${dspace.dir}\config\dspace.cfg
also get a NPE trying to use log4j when not properly configured.
problem seems to be to do with the config directory not being
copied over. but where to put it?
&lt;p&gt;

&lt;p&gt;
See http://mailman.mit.edu/pipermail/dspace-general/2008-July/002103.html for someone else who had exactly the same problem as me.
&lt;/p&gt;

&lt;p&gt;
There seems to be a servlet LoadDSpaceConfig that is supposed to manage this and
presunably report if there are any problems. But it seems that this is not working.
I found this little nuggest in the DSpace manual on page 111, way after the
installation instructions!:
&lt;/p&gt;

&lt;p&gt;
The org.dspace.app.webui.servlet.LoadDSpaceConfig servlet is always
loaded first. This is a very simple servlet that checks the
dspace-config context parameter from the DSpace deployment descriptor,
and uses it to locate dspace.cfg. It also loads up the Log4j
configuration. It's important that this servlet is loaded first, since
if another servlet is loaded up, it will cause the system to try and
load DSpace and Log4j configurations, neither of which would be found.
&lt;/p&gt;

&lt;p&gt;
I removed the context stuff from context.xml.
This is to pursue a working configuration using the jspui that is
copied into the tomcat webapps dir.
&lt;/p&gt;

&lt;p&gt;
I edited webapps/jspui/WEB-INF/web.xml, replacing the dspace.dir param
value with the DOS path (C:\dspace.....). This did have an effect.
this gave the following error:
&lt;/p&gt;

&lt;pre&gt;
log4j:WARN No appenders could be found for logger (org.apache.commons.digester.Digester.sax).
log4j:WARN Please initialize the log4j system properly.
INFO: Loading provided config file: c:\dspace\config\dspace.cfg
INFO: Using dspace provided log configuration (log.init.config)
INFO: Loading: c:/dspace/config/log4j.propertieslog4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: c:\dspace\log\dspace.log (Access is denied)
        at java.io.FileOutputStream.openAppend(Native Method)
        at java.io.FileOutputStream.&lt;init&gt;(Unknown Source)
        at java.io.FileOutputStream.&lt;init&gt;(Unknown Source)
        at org.apache.log4j.FileAppender.setFile(FileAppender.java:289)
        at org.apache.log4j.RollingFileAppender.setFile(RollingFileAppender.java:167)
&lt;/pre&gt;

&lt;p&gt;
to fix this I did cd dspace;chmod -R 777 .
&lt;/p&gt;

&lt;p&gt;
this gave 
&lt;/p&gt;

&lt;pre&gt;
log4j:WARN No appenders could be found for logger (org.apache.commons.digester.Digester.sax).
log4j:WARN Please initialize the log4j system properly.
INFO: Loading provided config file: c:\dspace\config\dspace.cfg
INFO: Using dspace provided log configuration (log.init.config)
INFO: Loading: c:/dspace/config/log4j.properties
&lt;/pre&gt;

this looks alot healthier.
Now when I visit http://localhost:8030/jspui/ I get the page I expect. Wow!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-972314995707570935?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/972314995707570935/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=972314995707570935' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/972314995707570935'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/972314995707570935'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/11/setting-up-dspace-and-tomcat-on-windoze.html' title='setting up DSpace and tomcat on windoze'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-3756540052013744688</id><published>2008-11-22T13:55:00.000-08:00</published><updated>2008-11-22T14:08:07.219-08:00</updated><title type='text'>ant, ivy, archiva, maven</title><content type='html'>&lt;p&gt;
I have been looking into how to use ivy to manage dependencies during an ant build. And this caused me to look at apache archiva. It is possible to use ant without archiva but unless one has a local maven mirror this will involve ivy going to an internet maven repo, which can consume alot of network bandwidth.  I think this is the point of archiva, to have it as a local maven mirror when ivy finds the jar is not in its cache. Apparently, it can all be configured so that archiva is dynamically updated with missing components by takening them from a maven repo.
&lt;/p&gt;

&lt;p&gt;
I tried and tried to get archiva working but I just could not do it. I've no idea what I am doing wrong. I got so cheesed off that in desperation I set up a jar+pom repo on my own workstations web pages. Ivy has no problem reaching those. This seems to make archiva redundant. Given that once the jar has been located ivy can be configured to put it in a cache, this does make me wonder what the point is of archiva.
&lt;/p&gt;

&lt;p&gt;
Another weirdness I found, whch has got me really cheesed off with archiva and maven, is the state of the poms in the maven mirrors that I found. The mirrors seem to be a complete mess, with most things in the wrong places. For example xstream from thoughtworks is at the top level, and in org/codehaus and com/thoughtworks. Also the pom files always have a group name with dots instead of slashes. This tends to cause the download to give a flat directory structure. I manually set up structures for my web pages that keep the package structure in the jars. This meant I had to hack the poms to fix the group names. Of course this would not work with archiva since these changes would require a recalculation of the sha1 values. I'm glad I don't have to do that.
&lt;/p&gt;

&lt;p&gt;So, I've got something that works for me. It does involves alot of manual work to find the right jar file in a maven repo, given all the redudant copies in other parts of the tree. And I have to edit practically every pom file I download to avoid getting a completely flat directory structure. But this is price I am willing to pay to have a web space structure that follows the java package structure exactly for all the jars I have.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-3756540052013744688?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/3756540052013744688/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=3756540052013744688' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3756540052013744688'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3756540052013744688'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/11/ant-ivy-archiva-maven.html' title='ant, ivy, archiva, maven'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-5948189263488213024</id><published>2008-11-14T05:16:00.001-08:00</published><updated>2008-11-14T05:18:25.173-08:00</updated><title type='text'>how to mount an ISO image on Windoze</title><content type='html'>&lt;p&gt;
Every now and then I need to mount an ISO image on Windoze. This saves having to burn a CD/DVD. Here's how to do it:
&lt;/p&gt;

&lt;p&gt;
Go to http://www.tech-recipes.com/rx/62 /xp_small_free_way_to_use_and_mount_images_iso_files_without_burning_them
&lt;/p&gt;

&lt;p&gt;
and click on the download link, winxpvirtualcdcontrolpanel. This is a ZIP that you need to 'run'.  It is a self-extracting archive. It contains readme.txt, VCdControlTool.exe and VCdRom.sys.
&lt;/p&gt;

&lt;pre&gt;
Installation instructions
=========================
1. Copy VCdRom.sys to your %systemroot%\system32\drivers folder.
2. Execute VCdControlTool.exe
3. Click “Driver control”
4. If the “Install Driver” button is available, click it. Navigate to 
   the %systemroot%\system32\drivers folder, select VCdRom.sys, and click Open.
5. Click “Start”
6. Click OK
7. Click “Add Drive” to add a drive to the drive list. Ensure that the drive added is not a local drive. If it is, continue to click “Add Drive” until an unused drive letter is available.
8. Select an unused drive letter from the drive list and click “Mount”.
9. Navigate to the image file, select it, and click “OK”. UNC naming conventions should not be used, however mapped network drives should be OK.
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-5948189263488213024?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/5948189263488213024/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=5948189263488213024' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/5948189263488213024'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/5948189263488213024'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/11/how-to-mount-iso-image-on-windoze.html' title='how to mount an ISO image on Windoze'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-6477486066205881335</id><published>2008-11-13T09:38:00.001-08:00</published><updated>2008-11-13T09:39:32.872-08:00</updated><title type='text'>Using ActiveMQ and JNDI</title><content type='html'>I am using JMS again, this time via ActiveMQ. The difference is that time time there is no admin department to set up the queues for me and tell me what property names are needed for the various attributes, such as connection queue factory. Also I need to set up JNDI myself.

On Windoze I wanted to set up the ActiveMQ server as a service. This was not documented but luckily it comes with a simple batch service installer.

After a bit of digging around I found that once AMQ is running you can connect to a web-based admin facility via http://localhost:8161/admin. This includes the ability to browse the queues. Hermes may not be needed after all!

There does appear to be some JNDI stuff inside ActiveMQ. Some help is given in http://activemq.apache.org/jndi-support.html but it is very short on detail.

Dynamic queues lets us test things easily.

Another little gotcha I found was that the binary install of ActiveMQ does not install the XStream jar bu that jar is needed to examine the contents of queue messages via the web-based queue browser.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-6477486066205881335?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/6477486066205881335/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=6477486066205881335' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6477486066205881335'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/6477486066205881335'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/11/using-activemq-and-jndi.html' title='Using ActiveMQ and JNDI'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-4982267103732061126</id><published>2008-11-06T01:54:00.000-08:00</published><updated>2008-11-06T01:56:33.749-08:00</updated><title type='text'>I am learning how to drive eclipse at last!</title><content type='html'>At long last I have taken the plunge! I am also using ivy in my ant build so I found I need to tell eclipse about this. The Ivy and IvyDE eclipse plugins need to be installed. But I wasn't sure how to proceed from that point. I found a tutorial at http://jira.red5.org/confluence/display/docs/Ivy+setup+with+Eclipse which helps.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-4982267103732061126?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/4982267103732061126/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=4982267103732061126' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4982267103732061126'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4982267103732061126'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/11/i-am-learning-how-to-drive-eclipse-at.html' title='I am learning how to drive eclipse at last!'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-3184739293533551803</id><published>2008-08-06T12:29:00.000-07:00</published><updated>2008-08-06T12:36:01.061-07:00</updated><title type='text'>xemacs and key mapping problems</title><content type='html'>For some time now I have got a warning when starting xemacs. The warning causes the window to be split into two, with the warning in the lower window. The warning is something to do with the keyboard mapping having mod1 and mod3 defined to the same key. I googled for answers but they all said the same - fix it using xmodmap. I tried it and it didn't work. So in the end I added the following to the end of my .emacs startup file:

&lt;pre&gt;
(when (featurep 'xemacs) 
;; Don't warn me about nonsensical X11 modifier issues. I don't care 
;; if Alt is simultaneously Mod2 and Mod5 on this machine; I don't 
;; press it anyway. Yay separate Meta keys. :) 
(setq display-warning-minimum-level 'error) 
(setq log-warning-minimal-level 'info)) 
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-3184739293533551803?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/3184739293533551803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=3184739293533551803' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3184739293533551803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/3184739293533551803'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/08/xemacs-and-key-mapping-problems.html' title='xemacs and key mapping problems'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-4133349368576489277</id><published>2008-05-12T03:15:00.000-07:00</published><updated>2008-05-12T03:18:17.148-07:00</updated><title type='text'>Windoze, php and mySQL</title><content type='html'>At PHP5 the windoze installation no longer enables mySQL by default. Here's what you have to do:

you need to edit php.ini, adding the following lines:

&lt;pre&gt;
extension_dir = c:\Program Files\PHP\ext
extension=php_mysql.dll
extension=php_pdo_mysql.dll
&lt;/pre&gt;

Now restart Apache. A simple php page with the phpinfo command should reveal that the mySQL extension is now present.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-4133349368576489277?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/4133349368576489277/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=4133349368576489277' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4133349368576489277'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4133349368576489277'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/05/windoze-php-and-mysql.html' title='Windoze, php and mySQL'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-4708314271909795609</id><published>2008-04-13T06:10:00.000-07:00</published><updated>2008-04-13T06:39:38.282-07:00</updated><title type='text'>How to fix corrupt Windoze registry permissions</title><content type='html'>For some unknown reason my Windoze machine got the registry all screwed up. Hey, it's Windoze, every Windoze user has this done to them eventually. The effect was that I could not reinstall Micro$oft Office coz it gave a fatal registry error during the de-install. All the Micro$oft knowledge base articles were as useless as each other. Shareware registry cleanup utilities didn't clean it up either. Eventually I found out how to do this. You need a tool called subInAcl. Download it from http://www.microsoft.com/downloads/details.aspx?FamilyID=e8ba3e56-d8fe-4a91-93cf-ed6985e3927b&amp;displaylang=en

Then create a DOS batch file, let's call it fix-office-perms.cmd, containing the following:
&lt;pre&gt;
cd /d "%programfiles%\Windows Resource Kits\Tools"
subinacl /subkeyreg HKEY_LOCAL_MACHINE /grant=administrators=f /grant=system=f
subinacl /subkeyreg HKEY_CURRENT_USER /grant=administrators=f /grant=system=f
subinacl /subkeyreg HKEY_CLASSES_ROOT /grant=administrators=f /grant=system=f
subinacl /subdirectories %SystemDrive% /grant=administrators=f /grant=system=f
subinacl /subdirectories %windir%\*.* /grant=administrators=f /grant=system=f
&lt;/pre&gt;
Start a DOS command window, cd to where you put this script, then run it. Watch it repair the permissions. It takes several minutes to run. Strewth, what a hassle! But at least there is a way out.

The corrupt registry seemed to be triggered by an error that happened during an attempted install of Visio. Towards the end of the install it said:
&lt;pre&gt;
Could not open key: UNKNOWN\MsoHelp.HtmlHelp\CLSID.
Verify that you have sufficient access to that key,
or contact your support personnel.
&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-4708314271909795609?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/4708314271909795609/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=4708314271909795609' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4708314271909795609'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4708314271909795609'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/04/how-to-fix-corrupt-windoze-registry.html' title='How to fix corrupt Windoze registry permissions'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-8003420156147300914</id><published>2008-03-26T07:25:00.000-07:00</published><updated>2008-03-26T07:28:44.941-07:00</updated><title type='text'>Apache and skype conflict over port 80</title><content type='html'>I added apache to my Windoze setup recently. My windoze machine also has skype. This is when a discovered a nasty interaction. I found it on a forum at http://forums.devarticles.com/programming-tools-11/os-10048t-11921.html. Skype uses port 80! Yes, it even uses 443 (the https port) as well. Luckily these are the default settings and can be changed. And change them you must otherwise apache mysteriously fails to start. The Windoze event log reveals nothing. I eventually found it was a port conflict by trying to start httd from the DOS prompt.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-8003420156147300914?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/8003420156147300914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=8003420156147300914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/8003420156147300914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/8003420156147300914'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2008/03/apache-and-skype-conflict-over-port-80.html' title='Apache and skype conflict over port 80'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-8172132972491661396</id><published>2007-08-11T15:10:00.000-07:00</published><updated>2007-08-11T15:21:38.788-07:00</updated><title type='text'>Getting jacORB working</title><content type='html'>&lt;p&gt;
I am back in the land of CORBA once more but with an ancient buggy version of Orbix. In an attempt to escape I thought I would try using jacORB then I could argue that we either use jacORB or a more recent version of Orbix. The great thing about jacORB with it being open source is that I thought it would be easy to try it out and get some basic development. Well that was the theory. The trouble is jacORB has a few wrinkles that caused me a bit of trouble setting things up. I did get it working eventually and it is just great now. Here's what I did:
&lt;/p&gt; &lt;p&gt; Mistake number 1: I tried to use the binary distribution. It doesn't work. There are a few essential components missing. Apparantly some other developers have also been hit by this. The ant build of jacORB proceeds quite quickly and painlessly so the lesson here is just use the source distribution and build it using a top level ant build. Problem solved. See bug 765 at http://www.jacorb.org/cgi-bin/bugzilla/show_bug.cgi?id=765 for the problems with the binary distribution.
&lt;/p&gt; &lt;p&gt; Multiple java SDKs: On machines with multiple java SDKs, where the default one may be an old one, you will need to hack jaco script to avoid this error: http://forum.java.sun.com/thread.jspa?threadID=651418&amp;tstart=0. Hack the script to force the complete path of a Java 5 compiler.
&lt;/p&gt; &lt;p&gt; Edit orb.properties to specify filename of NS OIR (you have to pick a path).
&lt;/p&gt; &lt;pre&gt;./ns -Djacorb.naming.ior_filename=&lt;pathYouPicked&gt;
&lt;/pre&gt; &lt;p&gt;run grid demo:&lt;/p&gt;
&lt;pre&gt;jaco -cp 
"/export/apps/open_image/amarlow/work/JacORB/classes:$CLASSPATH:." 
demo.grid.Server
 jaco -cp 
"/export/apps/open_image/amarlow/work/JacORB/classes:$CLASSPATH:." 
demo.grid.Client
&lt;/pre&gt; &lt;p&gt; Now it works! Just remember to run your own app using jaco or setting up your own CLASSPATH manually to include all the jacORB jars that are needed.
&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-8172132972491661396?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/8172132972491661396/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=8172132972491661396' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/8172132972491661396'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/8172132972491661396'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2007/08/getting-jacorb-working.html' title='Getting jacORB working'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-7749700521367019663</id><published>2007-08-11T14:48:00.000-07:00</published><updated>2007-08-11T14:57:18.371-07:00</updated><title type='text'>trouble with xemacs and other X11 apps on solaris</title><content type='html'>I recently found out the cause for some strange problems on solaris when connecting to it via ssh and then trying to use X11 applications. This was when I tried to get xemacs working on solaris. The problem was that all was well until I tried to use cut-n-paste, including deleting characters or lines in xemacs. As soon as the function was invoked an X11 error message appeared and the application froze. It was necessary to kill xemacs (or whatever the X11 app was) using kill -9. For quite a while I thought it was because somehow I built the app wrongly.

Eventually, I found this link with an explanation for cygwin users:

&lt;a href="http://x.cygwin.com/docs/faq/cygwin-x-faq.html#q-ssh-no-x11forwarding" target="_blank"&gt;http://x.cygwin.com/docs/faq/cygwin-x-faq.html#q-ssh-no-x11forwarding&lt;/a&gt;

It is an FAQ where the question is: X11Forwarding does not work with OpenSSH under Cygwin. This turns out to be generally applicable for users of X11 apps when connected to machines via ssh. It is not specific to cygwin. Just remember to always ssh using the -Y option. Then all will be solved!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-7749700521367019663?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/7749700521367019663/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=7749700521367019663' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/7749700521367019663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/7749700521367019663'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2007/08/trouble-with-xemacs-and-other-x11-apps.html' title='trouble with xemacs and other X11 apps on solaris'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-4556552782218788855</id><published>2007-06-17T04:33:00.000-07:00</published><updated>2007-06-17T04:35:42.280-07:00</updated><title type='text'>Getting eclipse working on solaris</title><content type='html'>Why is it so painful to set up eclipse on solaris?

I have recently started working with java and although
java on MicrosoftWindows is very nice I have to have java
working on Solaris. Hence I thought, "let's get eclipse
on solaris so I can use its great debugging facility".
I put a request in with the helpdesk and left it at that.
A couple of weeks later eclipse still hadn't arrived
so I thought, "I'll do it myself, how hard can it be?".
I have an ancient Ultra5 at home running Solaris 7 so
I thought I would install it on that and bring it in on
a small USB drive.

It turns out the eclipse executable you download from the
sun website has all sorts of library dependencies that take
a while to get sorted out. But even when those are sorted
there are still pitfalls.

You would think that with solaris and java being invented
by Sun Microsystems the company would find ways to get the
things to work together. Well I say, "where's the evidence?".
I tried to get eclipse working on my Ultra5 for a couple of
weeks now. I just succeeded this weekend. Here is the long
and painful story of how I did it:

1) The first step had to to be to abandon using solaris 7.
   The version of X11 that comes with solaris 7 is just too old.
   Eclipse has all sorts of problems using the so-called ready-built
   installs that are around, so there is some build from source
   needed. However, it turns out that this is just too hard to do
   on older versions of solaris due to X11 differences.
   It is easier said than done to get an alternative version of
   X11 installed. I tried building the latest X11 release 7.2 from
   source and it will only build with the very latest GCC.
   Unfortunately there are eclipse components that currently won't
   build with that version of GCC. So after a week of trying to build
   X11, install the right version of GCC and build the various parts
   of GTK that eclipse depends on, I gave up and installed solaris 9.

   This was also a painful experience but more due to bad luck than
   anything else. The machine threw a wobbly during the solaris
   install. I'll admit there was a thunderstorm at the time.
   Solaris managed to get itself in a state where it tried
   booting in CPR mode, then shutting down, then rebooting again,
   only to shutdown again. Apparently, this is rare condition
   with a very esoteric escape route. On the reboot, type STOP+A
   to get to the ROM prompt, then enter the command:-
   set-default boot-file
   This broke the CPR boot cycle and the system eventually booted
   normally. It was then I found the file system was corrupt.
   One very tedious fsck later I was up and running again.

2) Use the famous Freeware for Solaris website, http://sunfreeware.com.
   I used to take a macho pride in building all the GNU tools I needed
   from source, and from knowing about the dependencies between the
   packages. But the trouble is some packages have become so big and
   complex that all the components required for a successful build
   have to be at particular versions, requiring particular versions
   of the GCC compiler. I can't cope any more. I made heavy use of
   this wonderful website. I wrote a little shellscript that used
   wget to suck all the pkgadd packages over in one go. Phew!
   Then the installs started. Here are the steps I took:
   a) create /usr/local, create other transfer dir someplace else.
   b) ftp the unzippd gzip package to the transfer dir from my
      linux machine (no openssh yet, so have to initiate ftp from
       linux to solaris).
   c) pkgadd -d gzipPackage to install into /usr/local/bin.
   d) ftp all the other packages to the transfer dir
   e) use gzip to unpack them all.
   f) Did selective installs of these packages.
      Started with bash (phew), bzip, gcc, zlib, tar, bison, flex,
      automake, autoconf, binutils and make. Installed many others
      that I won't mention here.
   g) Installed some of the packages eclipse requires,
      such as glib, atk, libtiff, pango and gtk.
   h) Tried to start eclipse and found a few libraries
      still missing, e.g. libglib-2.0, libgmodule-2.0 and
      libgobject-2.0. Installed glib-2.13.0 which made this
      problem go away. At last, doing an ldd on the eclipse executable
      says that all libraries are found.

3) Build gtk+-2.2.4 from source.
   This step was necessary because it turns out that the version
   of gtk on the sun freeware site has been built wrongly.
   Some of the symbols have internal linkage instead of
   external linkage. This problems shows up as a fatal relocation
   error, symbol gdk_font_equals not found when you try to run eclipse.

   The first thing to realise is that when you have to build a GTK
   component from source, do not make the mistake I did, which was
   to try to use the most recent version. Use the one closest to
   what you already have instead. I already tried using the latest
   GTK components when I was on solaris 7 and there are just too
   many problems. So I downloaded v2.2.4. It failed to configure.
   I had pkgadd'd glib1.2.10 but gtk+-2.2.4 requires at least
   glib-2.1.4. So I pkgadd'd glib-2.13.0 on top which seemed to work.
   The next problem was configure did not spot that I had installed
   freetype 2.3.1. This is because freetype changed the way you have
   to include their header files. I had to hack the configure script
   to cope, changing the include code to:

   #include &lt;ft2build.h&gt;
   #include FT_FREETYPE_H

   Next the X11 check failed. This was because the test app was
   failing to find gethostbyname but the configure script assumed
   it must be failing to find the X11 symbols. I hacked configure
   again to force -lsocket -lnsl.
   Next, it failed to find libexpat. I pkgadd'd it and then, eventually,
   configure succeeded. At last!
   Doing a make at this point also failed but the failure was in
   one of the demo programs. The libraries built so I did a 'make install'
   and tried to run eclipse.
   Eclipse said there were no fonts, but at least it ran.

4) Set up X11 fonts.
   At first I thought the problem was do with the fontconfig install,
   so I did a build from source of that. But it made no difference.
   Eventually, I realised that the fontconfig configuration was
   not being installed in the proper place and was not referring
   to the X11 fonts that come with solaris. The tipoff is to use the
   command "xlsfonts", which lists the fonts solaris-X11 knows about,
   then give the command "fc-list" which gives the fonts fontconfig
   knows about. The former gave a reasonable list,
   the latter gave an empty list.
   The fontconfig install creates the directory /usr/local/etc/fonts.
   This needs to be symbolically linked to /etc/fonts (which didn't even
   exist at this point). Then fonts.conf needs to be edited.
   The command "xset q" shows where the solaris standard X11 install
   puts its fonts. But beware! Do not add all of these to fonts.conf!
   Only add the dirs that contain compressed pcf files. Do not mention
   the directories with the TrueType fonts. If you do then fc-list
   will hang and so will eclipse.

5) Get JDK1.5.0.
   At this point eclipse ran but immediately produced an error
   saying that the JRE is too old. Solaris 9 comes with JRE1.4.
   This is not recent enough. Come on Sun! Eclipse is THE number 1
   java development environment, so please make sure that your
   downloadable solaris installs support it.
   Tracking down suitable versions of the JDK is harder than
   I thought it would be, thanks to sun's confusing website,
   their mandatory registration proceedure, and the confusing
   plethora of java environment names (jdk, sdk, j2ee, standard edition,
   enterprise edition, java studio etc etc etc).
   Eventually, after a number of false starts, I got hold of
   jdk-1_5_0_12-solaris-sparc.sh which installed ok.

6) Take the rest of the day off.
   That's it! With the right sun freeware packages installed,
   with gtk+-2.2.4 built from source, the X11 fonts configured
   and JDK1.5.0 installed, eclipse is now up and running.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-4556552782218788855?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/4556552782218788855/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=4556552782218788855' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4556552782218788855'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/4556552782218788855'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2007/06/getting-eclipse-working-on-solaris.html' title='Getting eclipse working on solaris'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-7166304416940996832</id><published>2007-03-09T15:00:00.000-08:00</published><updated>2007-03-09T15:09:38.234-08:00</updated><title type='text'>What to do when grub gets in the way of windoze</title><content type='html'>When you've put linux on a machine it tends to use grub during the boot. This can pose a problem if you decide to revert to windoze. Most windoze install procedures leave the MBR alone. This causes problems because a windoze install usually means at least one reboot during the installation process. If grub is still on the MBR this causes a problem because grub will then try to boot linux but will fail because the windoze install that is partway through overwrote it. At this point the boot tends to hang. Heres how to get around it:

and save to a USB flash drive.Download MbrFix (http://www.ambience.sk/fdisk-master-boot-record-windows-linux-lilo-fixmbr.php) Whilst linux is still there use the following grub commands:

grub&gt; rootnoverify (hd0,0)
grub&gt; makeactive
grub&gt; chainloader +1
grub&gt; boot

Now you can install windoze. When it gets to the boot you will be put into grub again. Use the commands above to let the boot carry on and it will boot windoze. Once windoze has fully installed you need to run a MbrFix . Get it from the flash drive you prepared earlier. Help is builtin. Now grub will be gone and reboots will behave normally!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-7166304416940996832?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/7166304416940996832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=7166304416940996832' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/7166304416940996832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/7166304416940996832'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2007/03/what-to-do-when-grub-gets-in-way-of.html' title='What to do when grub gets in the way of windoze'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-7944452581992353558</id><published>2007-02-11T11:26:00.000-08:00</published><updated>2007-02-11T11:23:55.638-08:00</updated><title type='text'>postfix email forwarding issues</title><content type='html'>I tried to configure postfix to use email forwarding, both by postfix configuration and by the use of a .forward file. It failed silently. Eventually I found out that it was the fault of SELinux, which was enabled during my installation of Fedora Core 5. There doesn't seem to be any fix I know off other than turning it off via the command: setenforce 0.

With selinux disabled, procmail does invoke my whitelist filter correctly.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-7944452581992353558?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/7944452581992353558/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=7944452581992353558' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/7944452581992353558'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/7944452581992353558'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2007/02/postfix-email-forwarding-issues.html' title='postfix email forwarding issues'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-115807408231429577</id><published>2006-09-12T08:14:00.000-07:00</published><updated>2006-09-12T08:16:57.343-07:00</updated><title type='text'>An ebay weirdness</title><content type='html'>&lt;span style="font-family: times new roman;"&gt;I have just started to sell some junk (what else?) on ebay and came across a little nasty I thought I would document here. I was using Windoze (cough, cough), and Micro$oft Internet Exploiter. After quite a while I noticed that the web pages were no  longer working properly. I could not enter the category of a new item and was getting a warning triangle on the bottom left hand corner warning of scripting errors. Several other people also get this and I saw a range of conflicting advice. However, on guy said to uninstall the flash player. I went to uninstall in the control panel. I did not see flash listed but I saw Macromedia shockwave player so I uninstalled that. Suddenly, ebay started working again! Go figure....&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-115807408231429577?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/115807408231429577/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=115807408231429577' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/115807408231429577'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/115807408231429577'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2006/09/ebay-weirdness.html' title='An ebay weirdness'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-115719101262721168</id><published>2006-09-02T02:56:00.000-07:00</published><updated>2006-09-02T08:36:44.383-07:00</updated><title type='text'>privoxy on linux</title><content type='html'>Here's what I did to get privoxy working on linux, using the source tarball:-

The unpacked source does not come with a configure script. You have say:

autoheader
autoconf

before you can say configure;make;make install

It builds and installs just fine once this is known. It installs into /usr/local/sbin with the config files in /usr/local/etc/privoxy. This is actually a mis-match - when privoxy is run from /usr/local/sbin it complains that it cannot find the config file /usr/local/sbin/config. Of course it can't find it! The files are in /usr/local/etc/privoxy! Create a symbolic link:-

cd /usr/local/sbin
ln -s /usr/local/etc/privoxy/config .

Then the privoxy daemon will start up ok. Then you just change the proxy settings in firefox to point to 127.0.0.1:8118 for all protocols. That's it!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-115719101262721168?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/115719101262721168/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=115719101262721168' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/115719101262721168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/115719101262721168'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2006/09/privoxy-on-linux.html' title='privoxy on linux'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-115654047663975019</id><published>2006-08-25T14:14:00.000-07:00</published><updated>2006-08-25T14:14:36.686-07:00</updated><title type='text'>xmms on linux</title><content type='html'>There is a new version of xmms, version 2, which works with GTK2 and supports the latest codecs. I started to look at this because I recently obtained a number of music files in m4a format, which the old xmms cannot handle. This blog describes my experience trying to get xmms2 up and running on linux.

xmms2 depends on scons (which is installed via python) and SQLite (configure;make;make install).

xmms2 will, in theory, build without any other dependencies being satisfied but it is as well to get some other things installed for the optional components of xmm2. First is the mad library for mp3 support (configure;make;make install). Next is ogg/vorbis (configure;make;make install). Next is ALSA support (configure etc...).  Next is the crucial one, AAC support via the faac library from &lt;a href="http://www.audiocoding.com"&gt;www.audiocoding.com&lt;/a&gt;. This proved to be some hassle:

faac has a slightly non-std build in that ./bootstrap must be run before running configure. When I downloaded faac the bootstrap script has been DOSified so I had to say "dos2unix bootstrap bootstrap" to fix that. The configure script then started to produce the usual output but near the end fell over with:

.infig.status: error: cannot find input file: 
This looked like another DOS-ism and indeed it is. configure.in and Makefile.am also need to be unDOSified but that's not all. I run the following script found on a faac WIKI:

#! /bin/bash
if [ -d $1 ]; then
for i in $1/*; do
./$0 $i
done
else
mv $1 tmp
cat tmp  tr -d &lt;a href="file:////r"&gt;\\r&lt;/a&gt; &gt;$1
rm tmp
fi

I then re-added execute permission (to every file for simplicity). Re-running configure still did not work so I re-ran bootstrap. This generated a configure script that ran to completion. The make then worked although there were several warnings about missing newlines at end of file. Clearly this release still has some rough edges.

Finally I was ready to try using scons to build xmm2. Then I found that xmms2 also depends on the command git-rev-parse. I tried to download and build git. Its tarball comes with a Makefile and just typing 'make' seemed to do the trick. One small suprise was that once the build finished, saying make install as root caused lots of other building to happen. However, finally, it did install but when I re-ran scons on xmms2 I still had problems. git installs to /root/bin so I tried running scons as root with /root/bin added to my PATH. The error I got was:

fatal: Not a git repository

scons seemed to blunder on and got several other later errors such as list index out of range. At this point I gave up for the night. If I return to this I will add notes as comments to this blog entry.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-115654047663975019?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/115654047663975019/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=115654047663975019' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/115654047663975019'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/115654047663975019'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2006/08/xmms-on-linux.html' title='xmms on linux'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-115176056978840537</id><published>2006-07-01T06:29:00.000-07:00</published><updated>2006-07-01T06:31:42.063-07:00</updated><title type='text'>External USB drives, Linux and Windoze</title><content type='html'>I recently bought a Maxtor 250GB external USB drive. This was to share files between my Linux and Windoze systems without having to worry about blowing away my linux installation if I decided to go with a new distro. There were several problems. First, the maxtor drives comes preformatted as NTFS so by default it can only be read on Linux. That was no good for me. I needed to reformat it as FAT32 but this proved to be much harder than you might think.

I blanked out using the disk using dd so start completely from scratch.

Windoze 2000 and Windows XP do not seem to recognise completely blank disks. The option to partition them is greyed out. Third party tools such as Partition Magic also seem to have the same problem. I tried to set the disk up under Linux using fdisk. This was very problematic but I did eventually get it to work. Here's what happened:

using fdisk to set the partition to FAT32 (type = 'c') did not seem to do the trick. The next time I went into fdisk it claimed the partition table was empty. Eventually I came across some info that said the mkdosfs command has to be used and there is where I found a very nasty gotcha. Unlike most unix commands the mkdosfs command takes the options AFTER the device filename. If you put the options first as I did then the command claims to be working and sits there for ages as if it is working, but it does not produce any output. When it eventually finishes you think it has done the job but actually it has done nothing. Trying to mount the partition gives errors because the disk is still empty (you get various errors that basically indicate it could not find what it wanted from the superblock). The command that I used that does give the right results is:

mkdosfs /dev/sdb -c -F 32 -I -v

The command I was using was mkdosfs -F 32 -I -v /dev/sdb.

When the command does work it takes a very long time but you can see it is working because it comes up with a long list of during the bad block search.

Another gotcha to be aware of is to avoid having the disk mounted during boot time. This is because because large partitions can cause problems for certain boot loaders.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-115176056978840537?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/115176056978840537/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=115176056978840537' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/115176056978840537'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/115176056978840537'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2006/07/external-usb-drives-linux-and-windoze.html' title='External USB drives, Linux and Windoze'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-114219148168965803</id><published>2006-03-12T11:24:00.000-08:00</published><updated>2006-03-12T11:29:18.533-08:00</updated><title type='text'>Setting up MySQL</title><content type='html'>This blog entry describes my attempts to set up mySQL on my Linux machine.

First, download the source tarball from http://dev.mysql/downloads. Uncompress and de-tar. It is built in the standard way, i.e. configure; make; make install. There are quite a few dependencies etc so it takes a while for the configure to run. There are loads of files to compile to it takes quite a while to make.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-114219148168965803?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/114219148168965803/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=114219148168965803' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/114219148168965803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/114219148168965803'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2006/03/setting-up-mysql.html' title='Setting up MySQL'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-114217310388447141</id><published>2006-03-12T06:18:00.000-08:00</published><updated>2006-03-12T11:25:36.293-08:00</updated><title type='text'>Movie file formats</title><content type='html'>Movie clips in AVI form tend be unplayable in DVD players even when the play has been multi-regioned. So there needs to be a way to convert these files to MPGs. Googling for AVI to MPG converters gives loads of hits but these hits turn out to be mostly dead-ends. This blog entry is about my discoveries into getting a working AVI to MPG converter.

The hits from google tend to be references to shareware for Windoze. I tried one of these in desperation and although it initially seemed to work I later realised that the MPG was truncated to the first hour of the film. It also took AGES to run (I left it converting overnight). I looked for open source solutions and these seem to be very thin on the ground. I came across ffmpeg (http://www.ffmeg.org) but the last official source release fails to compile with the latest GNU compiler. The latest CVS snapshot also did not work properly when I ran it on Linux. It consumed more and more memory and CPU until eventually all the machine was doing was swapping. I then tried building the last official release on cygwin and amazingly, this works! Not only does it work but the command is quite quick as well. To convert fred.avi to fred.mpg the command to use is:

ffmpeg -i fred.avi -target vcd fred.mpg&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-114217310388447141?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/114217310388447141/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=114217310388447141' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/114217310388447141'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/114217310388447141'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2006/03/movie-file-formats.html' title='Movie file formats'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-113636967898580781</id><published>2006-01-04T02:14:00.000-08:00</published><updated>2006-01-04T02:15:58.026-08:00</updated><title type='text'>Interesting s/w: gramps</title><content type='html'>&lt;a href="http://marlowa.blogspot.com/"&gt;gramps&lt;/a&gt;
gramps is a program for displaying and editing genealogical information in the standard GEDCOM file format. Julian Cohen gave me the GEDCOM file for Brenda's family tree and I tried to build gramps so I could display it. There are some teething troubles building gramps which I document in this blog.

gramps requires very recent versions of gconf and gnome-python. A little gotcha which is not at all obvious is that gnome-python also requires a very recent version of pyorbit otherwise gnome.ui will not be built. When this happens, the grams configure says that gnome-python is not there even when it is! So here is what you have to do:

install gconf (I used version 2.12.1)
install python (2.4.2)
install pygtk (2.8.2)
install pyorbit (2.13.1)
install gnome-python (2.12.3)

Now a configure &amp;&amp;amp;amp; make &amp;&amp;amp; make install for gramps should work.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-113636967898580781?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/113636967898580781/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=113636967898580781' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/113636967898580781'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/113636967898580781'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2006/01/interesting-sw-gramps.html' title='Interesting s/w: gramps'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-112903369346238850</id><published>2005-10-11T05:28:00.000-07:00</published><updated>2005-10-11T05:28:13.473-07:00</updated><title type='text'>Learning new software stuff</title><content type='html'>I am just about to take the plunge with subversion. &lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-112903369346238850?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/112903369346238850/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=112903369346238850' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/112903369346238850'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/112903369346238850'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2005/10/learning-new-software-stuff.html' title='Learning new software stuff'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-15640890.post-112463969444284911</id><published>2005-08-21T08:53:00.000-07:00</published><updated>2005-08-21T08:55:14.360-07:00</updated><title type='text'>This is my very first blog posting</title><content type='html'>This is my first first trip into the world of Blogging. I created this blog using www.blogger.com. The setup was very very easy. Then I created this entry just to see what would happen.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/15640890-112463969444284911?l=marlowa.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://marlowa.blogspot.com/feeds/112463969444284911/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=15640890&amp;postID=112463969444284911' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/112463969444284911'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/15640890/posts/default/112463969444284911'/><link rel='alternate' type='text/html' href='http://marlowa.blogspot.com/2005/08/this-is-my-very-first-blog-posting.html' title='This is my very first blog posting'/><author><name>Andrew Marlow</name><uri>http://www.blogger.com/profile/15677162551542366263</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry></feed>
