Older blog entries for salimma (starting at number 78)

Important milestone in support for Clojure in Fedora reached

Screenshot of Leiningen 1.7.1, installed from RPM on Fedora 17

It works! A major part of our (Kushal Das and myself) proposed Clojure feature for Fedora 18, the Leiningen build tool used by Clojure project, is now up and running.

After packaging many dependencies, rigging up build scripts, and reporting bugs against other components we depend on (some are not fixed yet but hopefully all the fixes will get applied soon) — now we can turn our attention to packaging real apps. Yeah!

To follow our progress (and chip in — volunteers welcome!), see our progress documentation, with complete links to issues in Fedora’s bug tracker.

Syndicated 2012-06-12 02:53:58 from Intuitionistically Uncertain » Technology

Firefox and Thunderbird 13.0, zero installation required*

Now that Mozilla has released version 13 of both Firefox and Thunderbird, it’s high time that I port their relevant 0install interfaces — they were last updated when I was with the OSR group, as the versions packaged in Fedora have been up to date for the past few months.

A simple invocation of

0desktop http://hircus.multics.org/interfaces/2011/firefox-launcher.xml


0desktop http://hircus.multics.org/interfaces/2011/thunderbird.xml

would give you desktop launchers for those two; they will check for updates periodically and you can manually override which version you want to run, out of the ones listed in the feed.

*you’d need to install zeroinstall-injector first, either through your distribution package or by hand.

e.g. on Fedora:

yum install zeroinstall-injector

and on Debian/Ubuntu:

apt-get install zeroinstall-injector 

Syndicated 2012-06-06 08:54:32 from Intuitionistically Uncertain » Technology

0install feeds in transition

A heads-up to those who have been using the 0install application feeds I used to maintain for the OSR group at mojo.informatik.uni-erlangen.de: as I’m no longer employed there, the service has been disabled.

I’ve transitioned the feeds to http://hircus.multics.org/interfaces; the Git repository is now on Github. Currently only Skype (and its dependencies) and Eclipse JEE (and its Java dependency) have been switched over; the other feeds are still set to the previous hosting site. Please file bugs if you need need a particular application feed fixed, find a problem, or file an enhancement request if you’d like to see an app packaged!
Oh, and for those who saw the lightning talk at FUDCon:
$ su -c "yum install 0install-injector" $ 0desktop http://rox.sourceforge.net/2005/interfaces/ROX-Filer # to get the ROX-Filer file manager added to your desktop # or $ 0alias rox http://rox.sourceforge.net/2005/interfaces/ROX-Filer # to get a command-line launcher in your path 

Syndicated 2012-05-24 11:59:46 from Intuitionistically Uncertain » Technology

A guide to Thunderbird for Gmail users

James Fallows of The Atlantic — a highly-recommended journalist and blogger, for those who have not come across his writing yet — recently re-expressed his dissatisfaction with Gmail’s new UI; and mulled switching to Thunderbird but worried about memory usage.

From Screenshots

As someone who did the same transition a while back, I remember going through that issue and then some. Memory usage, lack of integration with Google Contacts (exacerbated with the seamless contact sync of Android phones), a UI that makes it hard to manage multiple email accounts, and vertical space being taken up by the menu bar.

Thankfully, Thunderbird being extensible, there are setting tweaks and extensions for all of these; as James found them useful, I thought I’d re-share them here:
  • Memory usage - a well-documented problem; the solution is to not synchronize your All Mail folder.
  • Using Gmail folders – While you’re at it, Thunderbird’s auto-configuration for Gmail accounts does not use the special folders by default; you’d want to set them in Copies & Folders and Junk Settings. You’d probably also want to visit Server Settings and disable “Check for new messages” (so TB would use Push-IMAP instead of polling) and set the deletion behavior to “mark it as deleted” instead of moving it to Trash – remember that Google would archive your mail instead of deleting it. Optionally disable Message Archives in Copies & Folders – just use the web interface to find old messages
  • Drafts folder - an advantage of using Gmail’s drafts folder, instead of the local one, is that you can access drafts from other computers. A drawback, though, is that TB auto-saves regularly as you edit your message, and if you use an IMAP folder, it discards old drafts by moving them to trash. The Auto Save Drafts Folders extension let you adjust this behavior (in Copies & Folders); just use the local drafts folder for auto-saved copies.
  • Handling multiple inboxes - View->Folders->Unified. This really ought to be the default…
  • Contact syncthere’s an extension for that. It’s flawless for reading your Google Contacts; I’d not use it to edit contacts though, just in case some information gets lost due to mismatches in available fields
  • Compact menu - Firefox’s main menu has recently been reworked, but Thunderbird’s has not; you can use this extension if, say, you use a widescreen laptop and want to recover vertical space real estate.

Hope that’s of some use to some folks!

Syndicated 2012-05-21 04:26:30 from Intuitionistically Uncertain » Technology

Org-mode syntax highlighting for GtkSourceView

If you’re an old-school Emacs user, and you are into GTD organizers, outliners, or would like a less messy way of generating LaTeX documents (from papers to presentations), you’re probably already familiar with Org-mode.

Org-mode is really quite tightly integrated with Emacs — so under normal circumstances there’s no reason to support it elsewhere. But at work we’ve recently had to collaboratively edit Org documents, and alas, Emacs’ Rudel no longer work reliably on newer Linux releases. We’re forced to use Gobby, which is a fine collaborative editor but is simply not Emacs. What is one to do?

I’ve thus started a GitHub project to create a language definition file for GtkSourceView (and, by extension, any editors on the GNOME desktop, including gedit and Gobby. Do check it out here — I’m adding support for language elements as I need them, and my schedule is rather busy these days, but feel free to file requests and/or enhancement patches (but if you do the latter, please include a statement licensing your contribution under the same MIT license you can see in the header of org.lang

Syndicated 2012-02-09 17:46:57 from Intuitionistically Uncertain » Technology

More cnucnu release monitoring goodness

I just spent a few minutes clearing up Fedora’s Upstream Release Monitoring todo list — more packages will now get bugs filed against them on Bugzilla when a new version comes out, including gnucash, links (3 minor versions behind) and, surprisingly, Xaw3d, which has been resurrected on freedesktop.org after years of inactivity — we’re still packaging the old unmaintained version.

Note to self — figure out how to integrate the Python tool used by URM, cnunu, to keep track of non-Fedora software. My 0install feeds could use some release monitoring love…

Syndicated 2012-01-31 18:43:52 from Intuitionistically Uncertain » Technology

If you have a laptop with Intel graphics and broken backlight control…

e.g. a Sony Vaio Y-series, where upon seeing the debugging data kernel developer Matthew Garrett (mjg) pronounced it “what an awful implementation — utterly broken”, there is hope yet.

Matthew has been working on native backlight control for a while, and for Intel hardware, there’s currently only one patch left to merge onto Linus’ kernel tree; it applies cleanly onto the most recent kernel release candidate (3.0-rc7).

Unfortunately, by default the ACPI subsystem will still be used if available, which is the sensible default. You do want to use the predefined backlight values whenever possible, not the raw values the graphics card let you set.

Ubuntu users have been resorting to Kamal Mostafa’s linux-kamal-mjgbacklight repository, which enables native backlight control, disable the ACPI video driver, and provide a patched GNOME Power Manager that can interface with the native backlight control.

The workaround I came up with is more lightweight — it just uses inotify-tools to monitor the brightness file, and apply an appropriate equivalent value to the native backlight control. Feel free to use this if you’re affected by a similar problem.

Syndicated 2011-07-14 07:50:23 from Intuitionistically Uncertain » Technology

Try Thunderbird 5.0 now — without hassle

There are cases when getting a specific software from one’s Linux distribution is not the optimal solution — and I’m saying this as a package maintainer myself. The main ones are:

  • the distribution package might be out of date
  • legal reasons prohibiting the software from being packaged (e.g. Skype, Flash, Adobe Reader)

Note that the first point is not exactly a criticism — after all, distributors tend to be wary of introducing breaking changes in a stable release. For software in the second category, upstream often provides binary packages, but again, using a tarball requires users to deal with dependency resolution themselves, and even when Debian or RPM packages are provided, the packaging is often sub-par (upstream developers can’t be expected to be well-versed in the subtleties of each distribution’s packaging).

Enter 0install. Now installing, e.g. Thunderbird 5.0, is a simple process:

yum install zeroinstall-injector
0alias thunderbird5 http://mojo.informatik.uni-erlangen.de/interfaces/2011/thunderbird.xml

or use “Add New Program” from the application menu and provide it with the URL for the Thunderbird feed. This currently lets you easily select between Thunderbird 5.0 beta 2 and 5.0 final (for both 32-bit and 64-bit builds) as well as the distribution’s packaging (on RPM-based and Debian-based distributions as well as Gentoo), and will pull in needed dependencies (please report any problem here).

You can browse http://mojo.informatik.uni-erlangen.de/interfaces/2010/ and http://mojo.informatik.uni-erlangen.de/interfaces/2011/ to see other available feeds that I maintain (and 0install’s site for even more). Of note: Eclipse JEE, Maven 2.2.1/3.0.3, Skype and Tomcat.

Syndicated 2011-06-29 11:04:14 from Intuitionistically Uncertain » Technology

The compat-wireless dance

At Fedora, our kernels tend to track upstream as much as possible, which sometimes makes for an amusing wireless experience. Here’s a tale, amusing in hindsight, of my three Sony computers, all using the ath9k module.

Firstly acquired is the 15″ Vaio EB I use as a desktop replacement. It works fine with stock drivers — at least, no known problem until today. We’ll get back to it later. Next, the 10.2″ Vaio W netbook. With this the wireless driver would need to be cycled — unload and reload — unless it’s kept active by, say, a continuous ping session.

Now, the EB did not use to work with the experimental compat-wireless drivers — basically the wireless code not yet merged into the Linux kernel; while the W absolutely requires these to avoid the ping keep-alive workaround.

Then comes the 13″ Vaio Y I got on a closing sale — at a nice discount price. Both the EB and the Y need to be on Fedora 15 because of graphics quirks (the former Radeon 5650, the latter Intel Arrandale), but that’s for another article. Everything seems to work fine, until I realized today, attempting to transfer a large-ish (> 100 MB) tarball from the Y to the EB, that the wireless on the Y keeps freezing up if I continuously transmit! It’s not a regression, or not a recent one, since older kernels do that too.

In goes compat-wireless to the rescue, and lo and behold, the transmission now works fine. Only then I find out that now the EB also acts up when it’s downloading at maximum speed. Sigh… funnily, now compat-wireless works fine on it, and fixes the problem.

I don’t even think I want to file bugs on this — different issues on different laptops — I’m just glad the latest wireless code works uniformly well now, and am just waiting for it to land in the mainline kernel.

Syndicated 2011-04-05 14:25:13 from Intuitionistically Uncertain » Technology

HOWTO: Unchain Yourself from Proprietary Formats

Today being Document Freedom Day, I’m taking stock of how unencumbered my digital lifestyle is — both on the consumption as well as on the production side. I’ll try and explore alternatives for each category. But before that, one must first explore why proprietary and patent-encumbered formats are bad, 

  1. Patents — if some entity holds patents that apply to a format, your ability to distribute your files might be compromised by the need to pay patent royalties. Even if the patent holder covenants not to exercise enforcement of the patents, they or the patents could end up being bought, at which point who knows what could happen. Even Microsoft got into trouble with Alcatel Lucent; the case was later thrown out of court but only after a headline-grabbing $1.52 billion award of damages was initially awarded. And Alcatel is not even a patent troll! Best protection is to use software licensed with a retroactive patent retaliation clause (e.g. Apache license, Eclipse Public License, GNU Public License v3) and whose copyright holders and distributors are in a defensive patent pool such as the Open Invention Network
  2. Format obsolescence – even NASA has had trouble reading precious sensor data from old punch cards and magnetic tapes generated by previous missions, because the documentation for the file formats have been lost!
  3. DRM — Digital Rights, or Restrictions, Management, depending on which side of the coin you’re looking at it from. It’s not impossible to create a DRM policy that is flexible enough to guarantee you your fair use rights you enjoyed with older analog technologies — the printed book, the audio CD — but it’s not in the interest of (most) publishers and distributors to do so. Unless forced by regulation or unless you vote with your wallets.
  4. Walled gardens — remember the pre-Internet days of AOL, CompuServe, etc.? We still have walled networks, they are just built on top of the Internet instead.

Office Documents

Reports, presentations, … you get the drift. I try and stick to LaTeX for the first two, if possible (generating read-only PDF for dissemination) and OpenDocument Format, authored on LibreOffice, if collaborating with a non-LaTeX-user. And for spreadsheets.

Why, you might ask? Well, LaTeX just typesets much more beautifully than other alternatives I’ve seen. It’s a solid, well-understood format, and have very few compatibility problems over the years. Compared to Microsoft Office formats — Word’s .DOC being the most notorious, with worms and newer versions not being able to render old files perfectly! Microsoft’s “Office OpenXML”, their new file format, only became a standard after a process as dubious as Japan’s sponsoring of landlocked countries to join the whaling commission to supplant its voting block. And the standard is not even implemented by Microsoft itself.


Most podcasts are published in MP3; some are available in the patent-free Ogg Vorbis (.ogg / .oga) format — sadly, mostly limited to free / libre / open source software (FLOSS). A rare few are available in MPEG 4 Audio / AAC (.m4a).

I try to subscribe to the Ogg feeds whenever possible. MP3 is patent-encumbered, and the last patent won’t expire until 2017; while users of open-source MP3 decoders have not been sued for infringement yet, the situation is legally uncertain enough that, if you look at your favorite large Linux distribution (be it Debian, Fedora, openSUSE or Ubuntu), none of them carry MP3 decoders, let alone encoders, in their main repositories. Even Microsoft has been hit by frivolous MP3 patent infringement lawsuits!

Consuming MP3 even when an Ogg feed exists for the same podcast would perpetuate the use of MP3 “because that’s what the customers want”. Buying a portable music player that cannot play any patent-free, open-standard compressed format (yes, I am talking about Apple’s iPod here) is even worse. It does not play Ogg Vorbis, it does not play FLAC; instead, apart from MP3 you get non-free formats that Apple is heavily involved with: .m4a, the DRM-locked variant .m4p, and Apple Lossless, which Apple invented for unfathomable reasons instead of using FLAC. It’s not even because they can then engineer DRM support; you can graft it on top of FLAC as well, if you want.

MP4 situation is similar to MP3, except that given that it’s a newer technology, the patents will take even longer to expire.


I try to buy electronic, rather than paper, books whenever possible. With a semi-nomadic lifestyle, buying more physical books just makes moving more costly! And there’s the environmental aspect as well. It’s bad enough that we need to clear forests to grow enough food — and eating excessive amounts of meat makes the matter worse because of the reduced energy efficiencies involved in adding another layer of intermediary between the sun and ourselves — it’s even worse when one unnecessarily gets documents in printed form. Now, used books are another matter altogether.

For eBooks, tech publishers like (in alphabetical order) No Starch PressO’Reilly and The Pragmatic Bookshelf gets the nod for providing DRM-free products, with errata updates, in the major formats (ePub, the eBook standard; Mobi, an older format supported because Amazon’s Kindle uses a DRM-encumbered version if it, .azw, and does not read ePub; and PDF, for faithfull reproduction of the original layout).

Outside of programming references, alas, most publishers are not as enlightened. I must confess to being a heavy Amazon Kindle user, despite its limitations — not being able to lend my books out without restraints for one, not being able to hand over ownership is another. But at least I get to read the books on all my devices, unlike Apple’s iBooks with its five devices per book limit. Kind of nice having Amazon backing up the purchased books in case I lose a device, too; they’re starting to do that for music as well, though only in the US. Hear that, Apple?


For many years, the only patent-unencumbered format available is Ogg Theora (which started its life as On2′s VP3 codec). On2 has since been bought by Google, and their latest VP8 codec becoming the basis of WebM, which is roughly equivalent in quality to MPEG4.

I try to get my videos from sites that allow videos to be downloaded (if the uploader allows for it) — e.g. blip.tv. and vimeo. Revvr, another service featuring this, sadly was a commercial flop and is no longer available. These sites allow you to download videos, dating back to the time when YouTube not only does not allow that, as they still does not, but also limit videos to lengths of 10 minutes! There are workarounds to downloading YouTube videos, but officially you’re not allowed to do that.

Social Networks

i.e. Twitter, Facebook, etc. I have switched to posting mainly to identi.ca, a Twitter alternative running software from Status.net. Unlike Twitter, it supports federated social networking — you can talk to people running independent Status.net installations, much as in instant messaging, users of XMPP networks (various Jabber networks, Google Talk, LiveJournal, Facebook) can communicate with each other). identi.ca lets you push your updates to Twitter as well (even retweets and favorites) and to Facebook, so I really only post directly to Twitter if replying to a Twitter-only user (or the topic is too mundane and I want to keep identi.ca’s SNR high).

Facebook alternatives are not as mature yet; see EFF Deeplinks’ post on this topic for more information.

Online file storage

Here’s a mea culpa – I’m a happy Dropbox user (thank you, Dropbox, for supporting Linux clients — at least on x864 architecture). This is the exception that proves the rule, however: apart from Dropbox, I try to stick to online file storage solutions that at least have open-source clients for communicating with the servers and accessing your data. e.g. Google Apps (including Google Docs) are accessible using googlecl, which uses the Google Data APIs; both are open source. If you move to a platform that is unsupported, you can port the software yourself.

With googlecl, if one is paranoid, one could encrypt all one’s files (with, say, GnuPG) before storing them on Google’s cloud. Hmm, that would be an interesting project to attempt…

Syndicated 2011-03-30 20:14:34 from Intuitionistically Uncertain » Technology

69 older entries...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!