Subject: bug#59226: 29.0.50; unable to load package-vc.el if package-vc-selected-packages is non-nil

From: Philip Kaludercic <[email-masked]>
Date: Wed, 16 Nov 2022 07:47:22 +0000

Richard Kim <[email-masked]> writes:

> Thanks Philip.  I built scratch/package-vc-fixes branch, and verified
> that the problem reported by me is gone.

Splendid.

> I would like to ask a follow-up question.  I'm trying to use
> package-vc as a replacement for straight.el in my setup.
> I've been using straight.el within spacemacs for some time.  If you
> are interested, the details can be found at
> https://github.com/emacs18/spacemacs/tree/sm-straight

I am unfamiliar with both spacemacs and straight, so I'd be lost on my
own.  Could you point me to some specific example in the repository?

> The key thing I have not yet figured out is how to activate packages
> installed by package-vc when emacs starts up.
> Package activation is done by the latter part of package-vc--unpack-1
> function.  Would it be possible to split out
> activation as a separate function?

Package "activation" (in the sense of `package-activate', checking for
dependencies, adding the right directories to the load path, loading the
info manuals, ...) is still handled by package.el.  package-vc.el is
firmly based on package.el, but just provides an alternative to fetching
source code.  That is also why package-vc doesn't need to be loaded for
source packages to be usable -- which speeds up the initialisation.

The functionality of `package-vc--unpack-1' is exposed via
`package-vc-rebuild', but I don't think that that is what you need.

If you are having issues with the activation of source packages, then
that is a bug we have to understand and resolve.