Enterprise Emacs

- 3 mins read

Many years ago I discovered the beauty in a beast called Emacs. I am actually a frequent user of both Emacs and Vim, but I firmly belive in the notion of learning one editor well:

“The editor should be an extension of your hand; make sure your editor is configurable, extensible, and programmable.” — The Pragmatic Programmer

At the many jobs I have had, colleagues often glanced over my shoulder and said; “Oh, Emacs … Yeah I used that ages ago when I was working on UNIX …”, often they remember it fondly, sometimes for all the quirky keyboard shortcuts. Very few know that it is still being actively developed.

Emacs can be quite counter intuitive and sometimes even an outright pain to use. I find it a shame that still today, after (literally) decades there are no sane defaults. Once, when I was still forced to use Windows, I saw a setup wizard in Win32-Emacs that resembled what I would like to have — a sort of use cases possible to chose from. It may have been some extension that was maintained in some non-official version, because now when I look for it I cannot find it. But why not have a setup wizard in the upstream distribution of Emacs as well?

Well, this is my gripe, the pieces of Emacs that are still unfriendly to users, and mostly new users, coming from Windows or MAC. I will use this blog to present ideas and small things I have done to make Emacs more user friendly. I call this Enterprise Emacs.

Suspend/Resume Nightmare in Ubuntu

- 3 mins read
I’ve had my ThinkPad T43 for a while now and I’m really pleased with it, everything just works! It took some pleading and, I admit, begging to persuade my boss and the IT department to buy it since they usually only buy from Dell or HP. This was mainly due to care packs and payment plans that these suppliers offer companies. My ThinkPad they had to actually pay for straight up.

Bzrweb 0.1.2 Released

- 2 mins read
The end of my own “summer of code” is here. Seriously, this summer I took it upon myself to clean up my act and move whole heartedly to the Bazaar version control system for my private projects. Needless to say, I didn’t get far. Being quite lazy I haven’t upgraded this server yet to the latest shiny Debian 4.0. This made it a bit hard to setup the new shiny Loggerhead web gui (see it in action here) for Bazaar — so instead I started fixing up the old bzrweb that I already had setup a few years ago.

Netapplet Patchwork

- 2 mins read
I think I’ve finally done it — achieved my ultimate goal of combining the awesome powers of the Debian /etc/network/interfaces file with guessnet, wpa_supplicant, ifplugd and now also with netapplet! I’ve been looking for a way to just point-and-click to select a different access point, both at home and at work. To that end I have a pretty advanced interfaces file that automatically detects where I am, what I am connected with (cable/wireless) and then, like magic, sets it all up.

Making bzrweb work again

- 1 min read
During the past weekend and the last couple of evenings I’ve been studying the Python code in bzrweb — which I’ve been using for online repository browsing. It broke sometime last year due to not keeping up with the development of bzr. Yesterday I got it working again! Browse: http://vmlinux.org/jocke/bzr/ Branch: bzr branch http://vmlinux.org/jocke/bzr/bzrweb Having only programmed Python very little earlier I must say that it’s really easy to get in to.

Buggy Gnome Main Menu

- 1 min read
I’ve been living with the new Gnome Main Menu for a while now. Like many others I run Ubuntu these days and I’ve found the version in Feisty Fawn to be extremely slow and buggy. I tried manually installing (dpkg -i) the latest version in Gutsy, but it had too many dependencies. So I decided to try and backport it, and it worked! I haven’t set up any repository, so just download the below two .

VMWare Kernel Modules for Your New Kernel

- 1 min read
My recent post on building Debian kernels misses a subtle but useful point. Namely that of building Debian kernel modules alongside your new kernel. I wanted to run a new kernel with the Ubuntu vmware-player-kernel-source package. I was fumbling around wanting to use module-assistant to do this for me when I stumbled upon on the solution, presented so eloquently by my friend Albert Veli. This gives us a small update to the previous post:

HowTo: Building Debian/Ubuntu Kernels

- 1 min read
I have been over this topic so many times now, strangely enough I’ve managed to make things more complicated than they need to be. It’s really this simple: $ wget ftp://ftp.sunet.se/pub/Linux/kernels/v2.6/linux-2.6.19.2.tar.bz2 $ tar xfj linux-2.6.19.2.tar.bz2 $ cd linux-2.6.19.2/ $ zcat /proc/config.gz >.config $ make menuconfig [Tweak to your hearts desire] $ fakeroot make-kpkg --initrd kernel_image $ dpkg -i ../linux-image-2.6.19.2_2.6.19.2-10.00.Custom_i386.deb [DONE!] You may, of course, need to tweak the file /etc/kernel-pkg.conf, but there are man pages for that.

Moved

- 1 min read
Yep, we finally did it, we bought ourselves a house. Last year in October we moved from our small three-room flat in central Västerås to the new house in Skultuna. Everything went really fast from finding it up for sale, deciding on it down to getting a loan and moving in. Worst part of it all was getting a decent broadband connection. We actually moved from a 100 Mbps dedicated copper line to a 24/2 Mbps ADSL line.

Top Ten UNIX Shell Commands

- 2 mins read
Current trend is to run the following one-liner from IBM. I’m usually logged in to the following three systems, with very different results. vmlinux.org $ history |awk '{print $2}'|sort|uniq -c|sort -nr|head -10 144 ls 61 cd 58 sudo 29 less 23 emacs 19 bzr 16 vim 11 rm 10 wget 10 mv My personal life. Not much different from my professional dito. Most visible difference maybe is my use of bzr instead of svn.