CSIR Author Pack Guidelines

7 downloads 0 Views 628KB Size Report
scientists, it is difficult to select, install and maintain ... scientific software based on their field of study or profile. ..... starts a Gnome graphical session, the Ubiquity.
Empowering African scientists - an investigation into a CD-based installer for scubuntu P. VAN ZYL, T. FOGWILL Meraka Institute, PO Box 395, Pretoria, 0001 Email: [email protected], [email protected]

Abstract

seeks to address these problems by making scientific packages part of the default distribution and providing tools to ease their discovery, installation and management.

Open source software (OSS) is software for which the source code is made available and can be freely modified and redistributed. OSS has been identified in the South African national R&D strategy as a vehicle for fostering local innovation and economic development. It promotes inclusivity by being freely available and allowing unconstrained customisation and modification. The use of OSS for scientific computing can significantly lower the barriers-to-entry for poorly funded research institutions in developing countries. At the same time, it can empower scientists to contribute and collaborate with their peers globally.

One of the key activities in scubuntu is the determination of profiles of scientists, based on their computing and software requirements. These profiles are coupled with a specification identifying the OSS scientific tools that are most appropriate for that profile. The refinement of these profiles and package collections is an ongoing activity that will be driven by the scubuntu user community. Investigative work was undertaken to determine the suitability of a CD-based installation program for scubuntu. An experimental prototype of such an installer was developed, based on the standard Ubuntu installer. This prototype installer allows users to select and install scientific software based on their field of study or profile. The work done to develop this prototype is presented here.

Linux is an open source operating system. There are scientific tools that run on Linux for almost all scientific disciplines. While there are successful scientific Linux-based projects like SciLab (SciLab 2008), MATLAB (Matlab 2008), and the R programming language for statistics (R 2008),and despite its significant advantages, scientific computing on Linux is not as widespread as it could be. To address this problem, the Meraka Institute is developing scubuntu, an Ubuntu-based Linux distribution for scientists. The project vision is that scubuntu will become the premier choice of desktop operating system for researchers and scientists.

1. Introduction The scubuntu project is an initiative to develop an Ubuntu-based Linux distribution specifically targeted at scientific users and researchers. This paper highlights the investigative work undertaken to determine the suitability of a CDbased installation program for scubuntu. An experimental prototype was developed, based on the standard Ubuntu installer. The prototype installer allows users to select and install scientific software based on their field of study or profile.

A number of challenges are associated with scientific computing on Linux. The scubuntu project seeks to address these problems. One of the major challenges is that scientific software is not installed by default in any Linux distribution. For most scientists, it is difficult to select, install and maintain appropriate scientific software on Linux. These tasks require knowledge of the OSS applications that are available as well as technical proficiency on Linux. This can be time consuming, and the results are usually not shared, so effort is unnecessarily duplicated. The scubuntu project

This paper also highlights some of the key lessons learned while developing the prototype. Section 2 provides some background on open source software (OSS) and its connection with science, as well some background information on

1

scubuntu itself. The scubuntu installer is discussed in section 3. Sections 4 and 5 summarise, present some conclusions and discuss possible future work.

sharing ideas and collaborating since the early days of programming and the Internet. The term 'open source' and the ideas and principles behind it are being applied to diverse fields. These include art, music, education and politics, where new terms like 'open source curricula', 'open source documentary', 'open source movie productions', 'open source politics', and 'open source governance' are being used (Open Source 2008). In these new fields, the ideas of open source are being applied to create works that cost less and involve more input from outsiders. The following section looks at the correspondence between these open source concepts and the process of scientific discovery.

2. Background 2.1 Open source software Open source software (OSS) is software for which the source code is made available and can be freely modified and redistributed (Open Source Software 2008). OSS has been identified in the South African national R&D strategy (Government of the Republic of South Africa 2002, p. 45) as a vehicle for fostering local innovation and economic development. It promotes inclusivity by being freely available and allowing unconstrained customisation and modification.

2.2 Open source software and science There are clear similarities between the concepts of open source and the way in which scientific knowledge is generated. These similarities have been discussed by a number of authors. In particular, DiBona et al. (1999) identify the following: ● the sharing of information with peers ● the opportunities for others to take existing ideas further and to apply them in different contexts ● the generation of new ideas.

Goldman and Gabriel (2005, p. 6, 29) identify several key benefits of open source, including: ● that the user and developer communities work together to improve the functionality and quality of the software ● access to high-quality, free software ● access to advice and help on software design and development ● promoting participation in the development of software ● low cost ● engaging with end-users in design and testing ● shorter time to market ● harvesting innovation ● reduced support costs ● improved integration ● avoidance of vendor lock-in

In open source, program code and ideas are openly shared. This allows others to inspect the source code, provide ideas, critique or suggestions for improvement, provide fixes or other code contributions, or create new projects derived from the original. This is analogous to the work of scientists, who generate new knowledge that is based on, or grounded in, existing knowledge (Adler 1999).

Studies conducted on open source and innovation have shown that open source and open communication can lead to innovative solutions (Goldman and Gabriel 2005). Efforts like InnoCentive (InnoCentive Open Innovation 2008) and the work of Lakhani et al. (2007) have shown that opening up and asking for input from a wider audience can provide huge benefit and lead to more innovative solutions. This form of user participation during the production of software is a key property of most successful OSS projects.

The adoption of OSS in industry and academic institutions has increased in recent years. Laird (2002) mentions that many labs and scientists are moving away from proprietary scientific applications and are beginning to use and improve open source scientific applications. Reasons for this include: ● no-cost licensing ● simpler license management ● improved large-scale programmability and flexibility ● convenience of development ● better integration

The open source ideas of openness, sharing and collaboration aren't new. Developers have been

2

● ● ●

better performance concerns around intellectual propriety better support

profiles are coupled with a specification identifying the open source scientific tools that are most appropriate for that profile. The refinement of these profiles and package collections is an ongoing activity that will be driven by the scubuntu user community.

The use of OSS for scientific computing can significantly lower the barriers-to-entry for poorly funded research institutions in developing countries. At the same time, it can empower scientists to contribute and collaborate with their peers globally.

In addition to the development of profiles and the identification of high-quality open source software, scubuntu focuses on the packaging, integration and improvement of existing OSS scientific tools, and on the development of new tools where no OSS alternatives exist.

Linux, as an example of an open source operating system, offers a good candidate OSS platform for adoption by researchers. There are scientific tools that run on Linux for almost all scientific disciplines. Despite its significant advantages, though, scientific computing on Linux is not as widespread as it could be. A number of challenges are associated with scientific computing on Linux. One of the major challenges is that scientific software is not installed by default in any Linux distribution. For most scientists, it is difficult to select, install and maintain appropriate scientific software on Linux. These tasks require knowledge of the OSS applications that are available, as well as technical proficiency on Linux. They can be time consuming, and the results are usually not shared, so effort is unnecessarily duplicated (Fogwill 2008).

Goldman and Gabriel (2005) mention that 'innovation happens elsewhere' and that 'many advantages accrue when a company adopts the attitude that most innovation happens elsewhere and focuses on choosing the best outside innovations and figuring out the right distinguishing features to make its products competitive'. The scubuntu project adopts such an approach – it is based on a popular and successful open source Linux distribution called Ubuntu. This allows scubuntu to leverage the existing user and developer communities of Ubuntu, while adding value by collaborating with the Ubuntu developers to package scientific software. Ubuntu, in turn, is based on Debian, and benefits from the use of Debian's highly regarded package management system (Debian 2008).

To address these problems, the Meraka Institute (also known as the African Advanced Institute for ICT) is developing scubuntu, an Ubuntu-based (Ubuntu 2008) Linux distribution for scientists. The project vision is that scubuntu will become the premier choice of desktop operating system for researchers and scientists. The scubuntu project is discussed further in the following section.

2.3.2 Collaboration methods Open source projects are built around the concept of collaboration. Most collaboration on OSS projects happens via the Internet (Goldman and Gabriel 2005) (DiBona, Ockman and Stone 1999). Open source projects typically use a number of Internet resources to collaborate, including: ● on-line source code repositories for code management and sharing ● on-line mailing lists and internet relay chat for technical discussions ● on-line issue tracking tools ● on-line documentation

2.3 The scubuntu project 2.3.1 Overview Scubuntu is an OSS project to develop a desktop operating system designed specifically for scientists. The scubuntu project seeks to address the problems highlighted in the previous section by making scientific packages part of the default distribution and providing tools to ease their discovery, installation and management (Scubuntu 2008) (Fogwill 2008).

Goldman and Gabriel (2005, p.8) also stress the importance for OSS projects of building a sufficiently large community of contributing users and developers. A significant part of the scubuntu effort will be to create and sustain such a community of developers and scientists that

One of the key activities in scubuntu is the determination of profiles of scientists, based on their computing and software requirements. These

3

volunteer and collaborate to continuously improve the platform.

choosing appropriate licenses are thus critically important for open source projects.

Scubuntu uses Internet-based technologies to facilitate collaboration, to develop and share ideas, and to coordinate development. These technologies include wikis, weblogs, on-line project collaboration websites tools such as Launchpad (Launchpad 2008) and source code revision control systems such as Bazaar (Bazaar 2008).

For scubuntu, the process of selecting suitable scientific software to include in the distribution needs to consider the license under which that software is released. Some software packages have licenses that are 'viral', forcing derived works to be released under the same license, while other software packages have licenses that may be incompatible with those of existing packages in the distribution. These license issues must be carefully investigated and documented before any package can be added to the scubuntu distribution.

2.3.3 Community building A key element of the success of the scubuntu project is the extent to which it is adopted by a community of users and researchers. The scubuntu project aims to develop, grow and sustain such a community by: ● strongly aligning the scubuntu project with Ubuntu, to leverage the large community of existing scientific users that Ubuntu already has ● raising awareness of scubuntu through publication and exhibition at conferences and in journals ● inviting the participation of scientific users by posting on mailing lists and other online fora ● formal and informal discussions with research organisations and individual researchers to promote the use of scubuntu ● handing out CDs and promotional material at universities, Linux user group meetings and conferences ● providing good information and documentation (including information on profiles) on the project website ● publishing information about scubuntu on sites such as freshmeat.net and slashdot.org ● responding in a timeous, friendly and helpful manner to users who interact with the team to obtain advice, assistance or information

2.3.5 Comparison to other initiatives There are other efforts in the Linux community that seek to address the problems of scientific computing on OSS. These include: ● Scientific Linux (Scientific Linux 2008) is a rebuild (from source code) of Red Hat Enterprise Linux (Red Hat 2008). Scientific Linux focuses on providing a framework for the development of customised versions of Linux for use in laboratories. ● Poseidon Linux (Poseidon Linux 2008) is based on Ubuntu and previously on Kurumin Linux (Kurumin Linux 2008). It is similar to scubuntu, but does not provide the same flexibility (it does not provide a way for users to select which packages/profiles they wish to install). ● Scibuntu (Scibuntu 2008) is based on Ubuntu. Scibuntu is not a Linux distribution but a script that is run to install scientific applications on an existing Ubuntu installation. ● Other bioinformatics-focused Linux distributions such as Bioknoppix (Bioknoppix 2008) and Vlinux (VLinux 2008), both of which are based on Knoppix (Knoppix 2008). These distributions focus exclusively on bioinformatics. ● Edubuntu (Edubuntu 2008), which is based on Ubuntu, is focused on educational usage but also provides some scientific packages. Edubuntu does not allow package selection at install time – instead, base packages are installed and then extra packages can be selected after the base installation.

2.3.4 Licensing of scientific packages Goldman and Gabriel (2005, p.7) highlight that licenses grant the right to distribute and make changes to source code, but that they can also restrict what developers and users are allowed to do. Understanding the issues around licensing and

4

Ubuntu has been shown by DistroWatch (DistroWatch 2008) to be the most popular desktop Linux distribution. As such, the scubuntu team chose Ubuntu as the base for their distribution. Scubuntu clearly differentiates itself from the other Ubuntu-based projects above by: ● focusing on the development of a community of users and developers ● focusing on the development of profiles ● performing all work in the open and contributing back to Ubuntu ● packaging the appropriate tools into the core distribution to ease their installation, without compromising the users' ability to select their own preferred packages.

Ubiquity supports a number of alternative Graphical User Interfaces (GUIs), besides the default Gnome/GTK+ based one. These include: a base version, a KDE/Qt (KDE 2008) based front-end, a front-end customised for Mythbuntu (Mythbuntu 2008), and a non-interactive version for unattended installations. For the interactive versions, the Ubiquity GUI provides screens where users can for example ● select their language, country and keyboard layout ● select the disk partition on which to install Ubuntu ● configure the network ● create user accounts and passwords It also provides a final screen (before the actual installation commences) displaying a summary of what was entered and selected by the user.

3. The scubuntu installer Scubuntu is based on the Ubuntu “live CD” and a modified version of Ubiquity, the Ubuntu installation program. Ubiquity is a simple graphical installation program that runs from a live CD and is designed to integrate well with Debian- and Ubuntu-based systems. It is written largely in Python and uses the Debian Installer (d-i) as a back-end for many of its functions (Ubiquity 2008) (Debian Installer 2008) (Ubuntu Installer Development 2008).

This initial phase of user input is called Phase 1. Phase 2 follows Phase 1 and ● formats the selected hard disk partition(s), ● copies an entire mirror of the content of the live CD onto the selected disk partition – this essentially installs the base Ubuntu system, ● reboots the system into the newly installed Ubuntu desktop.

The following sections discuss how Ubiquity was modified to provide the features required by scubuntu.

The following section discusses the various alternatives that exist for allowing users to select the packages to be installed.

3.1 Ubiquity overview The scubuntu team decided to investigate the use of CD/DVD-based installer for scubuntu, with all the scientific applications already on the CD. This approach could work well for the markets in developing countries, where the lack of good connectivity is a constraint preventing the use of network-based installers. This section describes how this CD-based installer operates.

3.2 Package selection methods There are a number of approaches to allowing the users to select and install packages. This section discusses these approaches and describes the method adopted by scubuntu. Mythbuntu , another “flavour” of Ubuntu, adds additional screens to Ubiquity. These screens allow the user to select custom packages for installation. The Mythbuntu screens provide a hard-coded, preselected list of extra packages to install from.

Ubuntu is distributed on a live CD called the Ubuntu desktop CD. The Ubuntu desktop CD is a bootable CD and contains a complete operating system that runs completely from the CD. It includes a Gnome (Gnome 2008) graphical desktop environment. After the CD boots up and starts a Gnome graphical session, the Ubiquity installer can be executed from the user's desktop to install Ubuntu onto the selected hard drive.

Older versions of Edubuntu used the normal ubiquity screens but with a modified Phase 2 that installed a predefined set of additional educational and scientific packages. The current version of Edubuntu no longer has its own installer – it is

5

installed simply as an “add-on” to a normal Ubuntu system. Scibuntu does not provide a CD-based installer. It rather provides scripts that are run on a normal Ubuntu system (post installation) to install additional packages. The scubuntu installer will follow a similar strategy to Mythbuntu by providing an additional selection page where users can select scientific packages from a list. The difference will be that the list of available packages will be created dynamically and will be grouped using scientific profiles. These profiles and their associated packages will be read from an XML file to create a tree-based package selection screen. Each new release of scubuntu will provide a new and updated XML file describing the packages and profiles.

Figure 1: An example of a profile with metapackages The hierarchy of profiles, sub-profiles and packages is stored in an XML file. The scubuntu installer reads the XML file and creates a tree component representing this hierarchy. Each profile, sub-profile and package has a checkbox. Users can mark these checkboxes to select the profiles and/or packages they wish to have installed. The scubuntu package and profile selection screen is shown in Figure 2.

3.3 Profiles Scubuntu employs the concept of profiles. Profiles represent categories of packages or scientific domains (i.e. fields of study). Profiles are associated with lists of individual application packages. In addition, they can also be associated with sub-profiles. More specific profiles can thus be nested within more general profiles to form a hierarchical structure. For example, Figure 1 describes the situation where scubuntu has a toplevel profile called Biology with sub-profiles Biochemistry and Molecular Biology. Each of these sub-profiles then contain lists of software packages appropriate for Bio-Chemists and Molecular Biologists, respectively.

For the first prototype of scubuntu, only two scientific fields are included - biosciences (or biological sciences) and geographic information systems (GIS). These fields were selected because of the availability of expert researchers in these fields within the CSIR who were willing to assist the scubuntu team in designing appropriate profiles.

Profiles and sub-profiles will be implemented as Debian meta-packages in scubuntu. Metapackages are packages that group together a set of other applications. Meta-packages do not themselves contain any application files or data, but rather specify a list of package dependencies. Selecting the meta-package for installation automatically selects all its dependencies for installation as well. Meta-packages thus provide a mechanism for simplifying the task of installing sets of related packages (Tille 2007). In Figure 1, biology, molecular-biology, biochemistry and baseplotting-tools would all be meta-packages, while the remaining nodes would be real application packages.

6

On this screen, packages are displayed as a package tree, which is created from the package.xml file. The ScubuntuGUICreator class in scubuntu_ui.py is responsible for reading the XML package file and creating the package tree and selection screen. Nodes in the tree can be selected or deselected. If a parent node (i.e. a profile or subprofile) is selected, its children are all selected automatically as well. If a parent node is deselected, then its child nodes will also be deselected. If a child node of a previously selected parent node is deselected, the parent node must be deselected as well to indicate that all its children are no longer selected.

Figure 2: Scubuntu's scientific package select screen

As the user selects or deselects packages, events are fired. These events result in the invocation of methods to add or remove the selected packages from a list. This list is then iterated and its contents are stored in the Debconf database for use in the second phase when the actual packages are installed.

3.4 Installer prototype The UML collaboration diagram in Figure 3 shows the Python classes and scripts that Ubiquity uses during the installation process. It also shows where code changes have been made for scubuntu.

'Debconf is a configuration management system for Debian packages' (Hess 2007). Debconf is used to request user input during the installation of packages - the user is requested to answer certain configuration questions and these answers are stored in Debconf's database (Debconf 2008).

The installation process starts by displaying the Gnome/GTK+ input screens to the user. The additional scubuntu page, which allows for the selection of scientific packages, is also displayed.

7 Figure 3: Ubiquity collaboration diagram

Ubiquity uses Debconf to track the user’s installation preferences, while scubuntu merely uses Debconf to record the packages the user selected for installation.

● ● ●

In the second phase, the standard Ubuntu packages are copied from the installation CD to the disk. The installation script, install.py, was modified to read the additional scubuntu package list from package_list.txt and iterate over this list to check whether the package is marked for installation in the Debconf database. The resultant list is later passed to APT (Advanced Packaging Tool), which performs the actual installation of the packages.

● ● ● ●

Few people are aware of Ubuntu as platform for scientific computing Finding and choosing best scientific tools on Ubuntu is difficult OSS scientific tools are not integrated in cohesive suites Some OSS scientific tools provide only limited functionality OSS tools are not available for certain scientific tasks Ubuntu is not certified to run all proprietary scientific software Software maintenance requires technical proficiency

The approach taken by scubuntu addresses some of these problems by: ● Making all work publicly available ● Formal and informal collaboration ● The creation of user and developer communities ● Integrating scientific OSS into cohesive suites of packages ● Centralising technical management and maintenance of packages

An alternative approach to that of using Debconf would have been to store only the selected packages in the package_list.txt file. However, this alternative was not considered as Debconf provides a richer configuration environment (Debconf 2008) that could be used in more sophisticated ways later by scubuntu. Currently, the modifications that were made to Ubiquity are being incorporated into a locally built scubuntu live CD/DVD and will be tested by scientific users. After testing and additional improvement (if required), the changes will be incorporated into the main (upstream) Ubiquity source tree.

In addition, the work on the installation program presented in this paper further addresses these difficulties by: ● Pre-selecting the best-of-breed scientific open source software and grouping these packages into profiles ● Predefining profiles for supported scientific domains ● Providing a user-friendly way for scientists to select these profiles and install the associated package sets.

4. Summary This paper discussed the ongoing effort undertaken by the scubuntu team to create an open source Linux distribution that provides researchers and scientists with better package selection and installation features. To achieve this goal, the scubuntu team modified the standard Ubuntu live CD installer (Ubiquity), to include a package/profile selection screen. This selection screen provides a list of scientific profiles (and associated packages) for users to choose from. The selected packages are then automatically installed. For this initial prototype, the focus was limited to two scientific fields.

The scubuntu prototype presented here will be tested by scientists in a number of scientific fields, to determine its suitability, usability and the extent to which it can be expected to be adopted by scientists. Future work will include the development of new profiles to cover additional scientific fields, the refinement of existing profiles, and the investigation of additional options for the installer program. In particular, it is thought that the current design may not be optimal, as it is severely restricted by the amount of data that can be placed on a CD/DVD. There may be significant benefit to taking a hybrid approach, combining elements of the current design with elements of the Edubuntu approach where extra meta-packages are provided as “add-ons” after installation. This could result in

5. Conclusions and future work Despite the many potential benefits for scientists of using Linux as their desktop operating system, a number of challenges make this problematic:

8

scubuntu comprising of a number of CD/DVDs. The first CD would be a modified Ubuntu live CD that includes (in additional to normal packages) a set of packages commonly useful to all scientists, regardless of their field of study. Additional “addon” CDs could be generated for each supported scientific field – these CDs would include the domain-specific packages for that particular field of study.

Goldman, R., Gabriel, R. P. 2005, Innovation Happens Elsewhere: Open Source as business strategy, Morgan Kaufmann Publishers Inc., San Francisco, CA Government of the Republic of South Africa 2002, South Africa's National Research and Development Strategy, The Government of the Republic of South Africa, Pretoria, South Africa. Available from: http://www.info.gov.za/view/DownloadFileAction? id=70261

6. References Adler, S. 1999, Open source/open science, Linux J., page 10.

Hess, J. 21 October 2007, Debconf, September 2008, http://kitenet.net/~joey/code/debconf/

Bazaar 2008, viewed 1 September 2008, http://bazaar-vcs.org/

InnoCentive Open Innovation 2008, viewed 1 September 2008, http://www.innocentive.com/

Bioknoppix 2008, viewed 1 September 2008, http://bioknoppix.hpcf.upr.edu/

KDE 2008, viewed 1 September 2008, http://www.kde.org/

Debconf, viewed 1 September 2008, http://en.wikipedia.org/wiki/Debconf_(software_pac kage)

Knoppix 2008,viewed http://www.knoppix.net/

Debian 2008, viewed 1 September 2008, http://www.debian.org/

September

September

2008,

Laird, C 2002, Open source in the lab, viewed 1 September 2008, http://www.ibm.com/developerworks/library/loslab/?n-l-10242

DiBona, C., Ockman, S., and Stone, M. 1999, Open Sources: Voices from the Open Source Revolution , O’ Reilly & Associates, Sebastopol, CA 1

1

Kurumin Linux 2008, viewed 1 September 2008, http://www.gdhpress.com.br/kurumin/

Debian Installer 2008, viewed 1 September 2008, http://www.debian.org/devel/debian-installer/

DistroWatch, viewed http://distrowatch.com/

viewed 1

Lakhani, K. R., Jeppesen L. B., Lohse, P. A., Panetta, J.A., 2007, The Value of Openness in Scientific Problem Solving, viewed 1 September 2008, http://www.hbs.edu/research/pdf/07-050.pdf

2008,

Edubuntu 2008, viewed 1 September 2008, http://edubuntu.org/

Launchpad 2008, viewed 1 September 2008, https://launchpad.net/

Fogwill, T. 2008, Scubuntu: Enabling the extended research and innovation mandate through an Ubuntu‐based Linux distribution for scientists and researchers, 8th Conference of the South African Research and Innovation Management Association. Available from: http://www.sarima.co.za/images/stories/scubuntu_t _fogwill.pdf

Lowe, D. 22 August 2008, Open Source Science?, viewed 1 September 2008, http://pipeline.corante.com/archives/2008/08/22/op en_source_science.php

Gnome 2008, viewed http://www.gnome.org/

1

September

Matlab 2008, viewed 20 October 2008, http://www.mathworks.com/products/matlab/ Mythbuntu 2008, viewed 1 September 2008, http://www.mythbuntu.org/

2008,

9

Open Source Initiative 2008, viewed 1 September 2008, http://opensource.org

scubuntu 2008, viewed 1 September http://scubuntu.meraka.org.za/wiki/

Open Source Software 2008, viewed 1 September 2008, http://en.wikipedia.org/wiki/Open-source_software

Tille, A. 15 October 2007, Custom Debian Distributions, viewed 1 September 2008, http://doc.mdcc.cx:8080/doc/cdd-doc/debiancdd.en.pdf

Open Source 2008, viewed 1 September 2008, http://en.wikipedia.org/wiki/Open_source OpenWetWare 2008, viewed 1 September 2008, http://openwetware.org/wiki/Main_Page Poseidon Linux, viewed 1 September 2008, https://sites.google.com/site/poseidonlinux/

2008,

Ubiquity 2008, viewed 1 September https://wiki.ubuntu.com/Ubiquity

2008,

Ubuntu 2008, viewed http://www.ubuntu.com/

2008,

1

September

Ubuntu Installer Development 2008, https://wiki.ubuntu.com/InstallerDevelopment

R 2008, viewed 20 October 2008, http://www.r-project.org/

Vlinux 2008, viewed 1 September 2008, http://www.bioinformatics.org/vlinux/

Red Hat 2008, viewed 1 September 2008, http://www.redhat.com/ Scibuntu 2008, viewed 1 September http://scibuntu.sourceforge.net/

2008,

7. Endnote Contribution to the paper was almost equally distributed between the authors, although Pieter van Zyl did the bulk of the background reading. He also did most of the technical development and investigation required to develop the prototype installer.

Scientific Linux 2008, viewed 1 September 2008, https://www.scientificlinux.org/ SciLab 2008, viewed 20 October 2008, http://www.scilab.org/

10