Projects
New Ticket     Wiki     Browse Source     Timeline     Roadmap     Bug Reports     Search

Ticket #12115 (closed defect: fixed)

Opened 18 months ago

Last modified 9 months ago

BUG: emacs-app can't see code installed by other elisp packages

Reported by: cmc@… Owned by: css@…
Priority: Normal Milestone: Port Bugs
Component: ports Version:
Keywords: Cc:
Port:

Description

The new emacs-app package installs itself in /Applications/MacPorts/Emacs.app, whereas previous Carbon Emacs installs (such as emacs-devel +carbon) split the Mac OS X application piece off from various support files. Emacs-app doesn't look at the /opt/local/share/emacs directory for other elisp code, so packages such as auctex do not work with emacs-app.

The simple fix appears to be to modify epaths.h at build time to include the /opt/local paths. Alternatively, I would be fine with going back to the way the Carbon Emacs.app was installed in previous Emacs packages.

(Note that it is also possible to modify your load-path in your .emacs file or your EMACSLOADPATH environment variable, either of which works as a temporary workaround. But packaged software should work with other packaged software, so one of the other solutions is needed for a real fix.)

Attachments

site-start.el (69 bytes) - added by css@… 9 months ago.
site startup will append the prefix to the load path
patch-Portfile.diff (0.8 KB) - added by css@… 9 months ago.
Copy the site-start into the application bundle, then patch it to point toward the ${prefix}

Change History

Changed 16 months ago by css@…

  • owner changed from macports-dev@… to css@…
  • status changed from new to assigned
  • summary changed from emacs-app can't see code installed by other elisp packages to BUG: emacs-app can't see code installed by other elisp packages

The current build simply wraps the upstream author's custom script. Ideally that script shouldn't be needed, but that's not the case right now. Given those circumstances, anything that modifies the build might be problematic. The packaged application should perhaps default to load other lisp packages from ${prefix}. I'll check into appending it to the autoload path.

Changed 16 months ago by nox@…

  • priority changed from Expected to Normal
  • version 1.4.40 deleted
  • milestone set to Port Bugs

Changed 14 months ago by css@…

The latest emacs-app supports a shared-lisp directory. Once I get it built and submitted (see #12718), check if that solves the issue.

Changed 14 months ago by css@…

The 0.9rc2 shared-lisp support makes quite a mess, as it scatters files outside the destroot during the build phase.

Changed 13 months ago by css@…

The emacs-app sitelisp could just contain:

(setq load-path (cons "/opt/local/share/emacs/site-lisp" load-path))

Changed 9 months ago by css@…

site startup will append the prefix to the load path

Changed 9 months ago by css@…

Copy the site-start into the application bundle, then patch it to point toward the ${prefix}

Changed 9 months ago by css@…

  • status changed from assigned to closed
  • resolution set to fixed

Committed to r34411

Note: See TracTickets for help on using tickets.