Both my desktop and my laptop started working more slowly a few weeks ago. This indicated that something about the operating system (some version of Ubuntu Linux) changed in a bad way. Or, perhaps, since the slowness was mostly noticed in the web browser, the newer version of Firefox was somehow borked. It turns out that the latter is true to some extent because the developers of Firefox left Linux out in the cold with hardware acceleration (and despite the excuses for that I’m still annoyed … had the same issues applied to, say Windows, they would not have left Windows out in the cold). But that is a digression. It turns out that the cause was related to something I had installed that was related to the system. This little problem has been solved, but it brings up another issue, which has also been addressed on the blog Linux in Exile. This is what I wanted to talk about.
First, the small problem: Ubuntu One. If you install Ubuntu One (and with newer versions of Ubunutu, it may be installed for you) you get some nifty features. File storage space in the cloud, access to a music store, and a desktop-level integration with your social networking stuff are among them. However, you also get these processes including Ubuntu One itself and gwibber and something having to do with couches (a bookmark coordination tool). These processes are bullies. They will demand your computer’s attention when you first start using it after the desktop is running to the extent that on a smaller RAM or slower processor device you might as well go get a cup of coffee because you’re not doing squat for several minutes. Later, they will periodically slow down your system and make it freeze for several seconds at a time.
I use my computer for writing in a text editor. That’s right… I said TEXT editor, not word processor. And, I use the web. Yes, of course, I use all sorts of other software now and then, but mostly just these functions. So, I might turn my computer on, open up an instance of emacs, write a few thousand words, save it, and turn the computer off.
When I do that, I do NOT, under ANY circumstances, EVER want my fingers to be typing ahead of the letters appearing on the page. I’ve got over one gigawhatevers of processor power, dual processors many gigabytes of ram, a fast hard drive, and a lean and mean operating system (Linux) and I’m using at TEXT EDITOR. Therefore, if the system chokes and slows down enough when the ONLY thing I’m doing is typing on a text editor with NO OTHER SOFTWARE other than that related to the system running, then a major bad thing has happened. How could it possibly be that this could happen?
And, it started happening.
So, I did a little searching on the web and inspection of running processes using top, and discovered that guibber, the couch thingie, and a Ubuntu One client, all conspiring with each other, had destroyed the functionality of my laptop to the point where it was, well, very frustrating. My desktop was not as badly affected.
So, Ubuntu One got zeroed out, uninstalled, erased. It is now an ex-application.
I’m very happy with Dropbox as a cloudy storage space, though I’d be willing to swap to an equivilant system that was cheaper or dealt better with security. But whatever that system is, it can’t destroy the functionality of my computer. Dropbox does, in fact, bully its way into the process fray and slow things down now and then, yet manages to take its time syncing files at times. Recently, a small file took an entire day to get around to transferring from my laptop to my desktop, using the LAN (which was fully functioning). Nonetheless, it does not do as much damage as the very disappointing Ubuntu One. (If you are reading this even a month or so after I wrote it, do re-investigate Ubuntu One. It HAS to improve. I assume it will.)
But all of that is detail. There is a larger point here, or should I say, a more pragmatic project, more forward looking than mere ranting.
As I had noted, Linux in Exile is addressing this issue. Noting the flexibility of Linux, Linux in Exile addresses the issue of a home-made DIY version of Chromebook. If you don’t know what Chromebook is or get why one would home-make this, check out Linux in Exile’s post on the topic.
Something like this would work very well for my laptop. My ideal system would work like this: A minimal install with a minimalistic window manager creates two workspaces, each with one window filling the screen. No toolbars. One workspaces has a highly flexible functional tabbed browser (like Google Chrome, but may be Firefox) and the other has an instance of window-style emacs (which also has tabs, etc). Emacs has a directory management system built in. A more elaborate system would have a third window with a file manager and a fourth window with a terminal.
So, we have this pair of questions: How much savings does one achieve by eliminating the ability to have arbitrary windows of variable size and mobility (“windowing”), but retaining the ability to make ONE window (Linux in Exile’s solution); and how much savings does one achieve by eliminating windowing but creating, automatically, a fixed, small number of windows with specific processes running in them?
And, would it be possible to have a simple configuration file that allows one to determine how many screens/desktops (one window with one app each) there will be on boot-up and what will be in them?
A second possibility would be to use a terminal without a windows manager for most functions (text editing, file management) but run a browser in a windows manager. This, I think, would limit cross-application functionality (i.e., a clipboard) unless one did some fancy hacking.
So, how do we do this?
Please feel free to discuss this below, but it may be more useful to continue the discussion on LIE, where it has already started, and where we will have the expertise of Mr. Exile himself who has started messing around with this idea.
(And yes, I totally get that the obvious solution is to use emacs as the browser … but for various reasons we will not be doing that.)