Automated software packaging and installation for the ATLAS experiment Authors: Michael Gardner (RHUL), Simon George (RHUL), Roger Jones (Lancaster), Christian Arnault (Orsay), Saul Youssef (Boston) Keyword: ATLAS experiment; installation; packaging; deployment Managing the distribution and installation of large and complex software suites such as the ATLAS offline software[1] gives rise to a variety of problems. To be able to deploy software on the Grid it must have a completely automated installation procedure which addresses issues such compatability, updates and external software required. Installations are needed to satisfy the different requirements of the production run, a developer (with his/her own code) and the possibility to rebuild from source. A solution to this problem has been developed in the context of ATLAS offline software. ATLAS uses CMT[2] to configure and manage `packages', which are the basic units of the software. Crucially for this project, CMT allows the definition and imposition of conventations for package metadata. Pacman[3] is a package manager that facilitates transparent fetching, installation and management of software packages. These two pieces of widely used software provide much of the functionality required to meet the distribution and installation needs of ATLAS; the main work is to interface them and solve some problems of the ATLAS software itself. To this end, additional tools have been developed to extract files in common package formats (such as tar and rpm) and make the Pacman cache files. The cache files describe all the information needed to fetch and install a package, including its dependencies on other packages. These tools work closely with cmt to exploit the conventions for expresseing package metadata. External packages are handled by additional metadata written in interface packages, thus allowing them to be packaged in a similar way. The presence of basic system packages is tested before the download and installation commences. [1] ATLAS offline software http://atlas.web.cern.ch/Atlas/GROUPS/SOFTWARE/OO/ [2] CMT http://www.cmtsite.org/ [3] Pacman http://physics.bu.edu/~youssef/pacman/