Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 May 2003 11:43:44 +0300
From:      Ruslan Ermilov <ru@freebsd.org>
To:        Joshua Goodall <joshua@roughtrade.net>
Cc:        freebsd-current@freebsd.org
Subject:   Re: Updating -CURRENT, what about outdated files?
Message-ID:  <20030525084344.GA26791@sunbay.com>
In-Reply-To: <20030525074823.GK91207@roughtrade.net>
References:  <20030523203517.GA93787@attbi.com> <20030524034419.GA63643@sunbay.com> <20030524084432.GA509@roughtrade.net> <20030524174817.GA42456@sunbay.com> <20030525074823.GK91207@roughtrade.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--+HP7ph2BbKc20aGI
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, May 25, 2003 at 05:48:23PM +1000, Joshua Goodall wrote:
> On Sat, May 24, 2003 at 08:48:17PM +0300, Ruslan Ermilov wrote:
> > On Sat, May 24, 2003 at 06:44:32PM +1000, Joshua Goodall wrote:
> > > On Sat, May 24, 2003 at 06:44:19AM +0300, Ruslan Ermilov wrote:
> > > > I do this a lot too.  And I use "find . -mtime +1 ! -type d" to
> > > > seek for the stale stuff.  This of course requires that you're
> > > > not running with ``INSTALL=3D"install -C"'' in /etc/make.conf.
> > >=20
> > > Is there any part of installworld that uses tools other than
> > > rm, mtree, install and ln?
> > >=20
> > Sure, a lot of.  We use all tools that are copied into the
> > ${INSTALLTMP} as the first step of installworld.
>=20
> I must correct myself.
>=20
> I should have written "Is there any part of installworld where
> files/dirs/links are installed using tools other than ..."
>=20
> Actually the total list seems really short to me;
>=20
> [ awk cat chflags chmod chown date echo egrep find grep
> ln make mkdir mtree mv pwd_mkdb rm sed sh sysctl
> test true uname wc zic
>=20
Bear in mind the conditionals of make(1) and sh(1)?

> I can think of three methods;
>=20
> i)   a simple wrapper that attempts to parse the subset of
>      invocations used by installworld, and maintain a log,
> ii)  an LD_PRELOAD-based wrapper, taking advantage of recent
>      dynamic linkage changes,
> iii) building installation editions of those tools, so that they=20
>      maintain a log of activity.
>=20
> Obviously not all are attractive.
>=20
> > Some files are only installed if the destination does not yet
> > exist, and there you are going to have a problem with this
> > approarch.
>=20
> Either way, the file exists.  I wasn't looking for anything more
> sophisticated than that in a first pass at this.
>=20
But you don't often know if installworld attemps to install it
or not, if it wasn't here:

src/sys/boot/i386/loader/Makefile:

beforeinstall:
=2E..
=2Eif !exists(${DESTDIR}/boot/loader.rc)
	${INSTALL} -C -o ${BINOWN} -g ${BINGRP} -m 444 \
		${.CURDIR}/../../forth/loader.rc ${DESTDIR}/boot
=2Eendif

> Other than the general case of using install -C, can you
> point out any specific examples?  I thought that was the point
> of mergemaster; to manage elements of the distribution where
> simply overwriting would be inappropriate.
>=20
Nope, mergemaster(8) deals with updating of /etc only, unless
I'm horribly mistaken (I don't use it personally, but pretty
much do what it does manually).


Cheers,
--=20
Ruslan Ermilov		Sysadmin and DBA,
ru@sunbay.com		Sunbay Software AG,
ru@FreeBSD.org		FreeBSD committer,
+380.652.512.251	Simferopol, Ukraine

http://www.FreeBSD.org	The Power To Serve
http://www.oracle.com	Enabling The Information Age

--+HP7ph2BbKc20aGI
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (FreeBSD)

iD8DBQE+0IJAUkv4P6juNwoRAkOpAJ4xofx5b7T2dq6yp/12Q/X0fViEhQCcDS3x
g7PJor9YaOm1pDzzAjlX/Cs=
=3Egf
-----END PGP SIGNATURE-----

--+HP7ph2BbKc20aGI--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030525084344.GA26791>