Emacs GNU/Linux Free Software & Open Source personal

Mac OS X from a GNU/Linux User

Snow Leopard
The Mac OS X slogan I’ve heard from several mac fanboys is “it just works”. Well, being a GNU/Linux user for quite some time and coming to OS X, that is not the case for me. There’s a lot of little things that “just don’t work” on my particular usage.

Recently I’ve been given a 17″ Macbook Pro for use at my job. My first impression was “wow, nice solid hardware” and that has turned to be very true. But after a while of fiddling with the operating system and doing actual work as I’m used to, lots of little things started to annoy me.

Developer tools

First, I’ve been told that OS X is the best platform for developers. Well, to begin with, basic development tools are not installed by default. You have to install all Xcode tools (about 3.1 GB) just to get gcc, make and related basic tools, off the CD plus a bunch of other unknown things. The installer doesn’t detail much on what its installing.

Getting and updating software

Then, there is no repositories support by default. You have to install Macports or Fink, or download each of your software packages by hand, so upgrading all your apps depends entirely on each provider, except for the Apple applications. So this tells me the software upgrade program is exclusively for Apple apps and no third party software can access this upgrading system. It would be a good idea if the software updater had an API or something that other software vendors can use it to notify upgrades.

A curious thing for me is the fact that lately when the software updater updates the Safari web browser and other trivial applications, it asks for a full system restart. I don’t know why OS X, a BSD Unix based system, needs a restart when you upgrade such a non-critical application like the browser, but that reminds me a lot of Windows asking to restart for every single piece of software installed.

PHP and extensions

At my job we use PHP 5.2.8 and a bunch of extensions. Although OS X comes with Apache and PHP already, there’s no easy way to install all the extensions we use, so we have to compile the damn thing and all its dependencies. It has taken us a whole day just setting this up, and some co-workers just quit trying and went through the option of developing on a virtual machine with GNU/Linux. Some even cried. I got it all good and running, but when I upgraded to Snow Leopard, all my settings were reverted so I had to start again.



For most of my tasks I use Emacs, but there’s a bunch of choices and versions on how to install it, but none is very consistent. If you install emacs from Fink, you don’t get finder actions to open files on Emacs. If you don’t install from Fink, then when installing other packages, like Auctex, will need to download Emacs from Fink. Then you have redundancy. So the solution here is to install your elisp files manually on your elisp folder.

Ctrl, meta and alt keys are messed up. Important for any Emacs user and also for a command line power user.

Other software

Basic office apps, like the typical word processor, spreasheed and presentations programs are not available by default, which is something you have for granted on most GNU/Linux distributions.

No GPG, wget, latex and other basic tools you take for granted on any GNU/Linux or BSD system.

Finder annoyances

Hidden folders (those starting with a dot) are not easy to browse on the file navigator (Finder). To view hidden files in Finder, you need a hack. There’s no easy menu option for it.

You cannot overwrite by drag and dropping a hidden folder like ~/.emacs.d/ if it already exists. It first asks you for the administrator password, then it tells you it will not change an “invisible” folder. The only way I could get around it was by using the terminal.

Also Finder has no “one directory up” button, so to move one directory up, you must enable the navigation bar that appears at the bottom of every window. But this is not very intuitive to do. Also, if you are on a file chooser dialog, this bottom navigation does not appear, so there’s no way “up”.

Finder always puts a .DS_Store and a ._MacOSX file and folder on everything you browse, being an external hard drive or usb drive or anything and you can’t disable that behavior. So I typically end up with my thumbdrives and backup drives filled with this files. Also if you compress (zip) a directory using the Finder menu option, the resulting zip also contains these files.

Finder cannot be used as an FTP or SCP client like Konqueror or Nautilus via the location bar. Although you can use the “connect to server…” option.


Well… not much to conclude here. I guess I just have to get used to “the mac way” of things until I get back home to my nice Debian system.

Have you migrated from GNU/Linux to OS X? I’d like to know your experiences and recommendations.

Snow Leopard foto is Creative Commons by Captain Chickenpants
Wildbeet foto is Creative Commons by Arno & Louise
GNU/Linux Free Software & Open Source

My girlfriend’s migration to Debian

my gnu girlfriend

After years of talking about it and her coming with me to my free software talks and meetings, she finally let me replace the proprietary OS on her laptop with Debian GNU/Linux.

I think it took us both much time to migrate her laptop for several reasons. First, she barely has time to sit at the computer for other "normal" stuff that’s not urgen school projects. So for her, the computer is just a school tool. In contrast, for me, the computer is part of my daily life.

So after lots of procrastinating and "not now because I have urgent stuff to do", she finally allowed me to do the migration.

I’ve prepared her for the migration years before, giving her open source alternative software for almost all her tasks. Firefox for browsing, audacity for her audio editions (she does a lot of this), pidgin for instant messaging. She tried several times on Windows, but couldn’t end up adopting it because of some bugs in past versions with the spanish spell-checking dictionary not getting installed.

I selected the Debian distribution over the typical choice of Ubuntu for a new user. First, since I’m a member of KDE Mexico, it was logical for me to suggest the use of KDE. Then the decision was KDE3.5 or KDE4. I went for KDE 3.5 because of stability. I don’t want things to start crashing or behaving weird and then dissapoint her. This point also made a point towards Debian stable over Ubuntu, stability is a lot better. And finally, since I’m going to be giving her technical support, I wanted her to have the same stack of software that I have so I can guide her through screens and commands.

After we backed up all important files on DVD and my terabyte hard drive, we started the installation. Ada got angry at me after I installed it for her. She really wanted to do it herself from beginning to end. So, we started over.

After a long while of downloading updated packages with a relatively slow connection, the system was all set. I explained her the new desktop manager and how to install packages from commandline. A few more minutes downloading audacity, audio and video codecs and other applications, she was all ready to go.

She quickly went through her frustration phase as every change in someone’s life produces. A few complaints later, and the next day she was back into audio editing for her next dance festival.

Its been three days now since she migrated and all I’ve heard is good things about the change. I hope everything keeps going well. Next step: using Emacs.