Cargando…

Software packaging and distribution for LHCb using Nix

Software is an essential and rapidly evolving component of modern high energy physics research. The ability to be agile and take advantage of new and updated packages from the wider data science community is allowing physicists to efficiently utilise the data available to them. However, these packag...

Descripción completa

Detalles Bibliográficos
Autor principal: Burr, Chris
Lenguaje:eng
Publicado: 2018
Acceso en línea:http://cds.cern.ch/record/2633268
_version_ 1780959618967535616
author Burr, Chris
author_facet Burr, Chris
author_sort Burr, Chris
collection CERN
description Software is an essential and rapidly evolving component of modern high energy physics research. The ability to be agile and take advantage of new and updated packages from the wider data science community is allowing physicists to efficiently utilise the data available to them. However, these packages often introduce complex dependency chains and evolve rapidly introducing specific, and sometimes conflicting, version requirements which can make managing environments challenging. Additionally, there is a need to replicate old environments when generating simulated data and to utilise pre-existing datasets. Nix is a "purely functional package manager" which allows for software to be built and distributed with fully specified dependencies, making packages independent from those available on the host. Builds are reproducible and multiple versions/configurations of each package can coexist with the build configuration of each perfectly preserved. Here we will give an overview of Nix followed by the work that has been done to use Nix in LHCb and the advantages and challenges that this brings.
id cern-2633268
institution Organización Europea para la Investigación Nuclear
language eng
publishDate 2018
record_format invenio
spelling cern-26332682019-09-30T06:29:59Zhttp://cds.cern.ch/record/2633268engBurr, ChrisSoftware packaging and distribution for LHCb using NixSoftware is an essential and rapidly evolving component of modern high energy physics research. The ability to be agile and take advantage of new and updated packages from the wider data science community is allowing physicists to efficiently utilise the data available to them. However, these packages often introduce complex dependency chains and evolve rapidly introducing specific, and sometimes conflicting, version requirements which can make managing environments challenging. Additionally, there is a need to replicate old environments when generating simulated data and to utilise pre-existing datasets. Nix is a "purely functional package manager" which allows for software to be built and distributed with fully specified dependencies, making packages independent from those available on the host. Builds are reproducible and multiple versions/configurations of each package can coexist with the build configuration of each perfectly preserved. Here we will give an overview of Nix followed by the work that has been done to use Nix in LHCb and the advantages and challenges that this brings.Poster-2018-652oai:cds.cern.ch:26332682018-07-10
spellingShingle Burr, Chris
Software packaging and distribution for LHCb using Nix
title Software packaging and distribution for LHCb using Nix
title_full Software packaging and distribution for LHCb using Nix
title_fullStr Software packaging and distribution for LHCb using Nix
title_full_unstemmed Software packaging and distribution for LHCb using Nix
title_short Software packaging and distribution for LHCb using Nix
title_sort software packaging and distribution for lhcb using nix
url http://cds.cern.ch/record/2633268
work_keys_str_mv AT burrchris softwarepackaginganddistributionforlhcbusingnix