Emacsを沢山のOS・マシン上で動かすため、パッケージ管理について良い方法を探しています。

Emacsのバージョンは現在の最新24.4です。どのようなマシンでもこのバージョンなため、最新版以外で動くことを考慮しなくて良いです。

欲しい回答は、以下の好ましい方法を可能な限り実現出来ている方法です。

  • 設定ファイルとEmacsのパッケージのみで完結する(OSにコマンド等を入れる必要がない)
  • 複数のOS(Windows含む)で動く
  • パッケージ自動インストールが可能
  • (上に繋げて)Gitプロトコル等を使い、リポジトリ以外の所からパッケージを取得出来る(つまり、いわゆる野良パッケージを自動でインストール出来る)
  • 設定を簡単に書ける

勿論、以上の好ましい手法以外のメリットがある方法もあれば嬉しいですし、全てを満たす必要はありません。

試行錯誤としては、Package.el+自作の関数群やQuelpa、Caskを試しました。ですが、どれも条件の全ては満たさなかったと考えています。

現在はPackage.elに以下のようなコマンドを実装して、パッケージをインストールする際に使っています。

(defvar my/favorite-packages
  '(package names here))
(defun  set-pac ()
  "my package install command"
  (interactive)
  (package-refresh-contents)
  (dolist (package my/favorite-packages)
    (when (not (package-installed-p package))
    (package-install package))))

何か他にももっと条件を満たす、良い方法が無いでしょうか?