<task>
  $$==========================================================$$
  $$                                                          $$
  $$       Task description for CCP4 Package Manager          $$
  $$                     LINUX VERSION                        $$
  $$                                                          $$
  $$==========================================================$$

  $$ "version" referes to the version of Package Manager.     $$
  $$ Package Manager will refuse improper versions and        $$
  $$ prompt the user to update                                $$
  <version>1.00</version>

  $$ "fetch" records specify data that Package Manager        $$
  $$ downloads from CCP4 server and keeps internally. Data    $$
  $$ type is idntified by the "type" attribute, which must    $$
  $$ have one of predefined values.                           $$

  <fetch type="unpack_script">unpack.py</fetch>
  <fetch type="install_script" ref="core">install_core.py</fetch>
  <fetch type="icon_script">seticon.py</fetch>

  <fetch type="icon" ref="core">ccp4i.png</fetch>
  <fetch type="icon" ref="coot">coot.png</fetch>
  <fetch type="icon" ref="ccp4mg">ccp4mg.png</fetch>

  <fetch type="directory">list.txt</fetch>
  <fetch type="licence">conditions.txt</fetch>
  <fetch type="licence" ref="arpwarp">arpwarp_license.txt</fetch>
  <fetch type="licence" ref="coot">coot_license.txt</fetch>
  <fetch type="licence" ref="ccp4mg">ccp4mg_license.txt</fetch>

  <page template="title">
    <rhs type="text">
{b}Collaborative Computational Project No. 4{/b}{br}
{font size="-1"}
Science and Technology Facilities Council{br}
Rutherford Appleton Laboratory{br}
Didcot, Oxon, OX11 0FA, United Kingdom{br}
http://www.ccp4.ac.uk{br}
{/font}
{br}
{h1}CCP4 Software Suite{/h1}
{h3}Version 6.3{/h3}
{h2}Setup{/h2}
{br}
This program will guide you through the setup process and{br}
install CCP4 Software Suite on your computer.
{p}
Press "Next" button to continue.
    </rhs>
    <next>1</next>
    <cancel>1</cancel>
  </page>

  <page template="os" ignore="yes">
    $$ Choice/suggestion for operationg system (OS)            $$

    <title>
{h2}CCP4 setup, step 1 out of 6{/h2}
{h3}Choice of Operating System{/h3}
    </title>

    $$ List of supported operating systems                     $$
    <os>RedHat 4 64-bit</os>
    <os>CentOS 4 32-bit</os>
    <os>CentOS 5 32-bit</os>
    <os>CentOS 5 64-bit</os>
    <os>RedHat 5 32-bit</os>
    <os>Fedora 10 32-bit</os>
    <os>Fedora 12 32-bit</os>
    <os>Fedora 14 32-bit</os>
    <os>Ubuntu 8.04 32-bit</os>
    <os>Ubuntu 10.04 32-bit</os>
    <os>Ubuntu 10.04 64-bit</os>
    <os>openSUSE 11.3 64-bit</os>

    $$ Explanation notes to be displayed on the page           $$
    <desc>Most of CCP4 Software Suite components are independent of
      a particular Linux flavour. If your Operating System is not
      found in the provided list, choose OS  that matches your system
      most closely, either by name or by RedHat/Debian origin. Note
      that 64-bit distributions will not work on 32-bit systems. If
      your system is 64-bit, you need to install 32-bit run-time
      libraries regardless of the choice.{p}
      If your system is not in the list {b}and{/b} your installation was
      not successful, {b}please{/b} let us know
      a) your system's name and release (such as "Ubuntu 11.04 32 bit")
      b) what was your choice of system for the installation. This will
      allow us to improve CCP4 distribution by increasing system
      coverage. Thank you for your assistance.
    </desc>

    <next>1</next>
    <cancel>1</cancel>

  </page>

  <page template="composition">

    $$ Server from which components will be downloaded        $$
    <server>http://www.ccp4.ac.uk/setup/linux</server>

    <title>
{h2}CCP4 setup, step 1 out of 5{/h2}
{h3}Choose components to install:{/h3}
    </title>

    $$ "item" describes an installed component. "select" may   $$
    $$ be "yes" (initially selected), "no" (initially          $$
    $$ inselected) or "must" (always selected).                $$
    <item select="yes">

      $$ Name to appear in the list of components              $$
      <name>CCP4 Program Suite v6.3.0</name>
      <ref>core</ref>

      $$ "size" shows approximate unpacked size in KBs         $$
      <size>1200000</size>

      $$ "erase" gives sub-directory name to erase for clean   $$
      $$ installation. This record is not mandatory, and as    $$
      $$ many of them, as necessary, may be given.             $$
      $$   DO NOT give the same "erase" record in more than    $$
      $$ one component!                                        $$
      <erase>ccp4-6.3.0</erase>

      $$ "subdir" gives sub-directory name, where the          $$
      $$ corresponding tarball will be unpacked. This record   $$
      $$ is mandatory and must be synchronised with the actual $$
      $$ content of tarballs.                                  $$
      <subdir>ccp4-6.3.0</subdir>

      $$ Description to appear next to the list of components  $$
      <desc>CCP4 core packages. Collection of over 200 usefull
        programs, written by various authors, which provides tools
        for all stages of structure solution process, plus
        software libraries and accompanying data. Core packages
        are needed for other applications in the list.
      </desc>

      $$ File name pattern to download. All files with names   $$
      $$ starting with the pattern will be downloaded if the   $$
      $$ item is selected. This may be conditional to other    $$
      $$ selections, if "ref" tag is provided.                 $$
      <name_pattern os="* * 32-bit">core1.</name_pattern>
      <name_pattern os="* * 64-bit">core1-64.</name_pattern>

      $$ If "ref" attribute is given for a pattern, that       $$
      $$ pattern will be used if all referenced components     $$
      $$ ("ref" may have any number of comma-separated         $$
      $$ references) are selected for installation.            $$
      <name_pattern ref="arpwarp" os="* * 32-bit">core2.</name_pattern>
      <name_pattern ref="arpwarp" os="* * 64-bit">core2-64.</name_pattern>

      $$ The installer will check if a file specified in       $$
      $$ "check_dependency" is visible under PATH              $$
      {check_dependency}tclsh{/check_dependency}

      $$ If "icon" record is given and the corresponding, as   $$
      $$ identified by otem's reference, icon has been         $$
      $$ fetched, the installer will put the icon on the       $$
      $$ desktop with name given by "name" atribute and        $$
      $$ executable with path given in the statement, appended $$
      $$ to the destination directory + subdir. This job is    $$
      $$ done by "icon_script.py".                             $$
      <icon name="ccp4i">ccp4i.sh</icon>

    </item>

    $$ There may be as many items as necessary                 $$
    <item select="no">

      <name>ARP/wARP v7.3</name>

      <ref>arpwarp</ref>
      <size>205000</size>

      <erase>arp_warp_7.3</erase>
      <subdir>arp_warp_7.3</subdir>

      <desc>ARP/wARP is Crystallographic Macromolecular Building
      Software from EMBL-Hamburg.{p}
      Note that this software is not covered by CCP4 licence.
      Members of not publically funded academic and/or education
      and/or research institutions must obtain a commercial ARP/wARP
      license from {a href="http://www.arp-warp.org"}
      http://www.arp-warp.org{/a} prior selecting Arp/wArp for
      download.
      </desc>

      $$ "phony=yes" indicates that the component is included  $$
      $$ into another component's package(s), where a proper   $$
      $$ pattern is chosen conditoionally through the "ref"    $$
      $$ attribute. The package specified by phony pattern     $$
      $$ is never attempted for download and may not exist,    $$
      $$ however, some name should be provided.                $$
      <name_pattern phony="yes">core-arpwarp.</name_pattern>
      {name_pattern}arpwarp.{/name_pattern}

      $$ "check_component" forces selection of the referenced  $$
      $$ if "this" component is selected                       $$
      <check_component>core</check_component>

    </item>

    <item select="no">

      <name>COOT v0.6.2</name>

      <ref>coot</ref>
      <size>350000</size>
      <erase>coot-0.6.2</erase>
      <subdir>coot-0.6.2</subdir>

      <desc>Coot, the Crystallographic Object-Oriented Toolkit. An
        interactive graphical application for macromolecular model
        building, model completion and validation, particularly suitable
        for protein modelling using X-ray data. Coot displays maps and
        models and allows model manipulations such as idealization,
        real space refinement, manual rotation/translation, rigid-body
        fitting, ligand search, solvation, mutations, rotamers,
        Ramachandran plots, skeletonization, non-crystallographic
        symmetry and more.
        {p}
        Note that Coot is platform-dependent and may not work in some
        Linux systems.
      </desc>

      $$ "os" attribute specifies an operating system. "os"    $$
      $$ must be one of those listed in "os" page. If "os" is  $$
      $$ omitted, the package is consedered to be available    $$
      $$ for any platform, however this will be overwritten if $$
      $$ a matching platform is found in "os" attribute of     $$
      $$ another package.                                      $$

      <name_pattern os="RedHat 4 32-bit">coot-0.6.2-centos-4.</name_pattern>
      <name_pattern os="RedHat 4 64-bit">coot-0.6.2-rhel-4-64.</name_pattern>
      <name_pattern os="CentOS 4 32-bit">coot-0.6.2-centos-4.</name_pattern>
      <name_pattern os="CentOS 4 64-bit">coot-0.6.2-rhel-4-64.</name_pattern>
      <name_pattern os="RedHat 5 32-bit">coot-0.6.2-rhel-5.</name_pattern>
      <name_pattern os="RedHat 5 64-bit">coot-0.6.2-centos-5-64.</name_pattern>
      <name_pattern os="CentOS 5 32-bit">coot-0.6.2-rhel-5.</name_pattern>
      <name_pattern os="CentOS 5 64-bit">coot-0.6.2-centos-5-64.</name_pattern>

      <name_pattern os="Fedora 10 32-bit">coot-0.6.2-fedora-10.</name_pattern>
      <name_pattern os="Fedora 11 32-bit">coot-0.6.2-fedora-10.</name_pattern>
      <name_pattern os="Fedora 12 32-bit">coot-0.6.2-fedora-12.</name_pattern>
      <name_pattern os="Fedora 13 32-bit">coot-0.6.2-fedora-12.</name_pattern>
      <name_pattern os="Fedora 14 32-bit">coot-0.6.2-fedora-14.</name_pattern>

      <name_pattern os="Ubuntu 8.04 32-bit">coot-0.6.2-ubuntu-8.04.</name_pattern>
      <name_pattern os="Ubuntu 9.04 32-bit">coot-0.6.2-ubuntu-8.04.</name_pattern>
      <name_pattern os="Ubuntu 10.04 32-bit">coot-0.6.2-ubuntu-10.04.</name_pattern>
      <name_pattern os="Ubuntu 10.04 64-bit">coot-0.6.2-ubuntu-10.04-64.</name_pattern>

      <name_pattern os="openSUSE 11.3 64-bit">coot-0.6.2-opensuse-11.3-64.</name_pattern>

      $$ Packages for all other platforms                      $$
      <name_pattern os="RedHat * 32-bit">coot-0.6.2-rhel-5.</name_pattern>
      <name_pattern os="RedHat * 64-bit">coot-0.6.2-centos-5-64.</name_pattern>
      <name_pattern os="CentOS * 32-bit">coot-0.6.2-rhel-5.</name_pattern>
      <name_pattern os="CentOS * 64-bit">coot-0.6.2-centos-5-64.</name_pattern>
      <name_pattern os="Fedora * 32-bit">coot-0.6.2-fedora-14.</name_pattern>
      <name_pattern os="Fedora * 64-bit">coot-0.6.2-centos-5-64.</name_pattern>
      <name_pattern os="Ubuntu * 32-bit">coot-0.6.2-ubuntu-10.04.</name_pattern>
      <name_pattern os="Ubuntu * 64-bit">coot-0.6.2-ubuntu-10.04-64.</name_pattern>
      <name_pattern os="Debian * 32-bit">coot-0.6.2-ubuntu-10.04.</name_pattern>
      <name_pattern os="Debian * 64-bit">coot-0.6.2-ubuntu-10.04-64.</name_pattern>
      <name_pattern os="openSUSE * 64-bit">coot-0.6.2-opensuse-11.3-64.</name_pattern>

      <name_pattern os="* * 32-bit">coot-0.6.2-rhel-5.</name_pattern>
      <name_pattern os="* * 64-bit">coot-0.6.2-centos-5-64.</name_pattern>

      <icon name="coot">bin/coot</icon>

    </item>

    <item select="no">

      <name>Balbes Database</name>

      <ref>balbes_db</ref>
      <size>3000000</size>
      <subdir>ccp4-6.3.0</subdir>

      <desc>Database of models for Automatic Macromolecular Replacement
        pipeline BALBES (part of CCP4 Program Suite). Contains a
        comprehensive set of models taken from PDB archive, manually
        curated and prepared for use with BALBES. This archive is
        needed only if you are going to use BALBES software.
      </desc>
      <name_pattern>balbes_db.</name_pattern>

      $$ "check_component" forces selection of the referenced  $$
      $$ if "this" component is selected                       $$
      <check_component>core</check_component>

    </item>

    <item select="no">

      <name>CCP4mg v2.6.0</name>

      <ref>ccp4mg</ref>
      <size>920000</size>
      <erase>ccp4mg-2.6.0</erase>
      <subdir>ccp4mg-2.6.0</subdir>

      <desc>CCP4mg (Molecular Graphics) is the quick and easy way to
        create beautiful publication quality images and movies. It is
        also the easy way to superpose and analyse structures. CCP4mg
        provides for a range of model drawing styles include ribbons,
        surfaces, spheres, ball-and-stick and surfaces. CCP4mg also
        displays electron density as cylinders or 2D slices. The viewer
        may be used for movie making, automatic protein superposition
        (using SSM software) and protein assembly analysis
        (based on PISA software).
        {p}
        Note that CCP4mg is platform-dependent and may not work in
        some Linux systems.
      </desc>

      $$ Packages for specific platforms                       $$
      <name_pattern os="RedHat 4 64-bit">mg-older-64.</name_pattern>
      <name_pattern os="CentOS 4 32-bit">mg-centos-4.</name_pattern>
      <name_pattern os="RedHat 4 32-bit">mg-centos-4.</name_pattern>
      <name_pattern os="CentOS 4 64-bit">mg-older-64.</name_pattern>

      $$ Package for all other platforms                       $$
      <name_pattern os="* * 32-bit">mg-modern.</name_pattern>
      <name_pattern os="* * 64-bit">mg-modern-64.</name_pattern>

      <icon name="ccp4mg">bin/ccp4mg</icon>

    </item>

    <item select="no">

      <name>Chooch v5.0.2</name>

      <ref>chooch</ref>
      <size>16500</size>
      <subdir>ccp4-6.3.0</subdir>

      <desc>CHOOCH is a program that will automatically determine
        values of the anomalous scattering factors, f' and f'',
        directly from experimentally measured X-ray fluorescence data.
        It outputs the f' and f'' spectrum and the appropriate X-ray
        wavelengths to be used for MAD or SAD experiments.
      </desc>

      <name_pattern>chooch.tar.gz</name_pattern>

    </item>

    <back>1</back>
    <next>1</next>
    <cancel>1</cancel>

  </page>

  <page template="licence">
    $$ absence of "ref" tag indicates unconditional licence,   $$
    $$ which will be always requested to agree with            $$
    <title>
{h2}CCP4 setup, step 3 out of 6{/h2}
{h3}Confirm your agreement to CCP4 terms and conditions:{/h3}
    </title>
    <back>1</back>
    <next>1</next>
    <cancel>1</cancel>
  </page>

  <page template="licence">
    $$ There may be as many licence pages as necessary.        $$

    $$ There may be as many reference records as necessary,    $$
    $$ however, only first reference will be used to identify  $$
    $$ appropriate licence text from fetch records.            $$
    <ref>arpwarp</ref>

    <title>
{h2}CCP4 setup, step 2a out of 5{/h2}
{b}{font size="+1"}Confirm ARP/wARP Licence.{/font}{/b}
{font size="-1"}
ARP/wARP software is not covered by the general CCP4 license.
Members of not publically{br}
funded academic and/or education and/or research institutions must
obtain a commercial ARP/wARP license from
{a href="http://www.arp-warp.org"} http://www.arp-warp.org{/a}{br}
Your data will be communicated to ARP/wARP server for verification.
{/font}
    </title>

    $$ Request category indicates that licence approval        $$
    $$ should be sought from external server. The server will  $$
    $$ respond with word "Approved" if licence is granted,     $$
    $$ and give a reason for refusal (if any) otherwise.       $$
    <request>

      $$ url gives server's url, must end with question mark   $$
      <url>http://www.embl-hamburg.de/arp-cgi-bin/ccp4download?</url>
      $$http://www.ccp4.ac.uk/setup/linux/approve.txt?$$

      $$ Each item will be displayed for user's input with     $$
      $$ prompts as given by the record. User's input is       $$
      $$ communicated to the server in tuples "id=value",      $$
      $$ where "id" is given in item's attributes. Values are  $$
      $$ sent percentage-encoded.                              $$
      <item id="name">First name:</item>
      <item id="surname">Surname:</item>
      <item id="email">E-mail:</item>

      $$ "type" is a special id, which makes combobox with     $$
      $$ two values: "academic" and "commercial". User's       $$
      $$ selection is communicated to server as                $$
      $$ "licence=academic" or "licence=commercial".           $$
      $$ Optional "key" attribute specifies whether a field    $$
      $$ for licence key should be displayed. If key="yes"     $$
      $$ then licence key is send to server as key=value.      $$
      <item id="type" key="yes">Licence type:</item>

    </request>

    <back>1</back>
    <next>1</next>
    <cancel>1</cancel>

  </page>

  <page template="licence">
    $$ There may be as many reference records as necessary,    $$
    $$ however, only first reference will be used to identify  $$
    $$ appropriate licence text from fetch records.            $$
    <ref>coot</ref>
    <title>
{h2}CCP4 setup, step 2b out of 5{/h2}
{h3}Confirm your agreement to GPL terms and conditions for Coot installation:{/h3}
    </title>
    <back>1</back>
    <next>1</next>
    <cancel>1</cancel>
  </page>


  <page template="licence">
    <ref>ccp4mg</ref>
    <title>
{h2}CCP4 setup, step 2c out of 5{/h2}
{h3}Confirm your agreement to CCP4mg terms and conditions:{/h3}
    </title>
    <back>1</back>
    <next>1</next>
    <cancel>1</cancel>
  </page>


  <page template="directories">
    <title>
{h2}CCP4 setup, step 3 out of 5{/h2}
{h3}Choose locations:{/h3}
    </title>
    <directory name="destination" must="yes">
Choose directory where CCP4 Software should be installed:
    </directory>
    <directory name="tmp" must="no">
Choose temporary directory for download:
    </directory>
    $$ modify_global_env:
    $$   absent or 0:  do not modify
    $$   1:   show prompt with default yes
    $$   2:   show prompt with default no
    <modify_global_env>2</modify_global_env>
    <back>1</back>
    <next>1</next>
    <cancel>1</cancel>
  </page>

  <page template="downloads">
    <title>
{h2}CCP4 setup, step 4 out of 5{/h2}
{h3}Download selected components{/h3}
    </title>
    <back>1</back>
    <next>1</next>
    <cancel>1</cancel>
  </page>

  <page template="install">
    <title>
{h2}CCP4 setup, step 5 out of 5{/h2}
{h3}Install downloaded components{/h3}
    </title>
    <unpack_script>unpack.py</unpack_script>
    <setup_script>install.py</setup_script>
    <back>1</back>
    <cancel>1</cancel>
  </page>

</task>

