This is an old revision of the document!
Ideally (as written in distrib.its), you'd like to have a file somewhere where you set your system name, IP address and other configuration data, and let ITS read it at startup. Unfortunately, that's not the way it works…
NOTE that all $ below are ESCAPEs!! Also, where it says XY, you should substitute your new system name.
NOTE that you should read distrib.its before you do any of this, so you know what you're doing! This is just summing up the stuff, filling in some details. If you're happy with one of the standard names (AI, ML, MC, MD, MX…) and don't plan on interacting with other ITS systems, it's much easier to forget the whole thing.
SYSHST;H3TEXT >
SYSTEM;CONFIG >
SYSTEM;TTYTYP >
SYSNET;TELSER >
SYSEN2;MLDEV >
SYSEN1;PWORD >
SYSEN1;DDT >
L;*LISP >
L;STRUCT >
SYSEN1;SENDER >
SYSENG;LUSER >
:midas .temp.;_sysnet;telser :copy .temp.;telser bin,sysbin;telser bin
:midas .temp.;_sysen1;ddt ddt$j $l .temp.;ddt bin purify$g :pdump sys;atsign ddt
:midas .temp.;_sysen1;pword (twice, answer no and yes) :copy .temp.;pword bin,sysbin; :copy .temp.;panda bin,sysbin;
:link sys;atsign pword,sysbin;pword bin :link sys;ts panda,sysbin;panda bin :link sys;atsign hactrn,sysbin;pword bin
:midas .temp.;_system;its
(type in your new system name IN UPPERCASE)
Dump .temp.;its bin as described in distrib.its and restart with the new ITS.
Let programs repurify: run each of these once
:peek :name :probe :meter :prufd :sysmsg
and purify MIDAS:
midas$j $l sysbin;midas 458bin purify$g
Patch DUMP so it knows where it's running (you could also just recompile SYSENG;DUMP).
dump$j $l sysbin;dump bin setsc1+34//$1'XY$ (note double slash, insert your system name for XY here) :pdump sysbin;dump bin
First make a new LISP. LISP knows its shared image is in SYS; PURQIO >
.
:midas .temp.;_l;*lisp ^C (midas guesses ITS anyway) *lisp$j $l .temp.;*lisp bin $g purify $g :pdump sys;purqio >
Now re-create some LISP-based programs:
:lisp comlap;ccload
The first patch (starting with “qai”) is to change the value of (STATUS SITE) which is used as default “network-address” field. The second line (starting with “udirse+7”) is to patch an immediate sixbit value of AI, so it's really important that you get the three spaces right.
inquir$j $l inquir;inqbin 181 $g .VALUE... qai/$$q/⟨LINEFEED⟩⟨TAB⟩$$q/" (should show $0"AI$) $0"XY$⟨ENTER⟩ udirse+7/$1' XY$$> (three spaces followed by your name, overwrite AI's entry) :pdump inquir;inqbin 182 :delete inquir;ts inquir :link inquir;ts inquir,inquir;inqbin 182
I hope other lisp-based programs are as easy…
IF you have users without homedirs, update INQUIR;DMUNCH >
with your local host tables (copy MD's entries), compile it as directed in the file, and force INQUPD to update the database (e.g. by changing something insignificant) in order for DIRS BIN
to be included in LSR1 1
.
If you write new programs, never use hardcoded data if you can avoid it at all. Read a config file, or construct data on-the-fly. To find the names of local ITSes, read .GETSYS ITSNMS. You can find silly examples in *LISP, which uses a hardcoded list of machine names in order to convert from sixbit to atom. Why not use the SIXATM routine to create the atom on-the-fly? (There may possibly be reasons, such as other MIDAS code using QMX as the known address of 'MX. I'll see when I try it.)