Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
conda: init at miniconda3 4.3.31 (#34872)
* conda: init at miniconda3 4.3.31
- Loading branch information
Showing
2 changed files
with
75 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,71 @@ | ||
{ lib | ||
, stdenv | ||
, fetchurl | ||
, runCommand | ||
, makeWrapper | ||
, buildFHSUserEnv | ||
, libselinux | ||
, xorg | ||
# Conda installs its packages and environments under this directory | ||
, installationPath ? "~/.conda" | ||
# Conda manages most pkgs itself, but expects a few to be on the system. | ||
, condaDeps ? [ stdenv.cc xorg.libSM xorg.libICE xorg.libXrender libselinux ] | ||
# Any extra nixpkgs you'd like available in the FHS env for Conda to use | ||
, extraPkgs ? [ ] | ||
}: | ||
|
||
# How to use this package? | ||
# | ||
# First-time setup: this nixpkg downloads the conda installer and provides a FHS | ||
# env in which it can run. On first use, the user will need to install conda to | ||
# the installPath using the installer: | ||
# $ nix-env -iA conda | ||
# $ conda-shell | ||
# $ conda-install | ||
# | ||
# Under normal usage, simply call `conda-shell` to activate the FHS env, | ||
# and then use conda commands as normal: | ||
# $ conda-shell | ||
# $ conda install spyder | ||
let | ||
version = "4.3.31"; | ||
src = fetchurl { | ||
url = "https://repo.continuum.io/miniconda/Miniconda3-${version}-Linux-x86_64.sh"; | ||
sha256 = "1rklq81s9v7xz1q0ha99w2sl6kyc5vhk6b21cza0jr3b8cgz0lam"; | ||
}; | ||
|
||
conda = runCommand "conda-install" { buildInputs = [ makeWrapper ]; } | ||
'' | ||
mkdir -p $out/bin | ||
cp ${src} $out/bin/miniconda-installer.sh | ||
chmod +x $out/bin/miniconda-installer.sh | ||
makeWrapper \ | ||
$out/bin/miniconda-installer.sh \ | ||
$out/bin/conda-install \ | ||
--add-flags "-p ${installationPath}" \ | ||
--add-flags "-b" | ||
''; | ||
in | ||
buildFHSUserEnv { | ||
name = "conda-shell"; | ||
targetPkgs = pkgs: (builtins.concatLists [ [ conda ] condaDeps extraPkgs]); | ||
profile = '' | ||
# Add conda to PATH | ||
export PATH=${installationPath}/bin:$PATH | ||
# Paths for gcc if compiling some C sources with pip | ||
export NIX_CFLAGS_COMPILE="-I${installationPath}/include" | ||
export NIX_CFLAGS_LINK="-L${installationPath}lib" | ||
# Some other required environment variables | ||
export FONTCONFIG_FILE=/etc/fonts/fonts.conf | ||
export QTCOMPOSE=${xorg.libX11}/share/X11/locale | ||
''; | ||
|
||
meta = { | ||
description = "Conda is a package manager for Python"; | ||
homepage = https://conda.io/; | ||
platforms = lib.platforms.linux; | ||
license = lib.licenses.bsd3; | ||
maintainers = with lib.maintainers; [ jluttine bhipple ]; | ||
}; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters