Re: emacs installs a lot of 777 directories



On Thu, 19 Mar 2009 12:26:06 +0200, Nikos Ntarmos <ntarmos@xxxxxxxxx> wrote:
On Sun, Mar 15, 2009 at 09:30:44PM +0200, Giorgos Keramidas wrote:
On Fri, 6 Mar 2009 23:56:10 +0100 (CET), freebsd001@xxxxxxxxx wrote:
Dear list members,

I am not only wondering about the permissions of several emacs-related
directories as it has recently been mentioned in this thread, but also
about the ownership of several emacs-related files.

This seems to be a local installation glitch.

find . -not -user root | head -n 3
./emacs/22.3/etc
./emacs/22.3/etc/GNUS-NEWS
./emacs/22.3/etc/fr-drdref.ps

find . -not -user root | wc -l
2643

That's probably due to the fact that emacs uses something along the
lines of 'tar -chf - ... | tar -xvf - ...' to copy the files, followed
(in some cases) by a chown to $LOGNAME (or if that is not set, to
$USERNAME). If you just 'su', LOGNAME remains set to what it was
before (i.e. nutzer), while 'su -' will clear that out.

Yep, that's exactly what the Emacs build glue does.

One of the directories mentioned in the permission listings of the
thread includes `leim/'. The source of `emacs/leim/Makefile.in'
installs files with tar and chown:

240 tar -chf - quail/* ja-dic \
241 | (cd ${INSTALLDIR}; umask 0; tar -xvf - && cat > /dev/null) ;\
...
264 find ${INSTALLDIR} -exec chown $${installuser} '{}' ';'

There are probably better ways to install a configurable list of files,
i.e. by using a `manifest' of some sort and piping the list through
xargs to ${INSTALLDIR} and ${INSTALLDATA} macros. This would require
extensive changes to the vendor source though. It may be worth the
effort if someone is interested to hack Emacs sources, so anyone
interested in this sort of change to the GNU sources of Emacs should try
taking this up with the `emacs-devel' mailing list. That's the right
place to discuss potential improvements to Emacs sources, so that all
the other platforms where Emacs works can benefit too :-)

Having said that, fixing the makefiles of Emacs won't really solve the
potential problems of *all* ports when plain `su' is used to install
ports. So while it it a good idea for someone who wants to start
hacking Emacs code, the general rule of "install only with `su -'" still
applies for every other port in our tree.

Attachment: pgpo2gSFJ01oo.pgp
Description: PGP signature



Relevant Pages

  • Re: Number of downloads
    ... The bloat situation is not quite as bad as it may appear. ... initial setup script it asks if you want a full install (meaning ... But even that bloat is due to the many large binaries. ... want even the binaries from emacs, perl, python, vi, etc. it gets MUCH ...
    (comp.os.minix)
  • Re: LISP and Object Oriented Databases
    ... just use asdf (without asdf-install), you have to manually install the ... Noobs are noobs, but the best noobs want to stop being noobs someday. ... mistake was in trying to use Emacs and Slime when there were perfectly ...
    (comp.lang.lisp)
  • Re: LISP and Object Oriented Databases
    ... just use asdf (without asdf-install), you have to manually install the ... Noobs are noobs, but the best noobs want to stop being noobs someday. ... mistake was in trying to use Emacs and Slime when there were perfectly ...
    (comp.lang.lisp)
  • Re: Text editors
    ... Mr. Pinco should install "pico" of Pine fame. ... "gedit" is ok as a first editor. ... Learning Emacs and Xemacs is a project. ... vim is very cool and if it existed way back when, ...
    (Fedora)
  • Re: easy cyrillic with latex and emacs on unix
    ... get cyrillic letters on my dvi file, but in my emacs I have rectangles ... XEmacs are not useful for your needs, unless you install it; ... This package includes the libraries you need to run the Emacs editor, ... Emacs-X11 includes the Emacs text editor program for use with the X ...
    (comp.text.tex)