# $Id: README,v 5.2 2009/10/16 21:32:37 ksb Exp $ [First learn msrc, then use distrib if you can't make msrc do what you want. I don't use distrib, myself, anymore at all. See this URL: http://msrc.npcguild.org/msrc/local/sbin/msrc/qstart.html ] What does distrib do? Distrib keeps track of an attributes database. It runs a file (called Distfile) though the m4 macro processor with these attributes defined as macros to produce an rdist control file. This new distfile may be presented to rdist or diverted to stdout. The "meta source organization" uses distrib to push source and make(1) control files to remote machines. These images from the master source machine on various target machines produce products and config files. For example we keep our source code for our local tools in /usr/msrc/local on our master source machine. In each products directory there is a Distfile which tells distrib which platforms that product will compile and run on. The command distrib -S will update the sources to a given product from the /usr/msrc tree to the /usr/src tree on each target platform. Then we simply compile and install the product on each machine. After a product is installed, the command distrib -c /usr/local/bin/product HOST will update that product (in /usr/local/bin) on all the hosts of the same CPU/OS type. What platforms? It runs anyplace GNU M4 runs. You need rdist and you might want to patch rdist to fix 2 bugs (see the msrc_base package). What do I need to evaluate it? If you have a (heterogeneous) network you can give it a spin. Who would be interested in this kind of thing? Anyone with more than one machine and a network. Big sites with lots of platforms and local tools might love it. We at the NPC Guild. Is this software restricted in distribution? No. It has a Purdue Research Copyright, but that is just so you won't say you wrote it. How much trouble is it to port? The code is ~2000 lines. Not too hard to read in <1 hour. It should work with a little push on any machine rdist runs on. It is std ksb code (good or bad, you decide). You need mkcmd-8.17 (or you really understand the distrib.m file). -- kayessbee, Kevin Braunsdorf, install@ksb.npcguild.org, Oct 2009