Distro/desktop (s)hopping, part 2: XFCE

So since my Ubuntu installation was behaving idiotically I decided to stop delaying the unavoidable, and made a fresh install of Arch Linux on an spare disk. I completed the installation of the basic system in a couple of hours, but I could have finished way earlier if the neighbours didn’t create so much interference with my Wi-Fi.

Even if mrdoob is tempting me with GNOME 3, arguing that it’s not that bad!, I want to test by myself the other alternatives and see if I can work with them.

Since I can choose what I install, the system is a sort of lightweight Frankenstein:

  • ext3. Recent Ubuntu versions use ext4 by default, and I did use it for a while, but stopped doing so when I discovered that if the system crashed, some files got reduced to 0 bytes (that is: their contents were lost). Not nice! So I’m opting for the tradition here.
  • LightDM as login manager. This is the same that Ubuntu uses, and is based on WebKit so I can customise its appearance by editing HTML if I want to. But what is really interesting is that it’s super fast, so the login screen shows up almost immediately after the X are started. Win!
  • I have only installed ALSA, and not PulseAudio, for the time being. I also set its daemon to load up asynchronously, so that speeds up a little bit the load process.
  • I’m using WiCD for managing my wireless connection. In the past I used NetworkManager but I wanted to try this one. It’s slightly ugly compared to NetworkManager, but does its work spotlessly so I won’t complain!
  • XFCE. It’s very fast but also a bit rough, compared to GNOME2. Semiwin, read on for more on why!
  • Nautilus as File Manager. Thunar (XFCE’s ‘native’ file manager) is very fast but doesn’t have tabs. I also tried pcmanFM which does indeed have tabs, but it was slightly buggy.
  • Firefox. The current version packaged in Arch is 7, whereas the builds from source are already on 10. I used to build my own version with Ubuntu, every week or so, and I tried to do the same but it failed. Since I’m not yet used to the build process in Arch I decided I would just use the repo version for now. In any case, it starts up almost instantaneously. Win!
  • Chromium. The Arch repo doesn’t include Chrome, but Chromium. It therefore doesn’t have a Flash plug-in–but that’s OK. I’m going to try and avoid using Flash as much as I can; the only problem I’ve found so far is that Google’s StreetView requires Flash. I demand a WebGL version!
  • Talking about WebGL, I’m using the nouveau open source nvidia driver. I thought it was going to be problematic just by looking at their compatibility table, but so far I just got a WebGL issue, and I’m not sure if it’s because of Chromium or because of the driver itself. We’ll see when I experiment more with WebGL.
  • Graphics stuff: I installed GIMP (2.6) and Inkscape. I also installed the Save for web GIMP plug-in, which is pretty useful as you can choose to strip EXIF data, adjust the output size based on the compression level, etc… This is packaged in a set with more plug-ins in Ubuntu, but I had to compile it from source here, as it’s not in Arch repositories. It wasn’t difficult though, and allowed me to submit a documentation patch too, which is already merged into the project! I love github! ^^
  • For video, I’m using VLC, and for audio, Audacious. I learned today how to compile the XMP plug-in for Audacious straight from the GIT tree, so I can listen to tracked music (modules) with Audacious too. Yay!
  • For quick image viewing I installed Mirage. It’s super fast but doesn’t show EXIF data, so when I want to browse/view images with more detail I use gThumb, which I already used in Ubuntu. But the default is to open images with Mirage.
  • I also installed GNOME terminal, as I’m used to it. xterm was a bit too basic! Win if only because of the tabs!
  • And VirtualBox. I want to experiment with having a couple of virtual machines for certain things such as web development, so I can just fire it up when I need it, and the rest of the time I won’t have an Apache daemon process waiting on the background (you can replace Apache with MySQL, nginx, etc… you get the idea). That way the system is very lean, and also I can copy the virtual machine to another computer and keep working without having to set up another environment! Therefore… double win!

So what do I think of XFCE after using it for a couple of days? Well, it’s good that it’s sooo fast, but it also feels excessively rough sometimes. Specially when editing or customising things such as panels I find myself right clicking on things and not really getting the sort of contextual menu I would expect to see.

I guess I’ve been spoiled by the Ubuntu eyecandy and now everything else feels ugly. The problem is that as these interfaces are GTK-based and whoever designed GTK themes apparently was high when doing it, making custom GTK themes is just so complicated that I guess you need to be on drugs too if you want to create a GTK theme. It’s so unnecessarily confusing. So after trying to install the Ambiance theme from Ubuntu and not getting too far, I decided to just look for a very simple XFCE theme and see how it would work. At least is not punching my face every time I look at the screen, unlike other themes that I saw 🙂

However I think I’ll succumb and test GNOME 3 soon, because of two reasons:

  1. I found about about tint2, a GNOME panel. That alleviates my initial G3 reluctance.
  2. In theory G3 can be customised using Javascript. So maybe, only maybe, I could tweak it to my tastes (centered window titles, excessively padded windows and huge icons, I’m looking at you all!)

Meanwhile I’ve noticed my computer is way quieter than usual. Specially I hardly hear the hard disk–I literally have to look at the led to see if it’s working or not. With Ubuntu it was considerably noisier, but it could be because it was fragmented –don’t know! It’s just a random fact that I’ve observed.

Previously on the Distro/desktop (s)hopping “saga”: KDE.
Next: we’ll see! I’ll update when it happens.

Distro/desktop (s)hopping, part 1: KDE

One year after, and I’m still running Ubuntu 10.10. I have tested Unity and GNOME 3 both on Virtual Boxes and on real computers and I disliked them both–they convert perfectly capable machines into piles of obsolete hardware. It’s a shame, but it’s their decision.

Thankfully, since it’s Linux, we have many choices, and so I’m currently experimenting with several options in order to replace this Ubuntu installation with something more akin to my tastes. I’ve decided I’ll use Arch Linux, since I have some experience with it and it follows a rolling release model, which means the system shouldn’t break every 6 months (as with Ubuntu), because packages are regularly updated. Or at least, if it breaks, it should happen in a granular way, and I should be able to roll back the problematic packages.

I also considered using Mint Debian Edition (which is ‘rolling’ too, but based on Debian Testing), and had a look at other distributions such as CrunchBang and etc, but Debian Testing seemed a little outdated the last time I tested it (sorry about the redundancy!). And the other distributions don’t seem to have such an excellent support and community such as Arch’s. Plus I like the rc.conf way of configuring the system! 😉

As I have already decided on the distribution I’ll use, it’s now time for the desktop part. I’m looking for something that:

  • doesn’t get on my way
  • doesn’t distract me
  • allows me to place things where I want
  • has a decent file manager (tabs! gvfs support! thumbnails! drag and drop!)
  • <insert more subjective features here>

Ubuntu was headed in that direction (they released the Ubuntu font, cleared up the GTK theme, etc…), until they went crazy for Unity and ruined everything.

I had a look at KDE‘s website. Apparently they haven’t gone ‘tablet crazy-only’ yet, and still keep a desktop friendly version of their desktop manager, so I thought I would give it a go… and I found an embarrassingly tacky environment with all manners of distracting stuff.

Proof:

KDE

KDE

KDE

Of course I should be able to change the theme and configure it to my liking, but there are so many wrong things with the default experience that it’s been enough for making me reject the idea of using KDE.

Sorry about the harsh criticism, KDE devs, but this is a mess–and that’s a pity, because the system ran reasonably fast, even with all those unnecessary animations and transitions everywhere.

Next up in the testing/criticising queue: XFCE, LXDE, …

PS Isn’t it funny+sad that Unity is managing to segregate the Ubuntu community?

Unicode emoticons with GNOME’s Character Map

GNOME’s Character Map, also known as Gucharmap, comes by default with Ubuntu and any other distribution that uses GNOME. And dull and functional as it is, it can also be the source of much enjoyment!

GNOME's Charmap

The trick is easy: just go browsing around the Unicode blocks until you find something you fancy, and double click the character so that it’s added to the “Text to copy” field. Then play with some chars until you get a result, since you can also edit text in that field.

I’m pretty sure speakers of the languages which use the characters we “draw” with will be massively puzzled by our behaviour. But it’s funny anyway!

Some quick examples:

ರ_ರ — Low skeptical eyebrow
⇝_⇜ — Argh
↬_↫ — Convoluted argh
↻_↻ — You were wrong, undo everything you’ve done today and start again
⇴_⇴ — I think I’ll pass
ৄ_ৄ — Sophisticated spectacles
ㄖ_ㄖ — Japanese serious person, with specs
╤_╤ — NOOOO
ᨆ_ᨆ — Zzzz
ᨆ‿ᨆ — Zzzz, happier
⁀‿⁀ — Happier and awake
ᨊ_ᨊ — You said what?
Ӧ — YOU SAID WHAT?
᨟_ᨔ — Eye patch
ꙨꙍꙨ — What? with big nose
OራO — Another big nose
ꙭ_ꙭ — Four eyes (literally)
ि_ी — Huge frame specs
㋩ — Saaad
㋡ — Happy
㋬_㋬ — ^_^ with glasses

Your take?

Honeycomb, MTP and Linux

TL;DR

If you want to transfer files between your computer and your tablet, get aafm, an application I’ve written to work around MTP issues with Linux.


Honeycomb ends with the tradition of allowing users to mount the phone’s SD card as an USB mass storage device, and replaces that with MTP. Or, in other words, “Media Transfer Protocol”, a Microsoft protocol for transferring files between portable devices and a computer.

Why? Because in theory MTP allows the computer to access single files and directories at the same time that the device can still access them. So you can forget about “dismounting” the SD card and getting some applications to stop in your Android device. It sounds too good to be true… and as expected, it doesn’t work.

Continue reading “Honeycomb, MTP and Linux”

Updating ‘geometry’ in TexLive + Ubuntu

I wanted to use \newgeometry to alter the layout of a document in the middle of it, but I was getting the dreaded Undefined control sequence error, which showed that the version of the geometry package installed with Ubuntu was too old.

Thanks to this thread at Ubuntu forums I learned how to install LaTeX packages at will, and I finally had a newer geometry package that supported \newgeometry! \o/

I presume it will work with any other (La)TeX package you might want to install, so I’ll write down the steps just in case I need them for the future:

First, download the package’s zip file (or any other equivalent compressed file release). Uncompress it and locate the .dtx file.

We need to “compile” this file before LaTeX can use it. To do so, cd to the place where the .dtx file is and run:

tex geometry.dtx

This generates a .sty file (geometry.sty) that we’ll have to copy to a special place where TeX looks for stuff. This “special place” can actually be a number of places, but the only one that worked for me was /usr/local/share/texmf/tex/latex/geometry/. (I also tried placing it in ~/texmf/tex/latex/geometry/, to no avail–it didn’t seem to be recognised, don’t know why).

Once it’s in the proper place we need to let TeX know that there’s new stuff. This is done with

sudo texhash

And we should be able to use the newer geometry package now! Yayyy!

PS Is it just me or people look at you with weird faces too, when they hear you’re learning about LaTeX? I bet they actually understand “latex” 😉