I’ve been trying to up my use-package game recently and converted my hand rolled package check and installer to use-package. I usually prefer to use packages from melpa-stable so I pin the default package source used by use-package to melpa-stable and override it where necessary That’s working well in general and looks something like this:
(setq use-package-always-pin "melpa-stable")
(use-package js2-mode
:ensure t
:defer t
:custom
(progn (js-indent-level 2)
(js2-include-node-externs t)))
(use-package kotlin-mode
:ensure t
:pin melpa)So in other words, if I’m on a machine that doesn’t have js2-mode and kotlin-mode installed, use-package will install js2-mode from melpa-stable and kotlin-mode from melpa. So far, so good.
