All this script writing has got me noticing a few things. I was trying to set key bindings in Gnome. Why do they have their own custom method of doing this, buried in the Windows registry-like Gnome settings files ? What happened to building on previous work ? I think Linux has it’s own methods of setting key bindings. This is not windows. If I set a key binding to start Firefox that should start it outside of X … at the console. What if X is not started ? No Firefox. If the key binding follows Linux philosophy it should start Firefox AND X from the console if it’s not started already. The problem with the Gnome and Ubuntu philosophy is that it is geared at competing with Windows. This is good from an ex Windows user perspective but from a Geek perspective it is … Evil.
We are teaching users to see their computers as the GUI. This was never the intention of Linux and many Linux guru’s warned us of the evils of X decades ago. Were we listening ? Because I don’t want to live in a world where all the other window managers are taken over by Gnome and Ubuntu and settings are buried in obscure central settings files or even worse locked into the code where users can’t get at them. For developers it may be easy to alter code but is’nt Linux supposed to be giving power back to the user ?
Try bringing this up in Linux forums, especially Ubuntu one’s and some try to discount the entire issue by claiming “if you don’t like it then install something else using the package manager”. Well, that may be so. But Ubuntu is big and aligned with big business. Linux is not against business and the commercial world per se, but it does stand for freedom (as in free) and we’ve already seen what a big company can do with that.
EDIT: I just realised something that’s been bugging me for months. In Ubuntu, Pulseaudio is setup by default (as some kind of “design feature”) to stop playing audio when the user switches to the virtual console ( CTRL – ALT – F1, F2, F3 … ). What an amazing way to put anyone off using the console and restricting them to XTerm. I am a fairly savvy user and I’ve tried fixing this to no avail so far. Are there other examples of this kind of behaviour ?