Nov 14,
2015

I should not blindly trust packages auto generation

I use Emacs on a few different systems but mostly on a desktop at home, a Dell ultrabook on the go and another desktop at work. All systems have the same Debian stable version installed so I thought it should have been painless to maintain a uniform environment on the three installations.

That was put in question when I noticed the Emacs' mode line on the desktop at work was different than the laptop; diminish is an Emacs module that reduces the amount of space taken on the mode line by the active minor modes and it wasn't working on the desktop.

I was baffled when the different behavior of the diminish package persisted even after synchronizing the configurations on the two systems and reinstalling the package from the MELPA repository. I should have taken the clue instead of trying to find the reason of the inconsistency on the configuration files.

In fact, a quick inspection of the freshly installed package from MELPA revealed that the diminish-autoloads.el file was missing the provide statement:

(provide 'diminish-autoloads)

Even if both systems had Emacs 25.0.50 installed, the diminish package on the laptop was downloaded long time ago using Emacs stable, so I suppose this solves the mystery. Until now I stored only my Emacs configuration files in a Git repository and relied to a script to download the eventually missing package during Emacs' start-up, but I'm reconsidering that choice and thinking to put everything back under Git.

I guess I've learned that I should not blindly trust Emacs automatic generation of autoload files.

Now say that last one faster.