dimitri/el-get

package-archive-priorities ignored when specifying :repo with type: elpa

Opened this issue · 0 comments

My goal is to use melpa stable by default for packages with :type elpa, and use melpa (non stable) for select packages.

The way I tried to do this is to set package-archive-priorities and specify :repo in the receipe of select packages:

(require 'package)
(setq package-archives
      '(("gnu" . "https://elpa.gnu.org/packages/")
	("melpa" . "https://melpa.org/packages/")
	("melpa-stable" . "https://stable.melpa.org/packages/"))
      package-archive-priorities
      '(("gnu" . 5)
	("melpa" . 0)
	("melpa-stable" . 10)))
(package-initialize)

(setq el-get-sources
      '(
       (:name magit :type elpa)
       (:name solarized-theme :type elpa
               :repo ("melpa" . "https://melpa.org/packages/"))))

(el-get 'sync)

Result:

  • magit is correctly installed with melpa-stable: OK
  • solarized-theme is installed with melpa-stable: KO: I would expect it to be installed with melpa archive

Analysis:

(let ((to-install (el-get-elpa-package-id pkg)))
(if have-deps-p
(package-download-transaction (list to-install))
(package-install to-install)))))

(el-get-elpa-package-id 'solarized-theme) returns version 1.3.1 from melpa-stable, ignoring the :repo I defined in the receipe.