Hi, this is a complete (and clean) rewrite of my package [vc-use-package], in order to properly integrate it with the Emacs core. Basically, it adds a new :vc keyword so one can leverage the 'package-vc-install*' function(s) from within a use-package declaration. For example, specifying (use-package foo :vc (:url "bar")) would expand to (more or less, concentrating on the relevant part) (unless (package-installed-p 'foo) (package-vc-install '(foo :url "bar") nil)) This makes installing packages from remote sources a breeze. There is also support, via 'package-vc-install-from-checkout', for installing local packages by additionally specifying a load path: (use-package foo :vc bar ; optional name, use t or nil for foo :load-path "/path") ⇔ (progn (eval-and-compile (add-to-list 'load-path <>)) (unless (package-installed-p 'bar) (package-vc-install-from-checkout <> "bar")) …) I don't know what the policy here is regarding sending multiple patches in the same email, but since the second one is just adding documentation, I didn't deem it "worth" a second mail. Sorry (and do let me know!) if this is disruptive to anyone. Best, Tony [vc-use-package]: https://github.com/slotThe/vc-use-package