Re: Proposal to mergemaster
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
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
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
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
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
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
Proposal to mergemaster
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) 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
Re: Proposal to mergemaster
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
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
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
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
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
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
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
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