|
From: | David Caldwell |
Subject: | Re: Mac OS X GNU Emacs Installer (make-package) |
Date: | Sat, 30 Nov 2002 15:50:35 -0800 |
On 11/30/02 3:19 PM -0800 Steven Tamm wrote:
On Saturday, November 30, 2002, at 02:48 PM, David Caldwell wrote:On 11/30/02 2:23 PM -0800 Steven Tamm wrote: I have some patches for make-package as well. Should I send them to the list?Yes, please.
Ok. I'll do so shortly.
The second one is more controversial, I think. I made a little shell wrapper that launches the Emacs.app so that typing plain "emacs" in the shell doesn't segfault. Since the user should be free to move his /Applications/Emacs.app around as he sees fit, I can't call that wrapper. So I made a duplicate app wrapper in libexec. I hard linked it to the emacs exe in /Applications/Emacs.app so it doesn't take up any more room in the disk image, nor on the system. It has complete transparency to the user, I think.This is the solution that Andrew proposes. /usr/local/bin/emacs would be a shell script that calls /usr/local/bin/emacs-21.3.50 -nw $*. I don't like that solution very much. This is a patch I placed on the list earlier; it causes the executable to determine if it is inside an application bundle. If it is not, it will cause it to inhibit_windowing_system. I placed the call to this right after the call to init_mac_osx_environment inside emacs.c:main
[..]That was my initial idea. But in the end I like the way the shell script works better. Typing plain "emacs" gives you a new window, while "emacs -nw" gives you the console. It works just like under X Windows. Otherwise there is no way to get a nice window from the command line, except by writing your own shell wrapper. To me that is the only reason to choose the shell script road over the patch you propose (Although I think patch should be there as well, since emacs should never segfault).
BTW, I think making Contents/MacOS/Emacs be a hard link to emacs-21.3.50 is a bad idea. The Application may (and in my case usually will) live on a different volume than the /usr/local tree. I'll keep the symlink option there for the Application, but remove the bad behavior.
The question is, does the installer (or pax) automatically copy the file if it's getting unloaded accross filesystems? If so then there's no problem with a hard link.
-David
[Prev in Thread] | Current Thread | [Next in Thread] |