У меня есть это в моем init.el
:
(require 'package)
(package-initialize)
(setq package-enable-at-startup nil)
(setq package-archives '(("ELPA" . "http://tromey.com/elpa/")
("gnu" . "http://elpa.gnu.org/packages/")
("melpa" . "https://melpa.org/packages/")
("org" . "https://orgmode.org/elpa/")))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;; Bootstrapping use-package
(unless (package-installed-p 'use-package)
(package-refresh-contents)
(package-install 'use-package))
(eval-when-compile (require 'use-package))
(use-package use-package
:config
(setq use-package-always-ensure t))
Насколько я понимаю, это должно быть хорошо, чтобы установить все пакеты, перечисленные в
'(package-selected-packages
(quote
(org org-plus-contrib org-ref techela tuareg haskell-mode gnuplot gnuplot-mode helm-ispell ac-ispell paredit ox-tufte auctex json org-grep iedit wgrep helm geiser slime-company company-jedi zzz-to-char rainbow-delimiters avy ivy projectile twittering-mode zerodark-theme pretty-mode flycheck-clang-analyzer flycheck-irony flycheck yasnippet company-c-headers company-shell company-irony irony irony-mode company-lua mark-multiple expand-region popup-kill-ring dmenu ido-vertical-mode ido-vertical ox-html5slide centered-window-mode htmlize ox-twbs diminish erc-hl-nicks symon rainbow-mode switch-window dashboard smex company sudo-edit emms magit org-bullets hungry-delete beacon linum-relative spaceline fancy-battery exwm use-package)))
, которыевнутри моего custom-set-variables
.Однако, когда я делаю первый, чистый (без существующего каталога elpa/
) запуск Emacs, читающего этот init.el
, не все пакеты получены и установлены.Но тогда я могу сделать package-install-selected-packages
, и Emacs сообщает, что в package-selected-packages
ничего нет.Просмотр переменной подтверждает это.Что может быть не так?Старая «рабочая» версия этого (с существующим каталогом elpa/
) странным образом реагирует на package-install-selected-packages
, желая установить, например, auctex
и некоторые девять других пакетов, которые код пакета выше, по-видимому, не видит или не рассматривает.Я озадачен тем, почему package-selected-packages
кажется мне таким странным.Я предполагаю, что мой старый .emacs.d
с существующим elpa/
имеет информацию об установке, которая "обходит" эту неудачную ситуацию package-selected-packages
.