forked from M-Labs/artiq-extrapkg
install conda
This commit is contained in:
commit
d2d79b180c
|
@ -0,0 +1,137 @@
|
|||
{
|
||||
"nodes": {
|
||||
"artiq": {
|
||||
"inputs": {
|
||||
"mozilla-overlay": "mozilla-overlay",
|
||||
"nixpkgs": "nixpkgs",
|
||||
"sipyco": "sipyco",
|
||||
"src-migen": "src-migen",
|
||||
"src-misoc": "src-misoc",
|
||||
"src-pythonparser": "src-pythonparser"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1644635081,
|
||||
"narHash": "sha256-d7rDZjHK5znKtUT72uVI4eegoRWtAqkJamyHQ+7FuZg=",
|
||||
"ref": "master",
|
||||
"rev": "b3b73948a256e2d738f05948671dacbd55dcf557",
|
||||
"revCount": 7968,
|
||||
"type": "git",
|
||||
"url": "https://github.com/m-labs/artiq.git"
|
||||
},
|
||||
"original": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/m-labs/artiq.git"
|
||||
}
|
||||
},
|
||||
"mozilla-overlay": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1643634764,
|
||||
"narHash": "sha256-EcFlgzZnZSHwZixELYV1pa267t+u5mCeLhSNBeAA/+c=",
|
||||
"owner": "mozilla",
|
||||
"repo": "nixpkgs-mozilla",
|
||||
"rev": "f233fdc4ff6ba2ffeb1e3e3cd6d63bb1297d6996",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "mozilla",
|
||||
"repo": "nixpkgs-mozilla",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1644472683,
|
||||
"narHash": "sha256-sP6iM4NksOYO6NFfTJ96cg+ClPnq6cdY30xKA1iYtyU=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "7adc9c14ec74b27358a8df9b973087e351425a79",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "NixOS",
|
||||
"ref": "nixos-21.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"root": {
|
||||
"inputs": {
|
||||
"artiq": "artiq"
|
||||
}
|
||||
},
|
||||
"sipyco": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"artiq",
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1644634510,
|
||||
"narHash": "sha256-5p88NKK/DTdb0F0+/7uObBohthdxHWLl782AaiPRf8E=",
|
||||
"owner": "m-labs",
|
||||
"repo": "sipyco",
|
||||
"rev": "e9e69527927761544ab6d62f751e1ff512d1e661",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "m-labs",
|
||||
"repo": "sipyco",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"src-migen": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1639659493,
|
||||
"narHash": "sha256-qpVj/yJf4hDDc99XXpVPH4EbLC8aCmEtACn5qNc3DGI=",
|
||||
"owner": "m-labs",
|
||||
"repo": "migen",
|
||||
"rev": "ac703010eaa06ac9b6e32f97c6fa98b15de22b31",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "m-labs",
|
||||
"repo": "migen",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"src-misoc": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1641889368,
|
||||
"narHash": "sha256-0Ai25lry9ju1HxFmfMRNKG8mamBqvw+kvDfpuK8Dtjo=",
|
||||
"ref": "master",
|
||||
"rev": "7242dc5a41732135425acc4871487461dfae6c66",
|
||||
"revCount": 2419,
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/m-labs/misoc.git"
|
||||
},
|
||||
"original": {
|
||||
"submodules": true,
|
||||
"type": "git",
|
||||
"url": "https://github.com/m-labs/misoc.git"
|
||||
}
|
||||
},
|
||||
"src-pythonparser": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1628745371,
|
||||
"narHash": "sha256-p6TgeeaK4NEmbhimEXp31W8hVRo4DgWmcCoqZ+UdN60=",
|
||||
"owner": "m-labs",
|
||||
"repo": "pythonparser",
|
||||
"rev": "5413ee5c9f8760e95c6acd5d6e88dabb831ad201",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "m-labs",
|
||||
"repo": "pythonparser",
|
||||
"type": "github"
|
||||
}
|
||||
}
|
||||
},
|
||||
"root": "root",
|
||||
"version": 7
|
||||
}
|
|
@ -0,0 +1,53 @@
|
|||
{
|
||||
description = "Additional packages for ARTIQ";
|
||||
|
||||
inputs.artiq.url = git+https://github.com/m-labs/artiq.git;
|
||||
|
||||
outputs = { self, artiq }:
|
||||
let
|
||||
pkgs = import artiq.inputs.nixpkgs { system = "x86_64-linux"; };
|
||||
|
||||
condaDeps = with pkgs; [ zlib xorg.libSM xorg.libICE xorg.libX11 xorg.libXau xorg.libXi xorg.libXrender libselinux libGL ];
|
||||
# Use the full Anaconda distribution, which already contains conda-build and its many dependencies.
|
||||
condaInstaller = pkgs.fetchurl {
|
||||
url = "https://repo.anaconda.com/archive/Anaconda3-2021.11-Linux-x86_64.sh";
|
||||
sha256 = "sha256-/t+eNAA5VX97XoqKhq/6nSmfXpggFEvXuSrp9+4IrGA=";
|
||||
};
|
||||
condaInstallerEnv = pkgs.buildFHSUserEnv {
|
||||
name = "conda-installer-env";
|
||||
targetPkgs = pkgs: condaDeps;
|
||||
};
|
||||
condaInstalled = pkgs.stdenvNoCC.mkDerivation {
|
||||
name = "conda-installed";
|
||||
src = condaInstaller;
|
||||
buildInputs = [ condaInstallerEnv ];
|
||||
phases = [ "buildPhase" "installPhase" ];
|
||||
buildPhase =
|
||||
''
|
||||
cp $src conda-installer.sh
|
||||
chmod +x conda-installer.sh
|
||||
# keep the same file length to avoid breaking embedded payload offsets
|
||||
sed -i 0,/unset\ LD_LIBRARY_PATH/s//\#nset\ LD_LIBRARY_PATH/ conda-installer.sh
|
||||
'';
|
||||
installPhase =
|
||||
''
|
||||
conda-installer-env -c "./conda-installer.sh -p $out -b"
|
||||
substituteInPlace $out/lib/python3.9/site-packages/conda/gateways/disk/__init__.py \
|
||||
--replace "os.chmod(path, 0o2775)" "pass"
|
||||
'';
|
||||
};
|
||||
condaBuilderEnv = pkgs.buildFHSUserEnv {
|
||||
name = "conda-builder-env";
|
||||
targetPkgs = pkgs: condaDeps ++ [ condaInstalled ];
|
||||
};
|
||||
|
||||
in rec {
|
||||
packages.x86_64-linux = {
|
||||
inherit condaBuilderEnv;
|
||||
};
|
||||
|
||||
hydraJobs = {
|
||||
inherit (packages.x86_64-linux) condaBuilderEnv;
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Reference in New Issue