[3566] in SIPB_Linux_Development

home help back first fref pref prev next nref lref last post

Description of new installer, intent to release as alpha.

daemon@ATHENA.MIT.EDU (Alex Coventry)
Wed Oct 3 10:17:20 2001

Date: Wed, 3 Oct 2001 10:17:15 -0400 (EDT)
Message-Id: <200110031417.KAA11258@no-knife.mit.edu>
From: Alex Coventry <alex_c@MIT.EDU>
To: Linux-Dev <linux-dev@MIT.EDU>


Hi, everyone.  Below's a list of the steps the layerish installer script
goes through.  I'm sending it here in the hope that people who know more
about Athena than me will find holes in it.

I've installed the script in /mit/linux/rh-7.1/install, and intend to
tell anyone looking for an alternative to the 6.2-based installer about
it.  I'll warn them about the extent to which it's been tested, and
about the risk that it might not be able to take updates in the future,
and make sure they understand the potential consequences of that.

If no one objects, I might send mail to linux-announce in a week or so
announcing this as alpha software, along with the same warnings.

Alex.

\documentclass{article}
\begin{document}

The script {\tt install.py} is based on a prototype by Arun Tharuvai.
It assumes it's being run on a freshly installed RedHat linux system of
the same version as Athena Linux is based on, and attempts to set it up
identically to an Athena-Linux machine.

It's to be used in the following way:

\begin{itemize}

\item
   It starts with a shell script (the product of {\tt install.sh.in})
   that installs from the install CD the wget, and python rpm's, and the
   rpm's that those packages depend, then uses wget to download a python
   program.  This is mainly to make everything depend initially on
   something that is short enough for users to type in by hand, to
   accomodate machines which have no floppy drive.

\item
   ({\tt athenafy.py}) The python program then uses wget to download the
   rpm's athena-base, athena-afs, and athena-rpmupdate.  It runs
   rpmupdate against the control list for the latest version of
   Athena-Linux, using the output of 'rpm -qa' as the old list.

\item
   ({\tt sync\_rpms.py}) Since rpmupdate installs everything in the
   control list, but leaves any non-conflicting packages behind, it next
   gets a list of all rpm's that are installed on the system but not on
   the control list, and erases them from the system.  As the control
   list of rpm's is self-consistent, the extraneous packages can be
   removed with one big 'rpm -e' command.  The control list is then
   copied to {\tt /var/athena/release-rpms}.

   Getting this step wrong could have a widespread impact on the ability
   of machines installed with this script to take future updates to
   Athena, so if it fails, the error is logged in {\tt
   /var/athena/install.log}, and the user is requested to contact SIPB.

\item
   ({\tt postinstall.py}) So that X is started on boot, it modifies {\tt
   /etc/inittab} so the default runlevel is 5.  So that it can take
   updates, it installs the Athena version in {\tt /etc/athena/version}.

\end{itemize}
\end{document}

home help back first fref pref prev next nref lref last post