Sharity 2 Manual: Installation

3. Installation

Sharity is installed by a shell script. We decided for the old fashioned text-based way and against a GUI (Graphical User Interface) because it is more compatible across platforms. It also allows installation on machines without graphics display or remotely from a terminal.

3.1 Installation Types

Before you run the installation script, you should know which type of installation you want:

Stand-Alone Installation
With this type of installation, Sharity is installed locally on each client. Advantages:

  • All clients are completely independent.
  • Easy to perform, you can't do much wrong.
  • Requires no NFS server.
Disadvantages:
  • Upgrades must be performed on each client.
  • Uses disk space for the executables and supporting files on each client.
  • All clients must be licensed and configured separately.
You should choose this type of installation if you have only one or a few clients, if you don't have an NFS server or if you want all clients to be as independent as possible. It's also recommended for inexperienced users.

Server-Based Installation
With this type of installation, most of the files are installed on an NFS server. The clients need only a few small files. The over-all behaviour is very similar to the stand-alone installation. Advantages:

  • All clients can be configured individually.
  • Needs little disk space on the clients.
  • Changes in supporting files (e.g. configuration file) can be administered centrally.
Disadvantages:
  • Upgrades must be performed on each client and on the server.
  • All clients must be licensed and configured separately.
  • Clients depend on an NFS server.
This type of installation may be useful if you have a lot of clients to administer and want to keep the per-client installation small, but you don't want to have the same configuration on each client.

Server-Based Installation with shared Configuration
With this type of installation, almost all files are installed on an NFS server. All clients share the same configuration: If a setting is changed on one client, it's simultaneously reflected on all other clients. Advantages:

  • Needs little disk space on the clients.
  • Configuration and a database of stored passwords can be administered centrally.
  • Upgrades and licensing can be performed on the server only, unless there's a new major release or the release notes say the opposite.
Disadvantages:
  • No individual configuration possible.
  • Stored passwords can be used from any client.
  • Clients depend on an NFS server.
This type of installation is useful if you have a lot of clients to administer where the users of the clients cannot (or should not) configure Sharity by themselves.

Customized Configuration
The last two installation types can be mixed: You can choose the server-based installation for more experienced users and the installation with shared configuration for others.

3.2 Running the Installation Script interactively

After you decided for an installation type, you can start the script. We assume that you have a binary distribution and that you have managed to unpack the archive. You would not be able to read the manual otherwise. If you have a previous version of Sharity installed, you should remove it now. Change directory to the installation directory (it contains the script setup). Then start the script with
    ./setup
The script tries to be friendly and verbose. The first question you will have to answer is which type of installation you want to perform:
What kind of installation do you want to perform? Valid options are:
  1 stand-alone       for a completely independent installation of Sharity
  2 server            for a (NFS) file server installation on the server
  3 client-shared     for a file server installation on the client with
                      shared configuration
  4 client-local      for a file server installation on the client with
                      local configuration
If you decided for the stand-alone installation, the answer is clear. For the other types of installation, the answer depends on whether you are installing on the client of the NFS server. If you install on the server, choose 2 for server. If you install on the client for shared configuration, choose 3 for client-shared. If you install a client with independent configuration, choose 4 for client-local.

For the rest of the questions, please read the text on the screen carefully. Hitting Return without entering a new value chooses the default.

3.3 Running the Installation Script in Batch Mode

If you have to install on a lot of clients, it becomes boring (and is error prone) to answer all questions asked by the installation script each time. In this case you should edit the file filelist, which is part of the binary distribution, to contain your values as default values. You can then start the installation script with the option -q (which means quiet mode) and it will use the defaults without asking.

You should also consider to write an additional script which adds the Sharity daemon to the system startup, starts the daemon, issues the registration key (unless it is stored on the server anyway) and maybe adds the GUI program to all users' X-Windows startup.

3.4 Compiling from the Sources

The above sections all assumed that you have a binary distribution. Since we don't have access to all platforms where Sharity runs, the binary distribution for your platform may be out of date or even not available. If that's the case, you are better off when you compile from the sources. You need:
  • A reasonably up-to-date version of gcc (2.7.2 is fine). Compiling with the system's native compiler may also succeed, but you will have to tune the compiler options. Many systems ship with gcc as the native compiler (e.g. Linux, FreeBSD, MacOS X etc.). EGCS is a version of gcc.
  • GTK+ version 1.2 for the X-Windows GUI. If you need no GUI or if you have Openstep or MacOS X, you don't need GTK+. GTK+ can be downloaded from http://www.gtk.org/. It relies on GLIB, which can be obtained from the same site. GTK+ is a free GUI library for X-Windows. Please note that the executables gtk-config and glib-config must be in your search path when you compile.
If you have installed these prerequisites, you can go to the source directory of the distribution and edit the file Makefile.config. All system dependent configuration options are located in this file. Read the remarks in the file and enable the section appropriate for your system.

After editing Makefile.config, just type make to build the binaries. This will create a binary distribution in the directory install (which is at the same level as the source directory, not within it). Change to the install directory and proceed as if you had obtained a binary distribution.

3.5 Removing an installed Sharity

If you want to install a new version of Sharity, you must remove the old version first. This can be done with the uninstall script which is created during the installation. It is created locally on each client and reverts every step carried out during installation. Since one of these steps was the creation of the uninstall script, it could be unpleasant if the uninstall fails after deleting itself. To avoid this problem, a backup of uninstall is made to the /tmp directory.


Sharity Manual for version 2.0 | Copyright (C) 1999 by Christian Starkjohann | http://www.obdev.at/