nixpkgs/pkgs/applications/virtualization/charliecloud/default.nix
2020-04-10 17:54:53 +01:00

49 lines
1.3 KiB
Nix

{ stdenv, fetchFromGitHub, python }:
stdenv.mkDerivation rec {
version = "0.12";
pname = "charliecloud";
src = fetchFromGitHub {
owner = "hpc";
repo = "charliecloud";
rev = "v${version}";
sha256 = "177rcf1klcxsp6x9cw75cmz3y2izgd1hvi1rb9vc6iz9qx1nmk3v";
};
buildInputs = [ python ];
preConfigure = ''
substituteInPlace Makefile --replace '/bin/bash' '${stdenv.shell}'
patchShebangs test/
'';
makeFlags = [
"PREFIX=$(out)"
"LIBEXEC_DIR=lib/charliecloud"
];
postInstall = ''
mkdir -p $out/share/charliecloud
mv $out/lib/charliecloud/examples $out/share/charliecloud
mv $out/lib/charliecloud/test $out/share/charliecloud
'';
meta = {
description = "User-defined software stacks (UDSS) for high-performance computing (HPC) centers";
longDescription = ''
Charliecloud uses Linux user namespaces to run containers with no
privileged operations or daemons and minimal configuration changes on
center resources. This simple approach avoids most security risks
while maintaining access to the performance and functionality already
on offer.
'';
homepage = "https://hpc.github.io/charliecloud";
license = stdenv.lib.licenses.asl20;
maintainers = [ stdenv.lib.maintainers.bzizou ];
platforms = stdenv.lib.platforms.linux;
};
}