Daniel Szmulewicz has an interesting post up on his blog about managing Emacs packages when you have multiple machines that you want to keep configured identically. He went through the usual cycle of solutions: First, he managed it by simply copying over his
init.d to each of the machines and then loading whatever packages he needed from ELPA or other sources. Then he put his
.emacs.d under version control but he found that objectionable because he was putting external code under version control. Next he wrote a bit of Elisp to load a list of packages, put it in his
init.d and put just that under version control.
That's where most of us would have stopped but he asked himself how he could also automate deleting packages. He found a very nice solution using
el-get that handles both adding and deleting packages according the one simple list in his
init.el. If you're trying to maintain the same Emacs configuration on more than one machine, you may find his solution useful. Definitely worth a look.