To me at least it reads as a bit unfocused. You've clearly got a mass of experience but for any individual job much, if not most, of it isn't relevant. It's a CV that says "look at all the experience I've got" but doesn't really do a great job of saying why you'd be good for any specific role.
I'd look at three or four resumes, each more focused around a specific skill, industry or problem type. Maybe one as a hardcore Linux developer, one with a more web / multimedia focus and so on. Pick out three or four projects relevant to each one and write a few lines about them. While the fact you've got 35 years of C is impressive and maintain your own Linux distro, it's not going to be relevant for roles focusing on a higher level language and is just distracting from your abilities which are relevant.
Also, personally I'd put it on two pages and space it out far more. Larger font, larger borders, more white space generally.
TL;DR: You're probably better than 90% of devs out there but you're not selling it well. Overall aim for less content but with more punch and make it nicer to read.
It badly needs trimming, I found it hard to get a sense of your skills (and which are current) that you want to work with.
As with other people who are starting out, you've got plenty of time to plot a course. Remember to add to your skill set when you can.