Emacs пакет-установить, вставив дополнительную черту?

Я пытаюсь автоматически установить все мои зависимости для новой установки Emacs. Когда я помещаю фрагмент ниже в мой .emacs, я продолжаю получать:Package `smex-' is unavailable.

Мне было интересно, если это ожидаемый функционал? Стартовый набор Emacs сделал нечто подобное, что я помню, работал раньше. Использование Emacs 24.3.

(when (not package-archive-contents)
  (package-refresh-contents))

(defvar my-packages
  '(smex))

(dolist (p my-packages)
  (let ((s (symbol-name p)))
    (when (not (package-installed-p s))
      (package-install s))))

РЕДАКТИРОВАТЬ

Очевидно это было вызвано ошибкой или чем-то. Теперь я смог заставить его работать в последней версии Emacs 24.3.1. Видимо ониМы также изменили его, чтобы имена пакетов были символами.

(package-initialize)

(when (not package-archive-contents)
  (package-refresh-contents))

(defvar my-packages
  '(list of packages))

(dolist (p my-packages)
  (when (not (package-installed-p p))
    (package-install p)))

Ответы на вопрос(2)

Ваш ответ на вопрос