Re: Proposal to mergemaster

2001-03-14 Thread Martin Blapp


Hmm, just some thoughts here:

I modified mergemaster so he add's to every file he touches or
installs this md5 checksum. When mergemaster reads a file and
compares it, it extracts the md5 checksum form the file (if it
exists) and looks if the file has been changed or not. If a new
file get's installed, the md5 checksum of that file is written.

For the first time you update you have the same way to go as usual.
but the second time, you will be only asked for the files which
have been modified. Even if 90% of the config files have new
$ID's and are a lot different.

If it is possible to add these checksums also in sysinstall when
extracting the first time you install, nothing has to be done
with commit scripts and also the first time you run mergemaster,
you can run it a lot more faster than now.

Martin

Martin Blapp, [EMAIL PROTECTED]

Improware AG, UNIX solution and service provider
Zurlindenstrasse 29, 4133 Pratteln, Switzerland
Phone: +41 79 370 26 05, Fax: +41 61 826 93 01


On Tue, 13 Mar 2001, Jordan Hubbard wrote:

 Hmmm, this is nice!  I've wanted this option for a long time. :)
 
 - Jordan
 


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-14 Thread Jordan Hubbard

From: Martin Blapp [EMAIL PROTECTED]
Subject: Re: Proposal to mergemaster 
Date: Wed, 14 Mar 2001 09:51:28 +0100 (CET)

 If it is possible to add these checksums also in sysinstall when
 extracting the first time you install, nothing has to be done
 with commit scripts and also the first time you run mergemaster,
 you can run it a lot more faster than now.

Can you be more specific?  Some diffs would certainly be easier
to grasp the meaning of. :)

- Jordan

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-14 Thread Martin Blapp


Hi Jordan,

  If it is possible to add these checksums also in sysinstall when
  extracting the first time you install, nothing has to be done
  with commit scripts and also the first time you run mergemaster,
  you can run it a lot more faster than now.

 Can you be more specific?  Some diffs would certainly be easier
 to grasp the meaning of. :)

Yes, I mean when we extract and install all /etc files, is it possible
to add then then md5 checksum to all installed config files into the
cvs header ? (With grep -v "$FreeBSD:" of course).

Martin

Martin Blapp, [EMAIL PROTECTED]

Improware AG, UNIX solution and service provider
Zurlindenstrasse 29, 4133 Pratteln, Switzerland
Phone: +41 79 370 26 05, Fax: +41 61 826 93 01



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-14 Thread Jordan Hubbard

 Yes, I mean when we extract and install all /etc files, is it possible
 to add then then md5 checksum to all installed config files into the
 cvs header ? (With grep -v "$FreeBSD:" of course).

Oh.  No, not easily.

- Jordan

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-14 Thread Matthew Thyer

Brian Somers wrote:
 3.  Have a cvs-aware option.
 
 If the installed and new version numbers differ, mergemaster does a
 cvs diff -u -rINSTALLEDVERSION newversion | patch INSTALLEDFILE.  If
 this works, everyone's happy.  If not, it forces you to modify the
 new file 'till there are no   bits in it.
 
Yes yes yes.

Many people using mergemaster have the Repo on hand at $CVSROOT
so this should be an option if not the default (when $CVSROOT
is defined).

For those who dont I suppose a directory could keep the unmodified
versions of the currently installed files that mergemaster updates.

Or maybe the versions could be fetched from the web (from cvsweb ?)

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-14 Thread Johan Karlsson

At Tue, 13 Mar 2001 16:53:46 +0100, Martin Blapp wrote:
 
 Hi,
 
  I have made something like this and submitted a PR
  http://www.freebsd.org/cgi/query-pr.cgi?pr=25771
 
 Yep, something like this I'd like to do, but with md5 checksums,
 so we do not have to say 'yes' to each file we update.

I remember some discussion about something similar.
The proposal back then was to use a text-file with each 
file to just install on one line in the file.

And also to have a text-file for file which should never be
updated.


However, I belive this was turned down since this

if [ -r "${MM_PRE_COMPARE_SCRIPT}" ]; then
  . "${MM_PRE_COMPARE_SCRIPT}"
fi

hook in mergemaster can be used to do that.
Using this hook the admin will have to know what he is doing :-)

/Johan K



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-13 Thread Julian Elischer

Martin Blapp wrote:
 
 Hi,
 
 After 100erts of mergemaster sessions, I'm looking for a way to improve
 mergemaster.
 
 1st thing, mergemaster displays per default all in changed files. That's
 ok for the first time, but if you maintain many hosts, this is annoying a
 lot.
 
 There should be an options to display all changed files anyway, so you
 can watch what has changed. (but off by default)
 
 So I have ideas to improve merge-master:
 
 1. Add md5 checksum to the the file-header:
 ---
 
 Add an md5 checksum in the header of the File, maybe in $FreeBSD$ when
 the file get's comitted. (The $FreeBSD$ line should be sed'd/grepp'd out
 to md5 the raw file without checksum.)
 
 grep -v "$FreeBSD:" defaults/rc.conf | md5
 
 Example:
 
 # $FreeBSD: src/etc/defaults/rc.conf,v 1.53.2.15 2001/01/28
 20:57:35 jdp Exp md5="1fff7b9d6f6daa0ea9635873bfd0b7cd" $
 
 Then mergemaster can do a md5 over the config file and look
 if the file has changed. If so, you get asked to merge or
 install a newer version. If the md5 checksum is the same,
 the config file get's updated without asking the user.
 
 2. Have a special database with md5 checksums
 -
 
 The advantage here is that we can use this for binarys also, and
 this allows us to have binary updates for, let's say, security
 fixes. For old unsupported releases that's a very good thing.
 
 The database stores all md5 checksums for every version of a configfile
 we had (for this branch so it dosn't get to big ?)
 
 The database could also be very useful for later usage in the ports-
 tree (handle make update)





If you didn't change a file and it was at 1.45
then if the new one is at 1.55
you should just install it. Since you didn't touch it at 1.45 you will probably
not want to touch it at 1.55 either.

 
 Other ideas are welcome
 Martin
 
 Martin Blapp, [EMAIL PROTECTED]
 
 Improware AG, UNIX solution and service provider
 Zurlindenstrasse 29, 4133 Pratteln, Switzerland
 Phone: +41 79 370 26 05, Fax: +41 61 826 93 01
 
 
 To Unsubscribe: send mail to [EMAIL PROTECTED]
 with "unsubscribe freebsd-current" in the body of the message

-- 
  __--_|\  Julian Elischer
 /   \ [EMAIL PROTECTED]
(   OZ) World tour 2000-2001
--- X_.---._/  
v

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-13 Thread Martin Blapp


Hi,

 If you didn't change a file and it was at 1.45
 then if the new one is at 1.55
 you should just install it. Since you didn't touch it at 1.45 you will probably
 not want to touch it at 1.55 either.

yes, of course. but I don't see your point. Am I missing something ?

How can you see it hasn't been changed ? Version numbers do not tell
anything, an md5 checksum will prove 100% that a files has been modified
or not.

Martin


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-13 Thread Maxim Sobolev

Martin Blapp wrote:

 Hi,

  If you didn't change a file and it was at 1.45
  then if the new one is at 1.55
  you should just install it. Since you didn't touch it at 1.45 you will probably
  not want to touch it at 1.55 either.

 yes, of course. but I don't see your point. Am I missing something ?

 How can you see it hasn't been changed ? Version numbers do not tell
 anything, an md5 checksum will prove 100% that a files has been modified
 or not.

md5 sound like an overkill to me. Configuration files are text files, so diff(1) is
more appropriate here.

-Maxim


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-13 Thread Maxim Sobolev

Maxim Sobolev wrote:

 Martin Blapp wrote:

  Hi,
 
   If you didn't change a file and it was at 1.45
   then if the new one is at 1.55
   you should just install it. Since you didn't touch it at 1.45 you will probably
   not want to touch it at 1.55 either.
 
  yes, of course. but I don't see your point. Am I missing something ?
 
  How can you see it hasn't been changed ? Version numbers do not tell
  anything, an md5 checksum will prove 100% that a files has been modified
  or not.

 md5 sound like an overkill to me. Configuration files are text files, so diff(1) is
 more appropriate here.

Please ignore my sentence. I missed point of the discussion. Sorry.

-Maxim


To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-13 Thread Peter Jeremy

On 2001-Mar-13 09:09:21 -0800, Julian Elischer [EMAIL PROTECTED] wrote:
If you didn't change a file and it was at 1.45 then if the new one is
at 1.55 you should just install it. Since you didn't touch it at 1.45
you will probably not want to touch it at 1.55 either.

But you might still need to know there are changes (and see what the
changes are).  Recent examples are the changed defaults for sendmail,
inetd and lpd in /etc/defaults/rc.conf.  If you are relying on any
of these daemons, you'll need to fix your /etc/rc.conf.

I think this mostly affects /etc/defaults/*, but there may be other
files with similar behaviour.

Peter

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-13 Thread Jordan Hubbard

Hmmm, this is nice!  I've wanted this option for a long time. :)

- Jordan

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



RE: Proposal to mergemaster

2001-03-13 Thread Daniel O'Connor


On 13-Mar-01 Martin Blapp wrote:
  1. Add md5 checksum to the the file-header:
  ---
  
  Add an md5 checksum in the header of the File, maybe in $FreeBSD$ when
  the file get's comitted. (The $FreeBSD$ line should be sed'd/grepp'd out
  to md5 the raw file without checksum.)
  
  grep -v "$FreeBSD:" defaults/rc.conf | md5
  
  Example: 
  
 # $FreeBSD: src/etc/defaults/rc.conf,v 1.53.2.15 2001/01/28
  20:57:35 jdp Exp md5="1fff7b9d6f6daa0ea9635873bfd0b7cd" $
  
  Then mergemaster can do a md5 over the config file and look
  if the file has changed. If so, you get asked to merge or
  install a newer version. If the md5 checksum is the same,
  the config file get's updated without asking the user.

This is computationally difficult to acheive :)

(Because the md5 checksum would be part of the file so the md5 checksum would have
to take account of itself)

  The database stores all md5 checksums for every version of a configfile
  we had (for this branch so it dosn't get to big ?)
  
  The database could also be very useful for later usage in the ports-
  tree (handle make update)

I think you could generate this file at installworld time fairly trivially.

The ports code does this for each file which is installed and its not too onerous.

This would solve my previous point also :)

---
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message



Re: Proposal to mergemaster

2001-03-13 Thread Brian Somers

 
 Hi,
 
 After 100erts of mergemaster sessions, I'm looking for a way to improve
 mergemaster.
 
 1st thing, mergemaster displays per default all in changed files. That's
 ok for the first time, but if you maintain many hosts, this is annoying a
 lot.
 
 There should be an options to display all changed files anyway, so you
 can watch what has changed. (but off by default)
 
 So I have ideas to improve merge-master:
 
 1. Add md5 checksum to the the file-header:
 ---
[.]
 2. Have a special database with md5 checksums
 -
[.]

3.  Have a cvs-aware option.

If the installed and new version numbers differ, mergemaster does a 
cvs diff -u -rINSTALLEDVERSION newversion | patch INSTALLEDFILE.  If 
this works, everyone's happy.  If not, it forces you to modify the 
new file 'till there are no   bits in it.

 Martin Blapp, [EMAIL PROTECTED]
 
 Improware AG, UNIX solution and service provider
 Zurlindenstrasse 29, 4133 Pratteln, Switzerland
 Phone: +41 79 370 26 05, Fax: +41 61 826 93 01
 

-- 
Brian [EMAIL PROTECTED]brian@[uk.]FreeBSD.org
  http://www.Awfulhak.org   brian@[uk.]OpenBSD.org
Don't _EVER_ lose your sense of humour !



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message