[plt-scheme] PLT Scheme v203 self-installer for Linux+Sun

From: Eli Barzilay (eli at barzilay.org)
Date: Sun Dec 22 05:11:53 EST 2002

On Dec 20, Eli Barzilay wrote:
> But still, for the sake of exactly that, I will tar up my build when
> I finish it -- its a tweak that will work on both RH (at least my
> 8.0 and a refreshed 7.3 versions) and Solaris.

I have finished getting a directory that does that, and made it into a
self-installing file.

Get it from

  http://www.cs.cornell.edu/eli/tmp/plt-installer

and run it (chmod +x, or through `sh').  Relevant features:

1. Includes the whole PLT tree.

2. Includes all .zo files.

3. Includes all documentation.

4. Includes Swindle (a new version, separate message on the Swindle
   list).

5. Instead of mred and mzscheme there are symbolic links to
   `arch-exec' which will execute the right executable for either
   Linux or Solaris.

6. I have tested the Linux version with bothe RedHat 7.3 and 8.0 and
   it seems like it is working fine.  The solaris executables are the
   ones from the Solaris PLT tar (I couldn't get mred to compile).

7. The installer should be safe to run -- it will check the md5sum of
   the binary (tar.bz2) contents.

8. It is polite enough to ask where you want to install it, check
   permissions, and check that it has the commands needed (except that
   it really needs the GNU `find' rather than Sun's ancient version).

9. After the archive is unpacked, the directory is set in all scripts
   and dep files (AFAICT, the only other mention of the original
   directory is in anonymous function names, but I think that this is
   not a problem considering that making the zos takes some time now).

10. Finally, if you put it in a place that has a bin and a man (or
    share/man) directories, it will ask if you want to create symbolic
    links there.

Additional comments:

* This is quite big, but considering HD sizes I don't think there is
  any point breaking it up to pieces (it's about as big as the credits
  from a divx movie...).

* After unpacking the plt tree, it should be possible to write a
  Scheme program to do the rest -- but I didn't since I didn't want to
  duplicate work in PLT's `install' program.  I think that this
  program could probably be improved for doing such things given some
  simple command-line arguments -- for example, getting a "no-zos"
  flag would be much better than checking for the "RPM_INSTALL_PREFIX"
  environment variable.  Also, putting links in bin and man
  directories would be much easier in Scheme, maybe even adding the
  relevant Gnome/KDE information to get it in the menu bar, and maye
  the mime stuff that will get the GUI file-explorer-like thing to
  recognize .ss files.  Even something like writing a list of these
  external links to be able to uninstall it easily.

* I did consider an RPM, but that will be more work to get right
  (avoiding accusations of `ugly' rpm specs).  Given that PLT should
  be making such an RPM, there is no point in many of its features
  like patches etc, and my personal view is, again, that there is no
  point in splitting it into a plt, plt-devel, plt-doc, etc.  In any
  case, the above improvements to the install program would help
  getting a simple RPM too.

-- 
          ((lambda (x) (x x)) (lambda (x) (x x)))          Eli Barzilay:
                  http://www.barzilay.org/                 Maze is Life!


Posted on the users mailing list.