rwberry@hubcap.UUCP (Robert W Berry) (12/19/88)
Close. I'm sooooooo close. I've taken Minix off my harddisk and got a plain-vanilla version of 1.2 put back on and running. I've gotten the 1.2-1.3 tar-file from bugs.nosc.mil onto the Minix partition of my harddrive. I've successfully un-tar'ed the file and I now think I've got everything where it belongs. (All the ln's from /usr/include/... to /usr/src/minix/h, etc.) Now here's my problem: what the heck do you do with that 300k patch.diff file. Do you need patch or fix (I thought patch was for cdiff's and fix was for diff's.) I've set up my directory structure according to both the rearrange file and the users_guide file. Do I have to move things around so that patch (or fix) knows where the source files are? Has anybody successfully gotten this update to work? Is the patch.diff file only diff's to the command sources or library sources? And once I figure out which command to use, how do you work the darn things? The closest I can figure is that they are inverses of each other so: diff old new >difffile and then fix old difffile >new should create new from old, etc. Am I on the right track (hopefully I'm at least close. ;-)) It's taken me almost two days to find and restore all of the 1.2 distribution. I really, REALLY want to get a 1.3 up and running before the new year. HELP? If you have any advice, warnings, etc about applying these diff's please send it/them to me? I've been working with Minix for quite a while, and I've applied diffs before, but always by hand. I never quite trusted fix or patch, and my source files had really been worked over. So this is my first attempt at using these utilities. Another real quick question: the user's guide suggests the use of diskcheck and badblocks before you install Minix of a harddrive. Are these 1.3c commands. If so can they be used without having to yank everything back off the fixed disk? Thanks in advance, Bob -- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- -=- Bob Berry -=- PC-Guru's Inc. ! INTERNET:rwberry@hubcap.clemson.edu -=- -=- Good questions all, Sir. ! Voice: 803-654-7623 or 803-656-2635 -=- -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
jds@mimsy.UUCP (James da Silva) (12/20/88)
In article <3930@hubcap.UUCP> rwberry@hubcap.UUCP (Robert W Berry) writes: > >Now here's my problem: what the heck do you do with that 300k >patch.diff file. Do you need patch or fix (I thought patch was for >cdiff's and fix was for diff's.) I've set up my directory structure >according to both the rearrange file and the users_guide file. Do I >have to move things around so that patch (or fix) knows where the source >files are? Has anybody successfully gotten this update to work? Is the >patch.diff file only diff's to the command sources or library sources? >And once I figure out which command to use, how do you work the darn >things? The closest I can figure is that they are inverses of each >other so: > diff old new >difffile and then fix old difffile >new should create > new from old, etc. >Am I on the right track (hopefully I'm at least close. ;-)) Patch will work with cdiffs and normal diffs. In fact, if you've got patch going, you should alway use it instead of fix; it's much more intelligent. If you've rearranged things according to Vince's doc you should be ready to do the patch. Your Minix source tree should look like this: v1.3d/minix/commands v1.3d/minix/commands/mined v1.3d/minix/commands/sh v1.3d/minix/doc v1.3d/minix/fs v1.3d/minix/h v1.3d/minix/kernel v1.3d/minix/lib v1.3d/minix/lib/IBM_PC v1.3d/minix/mm v1.3d/minix/test v1.3d/minix/tools v1.3d/usr/include v1.3d/usr/include/fs v1.3d/usr/include/minix In fact, if you want to see exactly what diffs are included in diff.patch, grep for it: grep '^--- v1.3d' diff.patch To do the patch, go to the parent directory of v1.3d, then: patch -lp <diff.patch The -l option is for 'loose' matching; differences in whitespace are ignored. It's a bit slower, but better safe than sorry. The -p means don't strip the path name. I admit with shame that I did this on a Real Unix system; I don't know if patch under Minix will lose its lunch on such a large file. I've heard of problems with patch running out of temp file space, so watch out for that. Keep a backup version of your re-arranged 1.2 tree so you can try again if need be. Let us know how it turns out! Jaime ........................................................................... : domain: jds@mimsy.umd.edu James da Silva : path: uunet!mimsy!jds
mclean@brigit.think.com (Shawn McLean) (12/20/88)
From: rwberry@hubcap.UUCP (Robert W Berry) Date: 19 Dec 88 08:28:21 GMT Close. I'm sooooooo close. I've taken Minix off my harddisk and got a plain-vanilla version of 1.2 put back on and running. I've gotten the 1.2-1.3 tar-file from bugs.nosc.mil onto the Minix partition of my harddrive. I've successfully un-tar'ed the file and I now think I've got everything where it belongs. (All the ln's from /usr/include/... to /usr/src/minix/h, etc.) Now here's my problem: what the heck do you do with that 300k patch.diff file. Do you need patch or fix (I thought patch was for cdiff's and fix was for diff's.) I've set up my directory structure according to both the rearrange file and the users_guide file. Do I have to move things around so that patch (or fix) knows where the source files are? Has anybody successfully gotten this update to work? Is the patch.diff file only diff's to the command sources or library sources? And once I figure out which command to use, how do you work the darn things? The closest I can figure is that they are inverses of each other so: diff old new >difffile and then fix old difffile >new should create new from old, etc. Am I on the right track (hopefully I'm at least close. ;-)) An argument of -n to patch will strip the first n levels of the path names embedded in the patch file. If you have everything in directory structure specified by rearrange, you may use patch directly from the top level directory. I believe fix and cdif formatsf are handled directly by patch. After arranging the 1.2 source files, I used `patch -1 <patchfile`. Unfortunately, patch uses /tmp to keep track of previous patches, (to undo them?) and my 640k system quickly ran out of space. My solution was to split the patchfile into reasonable chunks at patch boundaries, and apply them a chunk at a time. If you get this far, use crc to compare the results with crc.final. I think the only other things are to apply the patches that came with andy's bios_wini.c posting, and add portio.s to /usr/src/minix/lib (if you don't have this, cut port_out, port_in, and get_byte from 1.2/kernel/klib88.s and paste). You'll probably need andy's library ordering to make a 1.3/lib/libc.a. You should now be able to compile everything, make new boot and root disks, and boot and mount filesystems. I was able to run kermit and elle with no problems on my AT clone with this system, although both seem slower with respect to their MSDOS cousins. The floppy grinds its teeth when booting the kernel (an understood problem, I haven't bothered with it yet). It's taken me almost two days to find and restore all of the 1.2 distribution. I really, REALLY want to get a 1.3 up and running before the new year. HELP? If you have any advice, warnings, etc about applying these diff's please send it/them to me? I've been working with Minix for quite a while, and I've applied diffs before, but always by hand. I never quite trusted fix or patch, and my source files had really been worked over. So this is my first attempt at using these utilities. Another real quick question: the user's guide suggests the use of diskcheck and badblocks before you install Minix of a harddrive. Are these 1.3c commands. If so can they be used without having to yank everything back off the fixed disk? in 1.3. When you get the 1.3 library compiled and built, you can compile commands/*.c and use the function binaries. Or you can just wing it, like me :+) Thanks in advance, Bob I have a question, is V7 and Seventh edition one in the same? -shawn "When in doubt, cut and paste, cut and paste.."
allbery@ncoast.UUCP (Brandon S. Allbery) (12/26/88)
As quoted from <15075@mimsy.UUCP> by jds@mimsy.UUCP (James da Silva): +--------------- | I admit with shame that I did this on a Real Unix system; I don't know if | patch under Minix will lose its lunch on such a large file. I've heard of | problems with patch running out of temp file space, so watch out for that. +--------------- You can mount an HD partition on /tmp if you do it while /etc/update is not running. I have a customized root floppy which builds a minimal (80K) ramdisk root and mounts disk partitions as /tmp and /usr (Minix source is in /usr/src, so /user is reserved as a mount point for a floppy). My /tmp partition is something like 1.7MB; this is plenty enough for patch. ++Brandon -- Brandon S. Allbery, comp.sources.misc moderator and one admin of ncoast PA UN*X uunet!hal.cwru.edu!ncoast!allbery ncoast!allbery@hal.cwru.edu comp.sources.misc is moving off ncoast -- please do NOT send submissions direct Send comp.sources.misc submissions to comp-sources-misc@<backbone>.