Tag Archives: Ubuntu.

It’s Getting Harder to Love Linux

Update

I used to be an operating system specialist. I’m not any more. I want to use a computer as a tool to get something done, like most people do.

I’ve used Linux for many years without ever learning too much about it. There was a time when I considered that to be proof it had caught up with Windows for ease-of-use. Windows has crashed and burned on me more than once

Things seemed to change when Canonical took their premature decision to move Ubuntu to the Unity graphical shell on the Gnome desktop. I finally lost patience with Unity a few months ago and installed the Gnome Desktop instead. It’s been mostly OK but I’ve had a couple of odd disappearances of freemind (Java) and umbrello (KDE.) Umbrello is running with it’s icons missing and I’ve manually reinstalled freemind. I now have to work out how to add a Java app to the Gnome desktop. This is too hard for ‘us normal people’.

In the meantime, freemind is started from my terminal with the command

sh -c “cd ~/bin/freemind && sh ‘freemind.sh'”

At least that’s nice and simple, if you like that kind of thing. Sadly, I don’t.

Update: I’ve fixed Umbrello. Via the KDE bug system I discovered that Fedora users were short of an icon library so I experimentally searched for the same library in the Ubuntu repos and added it. The oxygen-icon-theme transitional package adds oxygen5-icon-theme.

I’ve updated the bug report:
https://bugs.launchpad.net/ubuntu/+source/umbrello/+bug/1598401

Update 2: It came unfixed the first time I tried to save – after a couple of hours work, obviously. I’ve backed up to paper before applying this workaround:

https://bugs.launchpad.net/ubuntu/+source/umbrello/+bug/1585611

I used the synaptic package manager to add kio then let it sort itself out. UML updates saved, with no loss of data. This is why I use a real operating system. Morning not wasted after all. The Linux love is returning.

Freemind Ubuntu Kludge

[ Update: Now unkludged with a greatly improved hack:
https://bugs.launchpad.net/ubuntu/+source/openjdk-8/+bug/1510009/comments/24

comment out the (only) line
“assistive_technologies=org.GNOME.Accessibility.AtkWrapper” in
/etc/java-7-openjdk/accessibility.properties

Now even more confused how sudo helped ]

I’ve been unable to run my beloved mind-mapping tool ‘freemind’ since upgrading my only 64-bit Linux box to Ubuntu 15.10.

I haven’t found the cause yet, but in trying to debug the problem, I’ve found a surprising workaround. At the command line, run the script as SuperUser:

$ sudo -uYourOwnUsername freemind &

It’s Java so I have no idea why this helps. It’s a really bad idea to use sudo when you don’t know why. It does however, on this occasion, seem to allow me to climb out of a rather deep whole I’ve dug. The problem persisted if I manually installed the latest Freemind. The Ubuntu version I’m using, 0.9, was OK before and works fine on my Raspberry Pi 2 and an older 32-bit Ubuntu, so I’m a bit suspicious of 64-bit Java.

I’ve clearly not had much trouble before as it was news to me that

$ DEBUG=1 freemind

dumps information about the Java environment.

Social vs Capital Part 2

To recap:

Unix happened because companies trying to run their businesses using software didn’t like being dependent on the whims of hardware manufacturers. Each manufacturer defined their own hardware architecture. Customers wanted hardware-independence.

GNU/Linux and the Free & Open-Source Software movement happened because coders didn’t like waiting for someone else to fix their problems or to decide not to fix them. They wanted access to the source code and the legal right to change software and share their changes. They wanted software-supplier independence.

I simplified last time. BSD, GNU & Linux weren’t the only game in town. An important book was published: ‘Operating Systems, Design And Implementation’ by Andrew Tanenbaum. Tanenbaum believed in giving his students access to working source code. He had used Unix but when AT&T pulled up their draw-bridge, he needed a replacement that his readers could use and change – so he wrote one. ‘Minix’ was a minimal rewrite  of the key functions of Unix v7 which ran on a twin-floppy IBM PC (just about.) Unfortunately, the publishers, Prentice-Hall, insisted on retaining Copyright to the software. To get a copy, you had to buy a computer science book you probably didn’t want but. But I bought it, as did a young man called Linus Torvald. Tanenbaum was also instrumental in the production of the Amsterdam Compiler Kit which was the starting point for the GNU C compiler. My first sight of the GNU effort was on a listing for a 9-inch tape from the DEC User Society: It included emacs, gcc & the ACK, to be run on your own commercial Unix system.

Stallman and the GNU organisation were writing another replacement for Unix, free of copyrighted code. Their aim was to ensure that if you used their software, no-one else would ever prevent you from using code, particularly if you had contributed to it. Copyleft was born. ‘Free’ (as in beer) licences were not new. The BSD licence allows anyone to take BSD code and do what they wish with it, including building non-Free code on top and selling it.  OS X is built on FreeBSD but Apple sells licences and protects “its” intellectual property from re-use by competitors, including those companies that contributed code that Apple used. ‘Strangely’ Stallman didn’t think this was fair so worked towards creating the GNU licence, the GPL. The original idea has been described as “viral”. If you used GNU-licensed code then your code was required to be GNU-licensed too and you were required to make it available to anyone who wanted it, for only the cost of reproduction. THe GPL was arguably ‘less free’ because it enforced sharing and prevented commercial exploitation. GPL supporters point out that the code you contribute becomes a marketing tool to sell a future service. You offer a service (typically to write other software) rather than sell a software product licence. There is downward market pressure on price and upward on quality, to provide the best value service.
Compromises were made to the GPL  later, leading to the ‘Lesser’ LGPL. This allowed  software libraries to be used in conventionally licensed commercial software.

Having established the new ground-rules, GNU started work, from the top downwards. The bottom layer, the HURD kernel, has still not been delivered. Fortunately, that guy Linus started at the bottom and worked up. When he and his Internet recruits started needing to test their kernel, the GNU tools were ready. Because GNU & Linux were both copying the same open system interfaces, they worked together.

The Free Software movement happened because all these individuals knew they couldn’t do everything on their own. If they wrote something new or fixed a problem, they gave it away. In return, someone else would have fixed a future problem before they found it and shared the solution with them, free.

People sometimes question what happened to ‘the hippy generation’. It appears that many of them went into computer science and carried right on with implementing a community based on freedom & love, inside any institution that would pay them a salary. ‘The Community’ developed a culture and distributed processes and tools that anyone was allowed to use. When people who had grown up in this community started their own companies, they didn’t follow the IBM model, as Bill Gates and Steve Jobs had. They adopted the Free tool-kits of the hippies. Facebook, Google, the Nokia Maemo/MeeGo team, Red Hat, Canonical (Ubuntu Linux) and the Steam gaming platform come from a new breed of entrepreneur. They are not in business to sell you hardware or software as a product. They sell you a service on the Internet. Many of these services are ‘free at point of delivery’.

But there are costs and someone has to pay. You are no longer locked into a hardware or software supplier but to a single service provider and they have your information, probably the most valuable asset of your organisation.