Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Emacs infrastructure tracking issue #66303

Open
adisbladis opened this issue Aug 7, 2019 · 2 comments

Comments

@adisbladis
Copy link
Member

commented Aug 7, 2019

I'm making an effort to clean up our Emacs packaging and use autogenerated packages whenever possible.
This is an incomplete list of things I want to achieve:

@tadfisher

This comment has been minimized.

Copy link
Contributor

commented Aug 12, 2019

Here's a weird one for you: I added org-jira to my config using emacsWithPackages, including org (which should pull from the Org repo). It is byte-compiled using melpaBuild, as are all packages in melpa-packages.nix.

Unfortunately, at runtime, org-jira breaks, because it's byte-compiled against the version of Org that is shipped with Emacs, and not the one I am bundling in the generated site-lisp. This is the issue showing the error, and the resolution (delete .elc files so it is recompiled when loaded): ahungry/org-jira#163

So, to work around this, I override org-jira and explicitly add org to packageRequires in order to get it to load a recent Org and not the builtin version.

My questions, then, are:

  1. Should these packages be declaring org in their Package-Requires? It is built-in, after all, but I suspect the Emacs packaging infrastructure assumes byte-compilation at runtime, and not the per-package byte-compilation stage performed by Nix.
  2. Do we need to manually add builtin libraries to packageRequires in case they are also published to an ELPA repo, in order to avoid errors as a result of byte-compilation?
  3. Could we implicitly add certain builtin libraries from the resolved package set to all packages, in case they are loaded during byte-compilation?
  4. Is what we are doing correct at all? Should we defer byte-compilation to the emacsWithPackages builder itself, so it has a full site-lisp to resolve references during compilation?
@oxij

This comment has been minimized.

Copy link
Contributor

commented Aug 12, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.