Subject: Re: "make install" owerwrites files without asking
To: Pavel Cahyna <pavel.cahyna@st.mff.cuni.cz>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-pkg
Date: 06/30/2005 09:20:48
On Thu, 30 Jun 2005, Pavel Cahyna wrote:

> > > It seems that the other idea requires providing shell wrappers for
> > > install, cp, chown/chmod, pax and other utilities, am I right? This seems
> > > to be a lot of work.
> >
> > Yes, I do agree it is a lot of work. Nevertheless, they must be wrapped in
> > one way or another if we are to make them do staged installs too -- in the
> > case that many don't allow changing destination directory after the build
> > is completed just for the install step.
>
> Are there really many of them? I don't believe Debian or OpenBSD does
> this. I think they rather patch the packages to allow setting the
> destination directory.

If you have to patch it to do allow setting the destination directory,
then there should be little difference in patching it to use the INSTALL_*
scripts at the same time.

(I don't know how many there are.)

> > That reminds me. Does fakeroot help at all with making a package that
> > properly has ownership, groups, permissions for extraction on another box?
>
> It seem that it can, if the pkg_create command runs under the same
> fakeroot environment. As an example, I tried creating a tar file with some
> setuid program as a regular user:
>
> $ fakeroot
> bash-2.05a# mkdir fakeroot
> bash-2.05a# chown root:root fakeroot
> bash-2.05a# cd fakeroot
> bash-2.05a# touch login
> bash-2.05a# chown root:root login
> bash-2.05a# chmod 4555 login
> bash-2.05a# ls -l login
> -r-sr-xr-x    1 root     root            0 Jun 30 18:05 login

I will have to try this myself. How did the chown work?

Please run "id" here.

> bash-2.05a# cd ..
> bash-2.05a# tar cf - fakeroot | tar tvf -
> drwxr-xr-x root/root         0 2005-06-30 18:05:11 fakeroot/
> -r-sr-xr-x root/root         0 2005-06-30 18:05:11 fakeroot/login

 Jeremy C. Reed

 	  	 	 technical support & remote administration
	  	 	 http://www.pugetsoundtechnology.com/