Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 13 Apr 2006 11:56:23 -0700
From:      Gordon Tetlow <gordon@tetlows.org>
To:        "Marc G. Fournier" <scrappy@hub.org>
Cc:        arch@freebsd.org, Doug Barton <dougb@freebsd.org>, Julian Elischer <julian@elischer.org>
Subject:   Re: Mergemaster enhancement
Message-ID:  <20060413185623.GM4273@spiff.melthusia.org>
In-Reply-To: <20060413150544.N1096@ganymede.hub.org>
References:  <443DFC58.6060502@tetlows.org> <443E9167.6090309@elischer.org> <20060413150544.N1096@ganymede.hub.org>

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

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

On Thu, Apr 13, 2006 at 03:07:16PM -0300, Marc G. Fournier wrote:
> On Thu, 13 Apr 2006, Julian Elischer wrote:
>=20
> >Gordon Tetlow wrote:
> >
> >>I've thrown together a quick mergemaster enhancement that will=20
> >>automagically upgrade files that have changed in the /usr/src/etc=20
> >>distribution but the user hasn't changed. Great applications are for wh=
en=20
> >>you trust that we aren't going to break everything and only don't want=
=20
> >>mergemaster to squash files that you have customized.
> >>
> >>Patch location:=20
> >>http://people.freebsd.org/~gordon/patches/mergemaster.mtree.diff
> >>
> >>How it works:
> >>Through clever use of mtree, I build an mtree description of everything=
=20
> >>that make distribution installs (only size and md5) from the temproot.=
=20
> >>When the user completes a mergemaster run, the mtree description file=
=20
> >>gets installed into /var/db for safe-keeping.
> >>
> >>When the user then decides to do a subsequent upgrade (with the -U flag=
),=20
> >>the existing mtree description from /var/db is called into service=20
> >>looking for files that are different in DESTDIR. This is stashed away=
=20
> >>until a file that would normally end up prompting you to look at change=
s=20
> >>is encountered. Since there are no user modified changes, the new file =
is=20
> >>installed without bothering the user.
> >>
> >>Let me know what you think.
> >
> >
> >I really like  it
> >especially as it is  optional
>=20
> I don't know if there is any way of doing this "automatically", but the=
=20
> one beef I have with mergemaster is it prompting me whether I want to=20
> install the new one if all that has changed is the $Id tag ... I don't=20
> mind looking at the diff of the ones that there are actual changes to, or=
=20
> doing a -U to 'skip' those, but would be nice if the ones that *really*=
=20
> haven't changed were done automatically ...

Add the following in /etc/mergemaster.rc:

DIFF_OPTIONS=3D-I '$FreeBSD:'

That should do it (I haven't tried it).

-gordon

--Wtrm9ATX0sn6fFKv
Content-Type: application/pgp-signature
Content-Disposition: inline

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

iD8DBQFEPp7XRu2t9DV9ZfsRApYSAKDUIXUDQ8o2U1WpUlbslhIykevP0QCeJKaV
aYzdOJNn+MSYhkn9buTK2gU=
=hH/j
-----END PGP SIGNATURE-----

--Wtrm9ATX0sn6fFKv--



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