Merge staging-next into staging

This commit is contained in:
github-actions[bot] 2022-04-04 00:02:45 +00:00 committed by GitHub
commit c9154e5e14
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
31 changed files with 849 additions and 539 deletions

View File

@ -89,6 +89,11 @@ else
fi fi
# Required by the activation script
install -m 0755 -d /etc /etc/nixos
install -m 01777 -d /tmp
# Run the script that performs all configuration activation that does # Run the script that performs all configuration activation that does
# not have to be done at boot time. # not have to be done at boot time.
echo "running activation script..." echo "running activation script..."

View File

@ -102,7 +102,6 @@ in
]; ];
systemd.tmpfiles.rules = [ systemd.tmpfiles.rules = [
"d /etc/nixos 0755 root root - -"
"d /nix/var 0755 root root - -" "d /nix/var 0755 root root - -"
"L+ /nix/var/nix/gcroots/booted-system 0755 root root - /run/booted-system" "L+ /nix/var/nix/gcroots/booted-system 0755 root root - /run/booted-system"
"d /run/lock 0755 root root - -" "d /run/lock 0755 root root - -"

View File

@ -42,7 +42,7 @@ let
nodes = { }; nodes = { };
testScript = testScript =
'' ''
nodes.machine = create_machine(${machineConfig}) machine = create_machine(${machineConfig})
machine.start() machine.start()
machine.wait_for_unit("multi-user.target") machine.wait_for_unit("multi-user.target")
machine.succeed("nix store verify --no-trust -r --option experimental-features nix-command /run/current-system") machine.succeed("nix store verify --no-trust -r --option experimental-features nix-command /run/current-system")
@ -83,7 +83,7 @@ let
name = "boot-netboot-" + name; name = "boot-netboot-" + name;
nodes = { }; nodes = { };
testScript = '' testScript = ''
nodes.machine = create_machine(${machineConfig}) machine = create_machine(${machineConfig})
machine.start() machine.start()
machine.wait_for_unit("multi-user.target") machine.wait_for_unit("multi-user.target")
machine.shutdown() machine.shutdown()
@ -138,7 +138,7 @@ in {
if os.system("qemu-img create -f qcow2 -F raw -b ${sdImage} ${mutableImage}") != 0: if os.system("qemu-img create -f qcow2 -F raw -b ${sdImage} ${mutableImage}") != 0:
raise RuntimeError("Could not create mutable linked image") raise RuntimeError("Could not create mutable linked image")
nodes.machine = create_machine(${machineConfig}) machine = create_machine(${machineConfig})
machine.start() machine.start()
machine.wait_for_unit("multi-user.target") machine.wait_for_unit("multi-user.target")
machine.succeed("nix store verify -r --no-trust --option experimental-features nix-command /run/current-system") machine.succeed("nix store verify -r --no-trust --option experimental-features nix-command /run/current-system")

View File

@ -39,7 +39,7 @@ in makeTest {
nodes = { nodes = {
# System configuration used for installing the installedConfig from above. # System configuration used for installing the installedConfig from above.
nodes.machine = { config, lib, pkgs, ... }: with lib; { machine = { config, lib, pkgs, ... }: with lib; {
imports = [ imports = [
../modules/profiles/installation-device.nix ../modules/profiles/installation-device.nix
../modules/profiles/base.nix ../modules/profiles/base.nix

View File

@ -6,18 +6,18 @@
buildGoModule rec { buildGoModule rec {
pname = "arkade"; pname = "arkade";
version = "0.8.16"; version = "0.8.18";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "alexellis"; owner = "alexellis";
repo = "arkade"; repo = "arkade";
rev = version; rev = version;
sha256 = "sha256-NiUv7yl1nA7a826FHDF+1MhYscXkQjUpxZo2ZWrL+VQ="; sha256 = "sha256-VQI2eAxOkOkwYkTM/UyyK6lnXFoLFHWE/ekm5qLN9OE=";
}; };
CGO_ENABLED = 0; CGO_ENABLED = 0;
vendorSha256 = "sha256-ipLVzBkliQSPBZTL5FU8xosTVjxFsUVlAvO0a0q+j2o="; vendorSha256 = "sha256-An52QMjHaHRIicxCBpjgi+S2QeKXhB9rndjV+FIkS3c=";
# Exclude pkg/get: tests downloading of binaries which fail when sandbox=true # Exclude pkg/get: tests downloading of binaries which fail when sandbox=true
subPackages = [ subPackages = [
@ -42,6 +42,6 @@ buildGoModule rec {
homepage = "https://github.com/alexellis/arkade"; homepage = "https://github.com/alexellis/arkade";
description = "Open Source Kubernetes Marketplace"; description = "Open Source Kubernetes Marketplace";
license = licenses.mit; license = licenses.mit;
maintainers = with maintainers; [ welteki ]; maintainers = with maintainers; [ welteki techknowlogick ];
}; };
} }

View File

@ -86,5 +86,9 @@ rec {
gcc = gcc10; # can bump to 11 along with stdenv.cc gcc = gcc10; # can bump to 11 along with stdenv.cc
}; };
# Make sure to only ever update this to a version that is compatible with the
# latest cudnn, nccl, cutensor, etc! It sometimes happens that CUDA versions
# are released prior to compatibility with the rest of the ecosystem. And
# don't forget to request a review from @NixOS/cuda-maintainers!
cudatoolkit_11 = cudatoolkit_11_5; cudatoolkit_11 = cudatoolkit_11_5;
} }

View File

@ -86,6 +86,46 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
doInstallCheck = true;
# preCheck rather than preInstallCheck because this is what pytestCheckHook
# calls (coming from the python world)
preCheck = ''
pushd ../autotest
# something has made files here read-only by this point
chmod -R u+w .
export HOME=$(mktemp -d)
export PYTHONPATH="$out/${pythonPackages.python.sitePackages}:$PYTHONPATH"
'';
installCheckInputs = with pythonPackages; [
pytestCheckHook
pytest-env
lxml
];
disabledTestPaths = [
# tests that attempt to make network requests
"gcore/vsis3.py"
"gdrivers/gdalhttp.py"
"gdrivers/wms.py"
];
disabledTests = [
# tests that attempt to make network requests
"test_jp2openjpeg_45"
# tests that require the full proj dataset which we don't package yet
# https://github.com/OSGeo/gdal/issues/5523
"test_transformer_dem_overrride_srs"
"test_osr_ct_options_area_of_interest"
] ++ lib.optionals (!stdenv.isx86_64) [
# likely precision-related expecting x87 behaviour
"test_jp2openjpeg_22"
] ++ lib.optionals stdenv.isDarwin [
# flaky on macos
"test_rda_download_queue"
];
postCheck = ''
popd # ../autotest
'';
meta = { meta = {
description = "Translator library for raster geospatial data formats"; description = "Translator library for raster geospatial data formats";
homepage = "https://www.gdal.org/"; homepage = "https://www.gdal.org/";

View File

@ -81,31 +81,27 @@ rec {
cudnn_8_1_cudatoolkit_11_2 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_2; }; cudnn_8_1_cudatoolkit_11_2 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_2; };
cudnn_8_1_cudatoolkit_10 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_10; }; cudnn_8_1_cudatoolkit_10 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_10; };
cudnn_8_1_cudatoolkit_11 = cudnn_8_1_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11; };
# cuDNN 8.3 is necessary for the latest jaxlib, esp. jaxlib-bin. See # cuDNN 8.3 is necessary for the latest jaxlib, esp. jaxlib-bin. See
# https://github.com/google/jax/discussions/9455 for more info. # https://github.com/google/jax/discussions/9455 for more info.
cudnn_8_3_cudatoolkit_10_2 = cudnn_8_3_cudatoolkit_10_2 = generic rec {
generic version = "8.3.2";
rec { cudatoolkit = cudatoolkit_10_2;
version = "8.3.2"; # See https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn-832/support-matrix/index.html#cudnn-cuda-hardware-versions.
cudatoolkit = cudatoolkit_10_2; minCudaVersion = "10.2.00000";
# See https://docs.nvidia.com/deeplearning/cudnn/archives/cudnn-832/support-matrix/index.html#cudnn-cuda-hardware-versions. maxCudaVersion = "11.5.99999";
minCudaVersion = "10.2.00000"; mkSrc = cudatoolkit:
maxCudaVersion = "11.5.99999"; let v = if lib.versions.majorMinor cudatoolkit.version == "10.2" then "10.2" else "11.5"; in
mkSrc = cudatoolkit: fetchurl {
let v = if lib.versions.majorMinor cudatoolkit.version == "10.2" then "10.2" else "11.5"; in # Starting at version 8.3.1 there's a new directory layout including
fetchurl { # a subdirectory `local_installers`.
# Starting at version 8.3.1 there's a new directory layout including url = "https://developer.download.nvidia.com/compute/redist/cudnn/v${version}/local_installers/${v}/cudnn-linux-x86_64-8.3.2.44_cuda${v}-archive.tar.xz";
# a subdirectory `local_installers`. hash = {
url = "https://developer.download.nvidia.com/compute/redist/cudnn/v${version}/local_installers/${v}/cudnn-linux-x86_64-8.3.2.44_cuda${v}-archive.tar.xz"; "10.2" = "sha256-1vVu+cqM+PketzIQumw9ykm6REbBZhv6/lXB7EC2aaw=";
hash = { "11.5" = "sha256-VQCVPAjF5dHd3P2iNPnvvdzb5DpTsm3AqCxyP6FwxFc=";
"10.2" = "sha256-1vVu+cqM+PketzIQumw9ykm6REbBZhv6/lXB7EC2aaw="; }."${v}";
"11.5" = "sha256-VQCVPAjF5dHd3P2iNPnvvdzb5DpTsm3AqCxyP6FwxFc="; };
}."${v}"; };
};
}
;
cudnn_8_3_cudatoolkit_11_0 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_0; }; cudnn_8_3_cudatoolkit_11_0 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_0; };
cudnn_8_3_cudatoolkit_11_1 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_1; }; cudnn_8_3_cudatoolkit_11_1 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_1; };
cudnn_8_3_cudatoolkit_11_2 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_2; }; cudnn_8_3_cudatoolkit_11_2 = cudnn_8_3_cudatoolkit_10_2.override { cudatoolkit = cudatoolkit_11_2; };

View File

@ -1,6 +1,14 @@
{ callPackage { callPackage
, cudatoolkit_10_1, cudatoolkit_10_2 , cudatoolkit_10_1
, cudatoolkit_11_0, cudatoolkit_11_1, cudatoolkit_11_2, cudatoolkit_11_3, cudatoolkit_11_4 , cudatoolkit_10_2
, cudatoolkit_11
, cudatoolkit_11_0
, cudatoolkit_11_1
, cudatoolkit_11_2
, cudatoolkit_11_3
, cudatoolkit_11_4
, cudatoolkit_11_5
, cudatoolkit_11_6
}: }:
rec { rec {
@ -8,18 +16,18 @@ rec {
version = "1.2.2.5"; version = "1.2.2.5";
libPath = "lib/10.1"; libPath = "lib/10.1";
cudatoolkit = cudatoolkit_10_1; cudatoolkit = cudatoolkit_10_1;
# 1.2.2 is compatible with CUDA 11.0, 11.1, and 11.2: # 1.2.2 is compatible with CUDA 10.1, 10.2, and 11.x.
# ephemeral doc at https://developer.nvidia.com/cutensor/downloads # See https://docs.nvidia.com/cuda/cutensor/release_notes.html#cutensor-v1-2-2.
sha256 = "1dl9bd71frhac9cb8lvnh71zfsnqxbxbfhndvva2zf6nh0my4klm"; hash = "sha256-lU7iK4DWuC/U3s1Ct/rq2Gr3w4F2U7RYYgpmF05bibY=";
}; };
cutensor_cudatoolkit_10_2 = cutensor_cudatoolkit_10_1.override { cutensor_cudatoolkit_10_2 = cutensor_cudatoolkit_10_1.override {
version = "1.3.1.3"; version = "1.3.1.3";
libPath = "lib/10.2"; libPath = "lib/10.2";
cudatoolkit = cudatoolkit_10_2; cudatoolkit = cudatoolkit_10_2;
# 1.3.1 is compatible with CUDA 11.0, 11.1, and 11.2: # 1.3.1 is compatible with CUDA 10.2 and 11.x.
# ephemeral doc at https://developer.nvidia.com/cutensor/downloads # See https://docs.nvidia.com/cuda/cutensor/release_notes.html#cutensor-v1-3-1.
sha256 = "sha256-mNlVnabB2IC3HnYY0mb06RLqQzDxN9ePGVeBy3hkBC8="; hash = "sha256-mNlVnabB2IC3HnYY0mb06RLqQzDxN9ePGVeBy3hkBC8=";
}; };
cutensor_cudatoolkit_10 = cutensor_cudatoolkit_10_2; cutensor_cudatoolkit_10 = cutensor_cudatoolkit_10_2;
@ -29,21 +37,12 @@ rec {
cudatoolkit = cudatoolkit_11_0; cudatoolkit = cudatoolkit_11_0;
}; };
cutensor_cudatoolkit_11_1 = cutensor_cudatoolkit_11_0.override { cutensor_cudatoolkit_11_1 = cutensor_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_1; };
cudatoolkit = cudatoolkit_11_1; cutensor_cudatoolkit_11_2 = cutensor_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_2; };
}; cutensor_cudatoolkit_11_3 = cutensor_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_3; };
cutensor_cudatoolkit_11_4 = cutensor_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_4; };
cutensor_cudatoolkit_11_5 = cutensor_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_5; };
cutensor_cudatoolkit_11_6 = cutensor_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11_6; };
cutensor_cudatoolkit_11_2 = cutensor_cudatoolkit_11_0.override { cutensor_cudatoolkit_11 = cutensor_cudatoolkit_11_0.override { cudatoolkit = cudatoolkit_11; };
cudatoolkit = cudatoolkit_11_2;
};
cutensor_cudatoolkit_11_3 = cutensor_cudatoolkit_11_0.override {
cudatoolkit = cudatoolkit_11_3;
};
cutensor_cudatoolkit_11_4 = cutensor_cudatoolkit_11_0.override {
cudatoolkit = cudatoolkit_11_4;
};
cutensor_cudatoolkit_11 = cutensor_cudatoolkit_11_4;
} }

View File

@ -7,7 +7,7 @@
, addOpenGLRunpath , addOpenGLRunpath
, version , version
, sha256 , hash
}: }:
let let
@ -21,7 +21,7 @@ stdenv.mkDerivation {
src = fetchurl { src = fetchurl {
url = "https://developer.download.nvidia.com/compute/cutensor/${mostOfVersion}/local_installers/libcutensor-${stdenv.hostPlatform.parsed.kernel.name}-${stdenv.hostPlatform.parsed.cpu.name}-${version}.tar.gz"; url = "https://developer.download.nvidia.com/compute/cutensor/${mostOfVersion}/local_installers/libcutensor-${stdenv.hostPlatform.parsed.kernel.name}-${stdenv.hostPlatform.parsed.cpu.name}-${version}.tar.gz";
inherit sha256; inherit hash;
}; };
outputs = [ "out" "dev" ]; outputs = [ "out" "dev" ];

View File

@ -38,6 +38,10 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
passthru = {
inherit cudatoolkit;
};
meta = with lib; { meta = with lib; {
description = "Multi-GPU and multi-node collective communication primitives for NVIDIA GPUs"; description = "Multi-GPU and multi-node collective communication primitives for NVIDIA GPUs";
homepage = "https://developer.nvidia.com/nccl"; homepage = "https://developer.nvidia.com/nccl";

View File

@ -1,31 +0,0 @@
{ lib, stdenv, fetchurl, ocaml, findlib, camlp4 }:
if !lib.versionAtLeast ocaml.version "3.12"
|| lib.versionAtLeast ocaml.version "4.03"
then throw "type_conv-108.08.00 is not available for OCaml ${ocaml.version}" else
stdenv.mkDerivation rec {
pname = "ocaml-type_conv";
version = "108.08.00";
src = fetchurl {
url = "https://ocaml.janestreet.com/ocaml-core/${version}/individual/type_conv-${version}.tar.gz";
sha256 = "08ysikwwp69zvc147lzzg79nwlrzrk738rj0ggcfadi8h5il42sl";
};
nativeBuildInputs = [ ocaml findlib ];
buildInputs = [ camlp4 ];
strictDeps = true;
createFindlibDestdir = true;
meta = with lib; {
homepage = "https://ocaml.janestreet.com/";
description = "Support library for OCaml preprocessor type conversions";
license = licenses.asl20;
branch = "108";
platforms = ocaml.meta.platforms or [ ];
maintainers = with maintainers; [ maggesi ];
};
}

View File

@ -1,32 +0,0 @@
{ stdenv, lib, fetchFromGitHub, ocaml, findlib, camlp4 }:
if !lib.versionAtLeast ocaml.version "4.00"
|| lib.versionAtLeast ocaml.version "4.03"
then throw "type_conv-109.60.01 is not available for OCaml ${ocaml.version}" else
stdenv.mkDerivation rec {
pname = "ocaml-type_conv";
version = "109.60.01";
src = fetchFromGitHub {
owner = "janestreet";
repo = "type_conv";
rev = version;
sha256 = "sha256-8Oz/fPL3+RghyxQp5u6seSEdf0BgfP6XNcsMYty0rNs=";
};
nativeBuildInputs = [ ocaml findlib ];
buildInputs = [ camlp4 ];
strictDeps = true;
createFindlibDestdir = true;
meta = {
homepage = "http://forge.ocamlcore.org/projects/type-conv/";
description = "Support library for OCaml preprocessor type conversions";
license = lib.licenses.lgpl21;
platforms = ocaml.meta.platforms or [ ];
maintainers = with lib.maintainers; [ maggesi ];
};
}

View File

@ -1,26 +0,0 @@
{ lib, fetchFromGitHub, buildOcaml, camlp4}:
buildOcaml rec {
minimumSupportedOcamlVersion = "4.02";
pname = "type_conv";
version = "113.00.02";
src = fetchFromGitHub {
owner = "janestreet";
repo = "type_conv";
rev = version;
sha256 = "sha256-HzH0hnceCQ2kDRATjl+tfKk3XSBDsGnPzVUGYpDQUmU=";
};
strictDeps = true;
buildInputs = [ camlp4 ];
meta = {
homepage = "https://github.com/janestreet/type_conv/";
description = "Support library for preprocessor type conversions";
license = lib.licenses.asl20;
maintainers = with lib.maintainers; [ maggesi ericbmerritt ];
};
}

View File

@ -12,14 +12,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "awscrt"; pname = "awscrt";
version = "0.13.6"; version = "0.13.7";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
hash = "sha256-aZ1Mquc4IfrdWjOaHMipjNb6gLGGbdKS8ah5b33eqGo="; hash = "sha256-FCmdYuXh8+nWfeGbJ9IhfwASFsZoxOp7jL+5/TrtG5Q=";
}; };
buildInputs = lib.optionals stdenv.isDarwin [ buildInputs = lib.optionals stdenv.isDarwin [

View File

@ -5,6 +5,10 @@
, addOpenGLRunpath , addOpenGLRunpath
}: }:
assert cudnn.cudatoolkit == cudatoolkit;
assert cutensor.cudatoolkit == cudatoolkit;
assert nccl.cudatoolkit == cudatoolkit;
buildPythonPackage rec { buildPythonPackage rec {
pname = "cupy"; pname = "cupy";
version = "10.2.0"; version = "10.2.0";
@ -15,8 +19,15 @@ buildPythonPackage rec {
sha256 = "sha256-5ovvA76QGOsOnVztMfDgLerks5nJrKR08rLc+ArmWA8="; sha256 = "sha256-5ovvA76QGOsOnVztMfDgLerks5nJrKR08rLc+ArmWA8=";
}; };
# See https://docs.cupy.dev/en/v10.2.0/reference/environment.html. Seting both
# CUPY_NUM_BUILD_JOBS and CUPY_NUM_NVCC_THREADS to NIX_BUILD_CORES results in
# a small amount of thrashing but it turns out there are a large number of
# very short builds and a few extremely long ones, so setting both ends up
# working nicely in practice.
preConfigure = '' preConfigure = ''
export CUDA_PATH=${cudatoolkit} export CUDA_PATH=${cudatoolkit}
export CUPY_NUM_BUILD_JOBS="$NIX_BUILD_CORES"
export CUPY_NUM_NVCC_THREADS="$NIX_BUILD_CORES"
''; '';
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -9,14 +9,14 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "immutables"; pname = "immutables";
version = "0.16"; version = "0.17";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "MagicStack"; owner = "MagicStack";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1f6nlpvrs41cjrnikx48qd0rlf7d89h6dzlr5zcndzsim7fgsmgz"; sha256 = "sha256-4VuB8eTWHD4hEDj11u/talfv38h2BhogSZmEVyUtnko=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -11,16 +11,16 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "mizani"; pname = "mizani";
version = "0.7.3"; version = "0.7.4";
format = "setuptools"; format = "setuptools";
disabled = pythonOlder "3.6"; disabled = pythonOlder "3.8";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "has2k1"; owner = "has2k1";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "04r53dp5jbklv8l9ncgc5wiq0gx25y73h65gmmbbfkxwgsl3w78l"; hash = "sha256-oqbo/aQ5L1nQO8BvXH6/8PBPiWcv2m/LUjwow8+J90w=";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [

View File

@ -1,52 +1,23 @@
{ stdenv, lib, fetchFromGitHub, fetchurl, cmake, git, makeWrapper, allegro5, libGL }: { stdenv, lib, fetchFromGitHub, fetchurl, pkg-config, makeWrapper, allegro5, libGL }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "liberation-circuit"; pname = "liberation-circuit";
version = "1.3"; version = "unstable-2022-01-02";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "linleyh"; owner = "linleyh";
repo = pname; repo = pname;
rev = "v${version}"; rev = "19e3363547793e931fd9419b61ebc2cd8e257714";
sha256 = "BAv0wEJw4pK77jV+1bWPHeqyU/u0HtZLBF3ETUoQEAk="; sha256 = "zIwjh4CBSmKz7pF7GM5af+VslWho5jHOLsulbW4C8TY=";
}; };
patches = [ nativeBuildInputs = [ pkg-config makeWrapper ];
# Linux packaging assets
(fetchurl {
url = "https://github.com/linleyh/liberation-circuit/commit/72c1f6f4100bd227540aca14a535e7f4ebdeb851.patch";
sha256 = "0sad1z1lls0hanv88g1q6x5qr4s8f5p42s8j8v55bmwsdc0s5qys";
})
];
# Hack to make binary diffs work
prePatch = ''
function patch {
git apply --whitespace=nowarn "$@"
}
'';
postPatch = ''
unset -f patch
substituteInPlace bin/launcher.sh --replace ./libcirc ./liberation-circuit
'';
nativeBuildInputs = [ cmake git makeWrapper ];
buildInputs = [ allegro5 libGL ]; buildInputs = [ allegro5 libGL ];
cmakeFlags = [
"-DALLEGRO_LIBRARY=${lib.getDev allegro5}"
"-DALLEGRO_INCLUDE_DIR=${lib.getDev allegro5}/include"
];
NIX_CFLAGS_LINK = "-lallegro_image -lallegro_primitives -lallegro_color -lallegro_acodec -lallegro_audio -lallegro_dialog -lallegro_font -lallegro_main -lallegro -lm";
hardeningDisable = [ "format" ];
installPhase = '' installPhase = ''
runHook preInstall runHook preInstall
mkdir -p $out/opt mkdir -p $out/opt
cd ..
cp -r bin $out/opt/liberation-circuit cp -r bin $out/opt/liberation-circuit
chmod +x $out/opt/liberation-circuit/launcher.sh chmod +x $out/opt/liberation-circuit/launcher.sh
makeWrapper $out/opt/liberation-circuit/launcher.sh $out/bin/liberation-circuit makeWrapper $out/opt/liberation-circuit/launcher.sh $out/bin/liberation-circuit

View File

@ -1,4 +1,5 @@
{ lib, stdenv, fetchurl, lua, pkg-config, nixosTests { lib, stdenv, fetchurl, lua, pkg-config, nixosTests
, tcl, which, ps
, withSystemd ? stdenv.isLinux && !stdenv.hostPlatform.isStatic, systemd , withSystemd ? stdenv.isLinux && !stdenv.hostPlatform.isStatic, systemd
# dependency ordering is broken at the moment when building with openssl # dependency ordering is broken at the moment when building with openssl
, tlsSupport ? !stdenv.hostPlatform.isStatic, openssl , tlsSupport ? !stdenv.hostPlatform.isStatic, openssl
@ -44,7 +45,26 @@ stdenv.mkDerivation rec {
NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isClang [ "-std=c11" ]; NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isClang [ "-std=c11" ];
doCheck = false; # needs tcl # darwin currently lacks a pure `pgrep` which is extensively used here
doCheck = !stdenv.isDarwin;
checkInputs = [ which tcl ps ];
checkPhase = ''
runHook preCheck
# disable test "Connect multiple replicas at the same time": even
# upstream find this test too timing-sensitive
substituteInPlace tests/integration/replication.tcl \
--replace 'foreach mdl {no yes}' 'foreach mdl {}'
./runtest \
--no-latency \
--timeout 2000 \
--clients $NIX_BUILD_CORES \
--tags -leaks \
--skipunit integration/failover # flaky and slow
runHook postCheck
'';
passthru.tests.redis = nixosTests.redis; passthru.tests.redis = nixosTests.redis;

View File

@ -3,14 +3,14 @@ let
package = (import ./node.nix { inherit pkgs; inherit (stdenv.hostPlatform) system; }).package; package = (import ./node.nix { inherit pkgs; inherit (stdenv.hostPlatform) system; }).package;
in in
package.override rec { package.override rec {
version = "1.24.0"; version = "1.25.0";
reconstructLock = true; reconstructLock = true;
src = pkgs.fetchFromGitHub { src = pkgs.fetchFromGitHub {
owner = "Koenkk"; owner = "Koenkk";
repo = "zigbee2mqtt"; repo = "zigbee2mqtt";
rev = version; rev = version;
sha256 = "epQXexhTT6xuB50eudRRzTZHGv0vX+hgMUZcm36red4="; sha256 = "Wp3+N3np/biNw2xaR79PpQ/S7o3FftjH6AgyMLM+ya8=";
}; };
passthru.tests.zigbee2mqtt = nixosTests.zigbee2mqtt; passthru.tests.zigbee2mqtt = nixosTests.zigbee2mqtt;

File diff suppressed because it is too large Load Diff

View File

@ -6,13 +6,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "snapper"; pname = "snapper";
version = "0.9.1"; version = "0.10.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "openSUSE"; owner = "openSUSE";
repo = "snapper"; repo = "snapper";
rev = "v${version}"; rev = "v${version}";
sha256 = "1ci5mdsph2n5cqad51zf4sank35yj741adsqy2gg7vqwxrhpm8mj"; sha256 = "sha256-02ufjPuXK3a+gQ8kp968KXd3Jgvx4O6TO2Q5wL5n2cw=";
}; };
nativeBuildInputs = [ nativeBuildInputs = [

View File

@ -1,4 +1,4 @@
# frozen_string_literal: true # frozen_string_literal: true
source "https://rubygems.org" source "https://rubygems.org"
gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.1.35" gem "metasploit-framework", git: "https://github.com/rapid7/metasploit-framework", ref: "refs/tags/6.1.36"

View File

@ -1,9 +1,9 @@
GIT GIT
remote: https://github.com/rapid7/metasploit-framework remote: https://github.com/rapid7/metasploit-framework
revision: c1efca37c6e967103978915618efa41515134ea1 revision: b3ad212ba393cc87bb9e621dbad9d04362f1151c
ref: refs/tags/6.1.35 ref: refs/tags/6.1.36
specs: specs:
metasploit-framework (6.1.35) metasploit-framework (6.1.36)
actionpack (~> 6.0) actionpack (~> 6.0)
activerecord (~> 6.0) activerecord (~> 6.0)
activesupport (~> 6.0) activesupport (~> 6.0)
@ -128,13 +128,13 @@ GEM
arel-helpers (2.14.0) arel-helpers (2.14.0)
activerecord (>= 3.1.0, < 8) activerecord (>= 3.1.0, < 8)
aws-eventstream (1.2.0) aws-eventstream (1.2.0)
aws-partitions (1.570.0) aws-partitions (1.573.0)
aws-sdk-core (3.130.0) aws-sdk-core (3.130.0)
aws-eventstream (~> 1, >= 1.0.2) aws-eventstream (~> 1, >= 1.0.2)
aws-partitions (~> 1, >= 1.525.0) aws-partitions (~> 1, >= 1.525.0)
aws-sigv4 (~> 1.1) aws-sigv4 (~> 1.1)
jmespath (~> 1.0) jmespath (~> 1.0)
aws-sdk-ec2 (1.304.0) aws-sdk-ec2 (1.305.0)
aws-sdk-core (~> 3, >= 3.127.0) aws-sdk-core (~> 3, >= 3.127.0)
aws-sigv4 (~> 1.1) aws-sigv4 (~> 1.1)
aws-sdk-iam (1.68.0) aws-sdk-iam (1.68.0)
@ -205,8 +205,9 @@ GEM
filesize (0.2.0) filesize (0.2.0)
gssapi (1.3.1) gssapi (1.3.1)
ffi (>= 1.0.1) ffi (>= 1.0.1)
gyoku (1.3.1) gyoku (1.4.0)
builder (>= 2.1.2) builder (>= 2.1.2)
rexml (~> 3.0)
hashery (2.1.2) hashery (2.1.2)
hrr_rb_ssh (0.4.2) hrr_rb_ssh (0.4.2)
hrr_rb_ssh-ed25519 (0.4.2) hrr_rb_ssh-ed25519 (0.4.2)
@ -229,7 +230,7 @@ GEM
logging (2.3.0) logging (2.3.0)
little-plugger (~> 1.1) little-plugger (~> 1.1)
multi_json (~> 1.14) multi_json (~> 1.14)
loofah (2.15.0) loofah (2.16.0)
crass (~> 1.0.2) crass (~> 1.0.2)
nokogiri (>= 1.5.9) nokogiri (>= 1.5.9)
metasm (1.0.5) metasm (1.0.5)
@ -298,9 +299,9 @@ GEM
hashery (~> 2.0) hashery (~> 2.0)
ruby-rc4 ruby-rc4
ttfunk ttfunk
pg (1.3.4) pg (1.3.5)
public_suffix (4.0.6) public_suffix (4.0.6)
puma (5.6.2) puma (5.6.4)
nio4r (~> 2.0) nio4r (~> 2.0)
racc (1.6.0) racc (1.6.0)
rack (2.2.3) rack (2.2.3)
@ -321,7 +322,7 @@ GEM
thor (~> 1.0) thor (~> 1.0)
rake (13.0.6) rake (13.0.6)
rb-readline (0.5.5) rb-readline (0.5.5)
recog (2.3.22) recog (2.3.23)
nokogiri nokogiri
redcarpet (3.5.1) redcarpet (3.5.1)
reline (0.2.5) reline (0.2.5)
@ -379,12 +380,12 @@ GEM
ruby-macho (3.0.0) ruby-macho (3.0.0)
ruby-rc4 (0.1.5) ruby-rc4 (0.1.5)
ruby2_keywords (0.0.5) ruby2_keywords (0.0.5)
ruby_smb (3.0.5) ruby_smb (3.0.6)
bindata bindata
openssl-ccm openssl-ccm
openssl-cmac openssl-cmac
rubyntlm rubyntlm
windows_error (>= 0.1.3) windows_error (>= 0.1.4)
rubyntlm (0.6.3) rubyntlm (0.6.3)
rubyzip (2.3.2) rubyzip (2.3.2)
sawyer (0.8.2) sawyer (0.8.2)
@ -422,7 +423,7 @@ GEM
websocket-extensions (>= 0.1.0) websocket-extensions (>= 0.1.0)
websocket-extensions (0.1.5) websocket-extensions (0.1.5)
win32api (0.1.0) win32api (0.1.0)
windows_error (0.1.3) windows_error (0.1.4)
winrm (2.3.6) winrm (2.3.6)
builder (>= 2.1.2) builder (>= 2.1.2)
erubi (~> 1.8) erubi (~> 1.8)

View File

@ -15,13 +15,13 @@ let
}; };
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
pname = "metasploit-framework"; pname = "metasploit-framework";
version = "6.1.35"; version = "6.1.36";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "rapid7"; owner = "rapid7";
repo = "metasploit-framework"; repo = "metasploit-framework";
rev = version; rev = version;
sha256 = "sha256-1xEc+I2Pvs6GQuEGAHWWAum7ASESX5R5D1qN+wPtFgY="; sha256 = "sha256-j90/ygZpwdMb0KL1bJPHpysokC3BoN/kUK/dsBo6HsU=";
}; };
nativeBuildInputs = [ makeWrapper ]; nativeBuildInputs = [ makeWrapper ];

View File

@ -104,10 +104,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0w3y40l5xg0p5sha6w4wppwb6kil129nk760yblswqw7vz0s0mm0"; sha256 = "162x55is7jfdy6cf1xw2llbrxcnk5gv3dsqfmi1klf6c2xfm87gm";
type = "gem"; type = "gem";
}; };
version = "1.570.0"; version = "1.573.0";
}; };
aws-sdk-core = { aws-sdk-core = {
groups = ["default"]; groups = ["default"];
@ -124,10 +124,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0vvplr6ml7acl047lynmsdl2bs2i992vx68dhzqmllppf8ggcjvs"; sha256 = "1dpid33sl72nsxyr7d57yqzqb9jby0dyjc0ncncdm41is7d25vki";
type = "gem"; type = "gem";
}; };
version = "1.304.0"; version = "1.305.0";
}; };
aws-sdk-iam = { aws-sdk-iam = {
groups = ["default"]; groups = ["default"];
@ -494,10 +494,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1wn0sl14396g5lyvp8sjmcb1hw9rbyi89gxng91r7w4df4jwiidh"; sha256 = "1kd2q59xpm39hpvmmvyi6g3f1fr05xjbnxwkrdqz4xy7hirqi79q";
type = "gem"; type = "gem";
}; };
version = "1.3.1"; version = "1.4.0";
}; };
hashery = { hashery = {
groups = ["default"]; groups = ["default"];
@ -644,10 +644,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1yp1h1j7pdkqvnx8jl6bkzlajav3h5mhqzihgs9p6y3c8927mw23"; sha256 = "15s6z5bvhdhnqv4wg8zcz3mhbc7i4dbqskv5jvhprz33ak7682km";
type = "gem"; type = "gem";
}; };
version = "2.15.0"; version = "2.16.0";
}; };
metasm = { metasm = {
groups = ["default"]; groups = ["default"];
@ -684,12 +684,12 @@
platforms = []; platforms = [];
source = { source = {
fetchSubmodules = false; fetchSubmodules = false;
rev = "c1efca37c6e967103978915618efa41515134ea1"; rev = "b3ad212ba393cc87bb9e621dbad9d04362f1151c";
sha256 = "01hnxl1zp3as1xwr8pqj440vps82jrsh01p18a3cxglgipw1q4fp"; sha256 = "1i8y78db1pdga3jdz8615n82hax7qy9nrxd2s0dx7hb90v53zpcg";
type = "git"; type = "git";
url = "https://github.com/rapid7/metasploit-framework"; url = "https://github.com/rapid7/metasploit-framework";
}; };
version = "6.1.35"; version = "6.1.36";
}; };
metasploit-model = { metasploit-model = {
groups = ["default"]; groups = ["default"];
@ -977,10 +977,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "090c3kazlmiizp25las7dgi8wlc11s29nrs2gy3qrp1z8qikgcmb"; sha256 = "10ryzmc3r5ja6g90a9ycsxcxsy5872xa1vf01jam0bm74zq3zmi6";
type = "gem"; type = "gem";
}; };
version = "1.3.4"; version = "1.3.5";
}; };
public_suffix = { public_suffix = {
groups = ["default"]; groups = ["default"];
@ -997,10 +997,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1np2myaxlk5iab1zarwgmp7zsjvm5j8ssg35ijv8b6dpvc3cjd56"; sha256 = "0dgr2rybayih2naz3658mbzqwfrg9fxl80zsvhscf6b972kp3jdw";
type = "gem"; type = "gem";
}; };
version = "5.6.2"; version = "5.6.4";
}; };
racc = { racc = {
groups = ["default"]; groups = ["default"];
@ -1097,10 +1097,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0ml58i34gjpgmpl392c77v2n50w2w233gwxgy6cxq81bp58ywj92"; sha256 = "0axq8hw515b8hbv1jm4lbrqnjm5bvjjnj7xbx9pvp17zlklvsfzb";
type = "gem"; type = "gem";
}; };
version = "2.3.22"; version = "2.3.23";
}; };
redcarpet = { redcarpet = {
groups = ["default"]; groups = ["default"];
@ -1357,10 +1357,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "0zgw3aplb0nd8ggyy2csywvnw7gdligzdqvw18j7s5yix8g2h4cz"; sha256 = "1mxm2948xz9pfl2jhngvjw89arvm9qznrf86pbqi8hi7cxfr4grk";
type = "gem"; type = "gem";
}; };
version = "3.0.5"; version = "3.0.6";
}; };
rubyntlm = { rubyntlm = {
groups = ["default"]; groups = ["default"];
@ -1587,10 +1587,10 @@
platforms = []; platforms = [];
source = { source = {
remotes = ["https://rubygems.org"]; remotes = ["https://rubygems.org"];
sha256 = "1dy35rfdmj6pfhdicix1kcgpj5y7844a43i6bnklngn7b1wmy3av"; sha256 = "0zmm2if81ia33hp18h8yrgnpgcdyrxziyf185r0zx8qy7n8mlchl";
type = "gem"; type = "gem";
}; };
version = "0.1.3"; version = "0.1.4";
}; };
winrm = { winrm = {
groups = ["default"]; groups = ["default"];

View File

@ -4650,7 +4650,6 @@ with pkgs;
cudnn_8_1_cudatoolkit_11_1 cudnn_8_1_cudatoolkit_11_1
cudnn_8_1_cudatoolkit_11_2 cudnn_8_1_cudatoolkit_11_2
cudnn_8_1_cudatoolkit_10 cudnn_8_1_cudatoolkit_10
cudnn_8_1_cudatoolkit_11
cudnn_8_3_cudatoolkit_10_2 cudnn_8_3_cudatoolkit_10_2
cudnn_8_3_cudatoolkit_11_0 cudnn_8_3_cudatoolkit_11_0
cudnn_8_3_cudatoolkit_11_1 cudnn_8_3_cudatoolkit_11_1
@ -4661,8 +4660,8 @@ with pkgs;
cudnn_8_3_cudatoolkit_10 cudnn_8_3_cudatoolkit_10
cudnn_8_3_cudatoolkit_11; cudnn_8_3_cudatoolkit_11;
# TODO(samuela): This is old and should be upgraded to 8.3 at some point. # Make sure to keep this in sync with the `cudatoolkit` version!
cudnn = cudnn_7_6_cudatoolkit_10_1; cudnn = cudnn_8_3_cudatoolkit_10;
cutensorPackages = callPackages ../development/libraries/science/math/cutensor { }; cutensorPackages = callPackages ../development/libraries/science/math/cutensor { };
inherit (cutensorPackages) inherit (cutensorPackages)
@ -32949,11 +32948,16 @@ with pkgs;
### SCIENCE / MATH ### SCIENCE / MATH
caffe = callPackage ../applications/science/math/caffe ({ caffe = callPackage ../applications/science/math/caffe ({
cudaSupport = config.cudaSupport or false;
cudatoolkit = cudatoolkit_10_1;
cudnn = cudnn_7_6_cudatoolkit_10_1;
opencv3 = opencv3WithoutCuda; # Used only for image loading. opencv3 = opencv3WithoutCuda; # Used only for image loading.
blas = openblas; blas = openblas;
inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo; inherit (darwin.apple_sdk.frameworks) Accelerate CoreGraphics CoreVideo;
} // (config.caffe or {})); } // (config.caffe or {}));
caffeWithCuda = caffe.override { cudaSupport = true; };
caffe2 = callPackage ../development/libraries/science/math/caffe2 (rec { caffe2 = callPackage ../development/libraries/science/math/caffe2 (rec {
inherit (python3Packages) python future six numpy pydot; inherit (python3Packages) python future six numpy pydot;
protobuf = protobuf3_1; protobuf = protobuf3_1;

View File

@ -1138,18 +1138,6 @@ let
inherit (pkgs.python3Packages) pytorch; inherit (pkgs.python3Packages) pytorch;
}; };
type_conv_108_08_00 = callPackage ../development/ocaml-modules/type_conv/108.08.00.nix { };
type_conv_109_60_01 = callPackage ../development/ocaml-modules/type_conv/109.60.01.nix { };
type_conv_112_01_01 = callPackage ../development/ocaml-modules/type_conv/112.01.01.nix { };
type_conv =
if lib.versionOlder "4.02" ocaml.version
then type_conv_112_01_01
else if lib.versionOlder "4.00" ocaml.version
then type_conv_109_60_01
else if lib.versionOlder "3.12" ocaml.version
then type_conv_108_08_00
else null;
ocaml-protoc = callPackage ../development/ocaml-modules/ocaml-protoc { }; ocaml-protoc = callPackage ../development/ocaml-modules/ocaml-protoc { };
ocaml_extlib = ocaml_extlib-1-7-8; ocaml_extlib = ocaml_extlib-1-7-8;

View File

@ -3563,11 +3563,11 @@ let
CompressRawZlib = buildPerlPackage { CompressRawZlib = buildPerlPackage {
pname = "Compress-Raw-Zlib"; pname = "Compress-Raw-Zlib";
version = "2.101"; version = "2.103";
src = fetchurl { src = fetchurl {
url = "mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Zlib-2.101.tar.gz"; url = "mirror://cpan/authors/id/P/PM/PMQS/Compress-Raw-Zlib-2.103.tar.gz";
sha256 = "1cmb39dw928jssa3fzk4pxb7sw8q1zyx3yikgq01nz17x0ara6wx"; sha256 = "sha256-1p0mIMoCTcG0JPf0Io/hFpsrd0FrswMQ6JDTvn2kff8=";
}; };
preConfigure = '' preConfigure = ''

View File

@ -1457,6 +1457,11 @@ in {
inherit (self) python numpy boost; inherit (self) python numpy boost;
}); });
caffeWithCuda = toPythonModule (pkgs.caffeWithCuda.override {
pythonSupport = true;
inherit (self) python numpy boost;
});
cairocffi = callPackage ../development/python-modules/cairocffi { }; cairocffi = callPackage ../development/python-modules/cairocffi { };
cairosvg = callPackage ../development/python-modules/cairosvg { }; cairosvg = callPackage ../development/python-modules/cairosvg { };
@ -1958,7 +1963,7 @@ in {
cupy = callPackage ../development/python-modules/cupy { cupy = callPackage ../development/python-modules/cupy {
cudatoolkit = pkgs.cudatoolkit_11; cudatoolkit = pkgs.cudatoolkit_11;
cudnn = pkgs.cudnn_8_1_cudatoolkit_11; cudnn = pkgs.cudnn_8_3_cudatoolkit_11;
nccl = pkgs.nccl_cudatoolkit_11; nccl = pkgs.nccl_cudatoolkit_11;
cutensor = pkgs.cutensor_cudatoolkit_11; cutensor = pkgs.cutensor_cudatoolkit_11;
}; };
@ -8361,6 +8366,24 @@ in {
pytorch = callPackage ../development/python-modules/pytorch { pytorch = callPackage ../development/python-modules/pytorch {
cudaSupport = pkgs.config.cudaSupport or false; cudaSupport = pkgs.config.cudaSupport or false;
# TODO: next time pytorch is updated (to 1.11.0, currently in staging as of
# 2022-03-31), make the following changes:
# -> cudatoolk_11
cudatoolkit = pkgs.cudatoolkit_10;
# -> cudnn_8_3_cudatoolkit_11
cudnn = pkgs.cudnn_8_1_cudatoolkit_10;
# -> cutensor_cudatoolkit_11 (cutensor is a new dependency in v1.11.0)
# cutensor = pkgs.cutensor_cudatoolkit_11;
# -> setting a custom magma should be unnecessary with v1.11.0
magma = pkgs.magma.override { cudatoolkit = pkgs.cudatoolkit_10; };
# -> nccl_cudatoolkit_11
nccl = pkgs.nccl.override { cudatoolkit = pkgs.cudatoolkit_10; };
}; };
pytorch-bin = callPackage ../development/python-modules/pytorch/bin.nix { }; pytorch-bin = callPackage ../development/python-modules/pytorch/bin.nix { };