Merge master into staging-next

This commit is contained in:
github-actions[bot] 2021-07-12 12:01:28 +00:00 committed by GitHub
commit 56d22e36bd
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
16 changed files with 189 additions and 43 deletions

View file

@ -116,7 +116,7 @@ let
pushDownProperties dischargeProperties filterOverrides pushDownProperties dischargeProperties filterOverrides
sortProperties fixupOptionType mkIf mkAssert mkMerge mkOverride sortProperties fixupOptionType mkIf mkAssert mkMerge mkOverride
mkOptionDefault mkDefault mkForce mkVMOverride mkOptionDefault mkDefault mkForce mkVMOverride
mkOrder mkBefore mkAfter mkAliasDefinitions mkFixStrictness mkOrder mkBefore mkAfter mkAliasDefinitions
mkAliasAndWrapDefinitions fixMergeModules mkRemovedOptionModule mkAliasAndWrapDefinitions fixMergeModules mkRemovedOptionModule
mkRenamedOptionModule mkMergedOptionModule mkChangedOptionModule mkRenamedOptionModule mkMergedOptionModule mkChangedOptionModule
mkAliasOptionModule doRename; mkAliasOptionModule doRename;

View file

@ -713,6 +713,8 @@ rec {
mkForce = mkOverride 50; mkForce = mkOverride 50;
mkVMOverride = mkOverride 10; # used by nixos-rebuild build-vm mkVMOverride = mkOverride 10; # used by nixos-rebuild build-vm
mkFixStrictness = lib.warn "lib.mkFixStrictness has no effect and will be removed. It returns its argument unmodified, so you can just remove any calls." id;
mkOrder = priority: content: mkOrder = priority: content:
{ _type = "order"; { _type = "order";
inherit priority content; inherit priority content;

View file

@ -3,7 +3,7 @@
, ilmbase, gtk3, intltool, lcms2, lensfun, libX11, libexif, libgphoto2, libjpeg , ilmbase, gtk3, intltool, lcms2, lensfun, libX11, libexif, libgphoto2, libjpeg
, libpng, librsvg, libtiff, openexr, osm-gps-map, pkg-config, sqlite, libxslt , libpng, librsvg, libtiff, openexr, osm-gps-map, pkg-config, sqlite, libxslt
, openjpeg, lua, pugixml, colord, colord-gtk, libwebp, libsecret, gnome , openjpeg, lua, pugixml, colord, colord-gtk, libwebp, libsecret, gnome
, ocl-icd, pcre, gtk-mac-integration, isocodes, llvmPackages , ocl-icd, pcre, gtk-mac-integration, isocodes, llvmPackages, gmic, libavif, icu
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
@ -21,7 +21,7 @@ stdenv.mkDerivation rec {
cairo curl exiv2 glib gtk3 ilmbase lcms2 lensfun libexif cairo curl exiv2 glib gtk3 ilmbase lcms2 lensfun libexif
libgphoto2 libjpeg libpng librsvg libtiff openexr sqlite libxslt libgphoto2 libjpeg libpng librsvg libtiff openexr sqlite libxslt
libsoup graphicsmagick json-glib openjpeg lua pugixml libsoup graphicsmagick json-glib openjpeg lua pugixml
libwebp libsecret gnome.adwaita-icon-theme osm-gps-map pcre isocodes libwebp libsecret gnome.adwaita-icon-theme osm-gps-map pcre isocodes gmic libavif icu
] ++ lib.optionals stdenv.isLinux [ ] ++ lib.optionals stdenv.isLinux [
colord colord-gtk libX11 ocl-icd colord colord-gtk libX11 ocl-icd
] ++ lib.optional stdenv.isDarwin gtk-mac-integration ] ++ lib.optional stdenv.isDarwin gtk-mac-integration

View file

@ -5,13 +5,13 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "mako"; pname = "mako";
version = "1.5"; version = "1.6";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "emersion"; owner = "emersion";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "0f92krcgybl4113g2gawf7lcbh1fss7bq4cx81h1zyn7yvxlwx2b"; sha256 = "sha256-RcPwZ5NeO9vxwPWfgj5x3wVdCYGKumnYT3ngHEAWfW0=";
}; };
nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-protocols wrapGAppsHook ]; nativeBuildInputs = [ meson ninja pkg-config scdoc wayland-protocols wrapGAppsHook ];

View file

@ -1,15 +1,19 @@
{ lib, stdenv, fetchurl, cmake, gfortran, blas, lapack, mpi, petsc, python3 }: { lib, stdenv, fetchurl, cmake, gfortran, blas, lapack, mpi, petsc, python3 }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
name = "getdp-${version}"; pname = "getdp";
version = "3.3.0"; version = "3.3.0";
src = fetchurl { src = fetchurl {
url = "http://getdp.info/src/getdp-${version}-source.tgz"; url = "http://getdp.info/src/getdp-${version}-source.tgz";
sha256 = "1pfviy2bw8z5y6c15czvlvyjjg9pvpgrj9fr54xfi2gmvs7zkgpf"; sha256 = "1pfviy2bw8z5y6c15czvlvyjjg9pvpgrj9fr54xfi2gmvs7zkgpf";
}; };
nativeBuildInputs = [ cmake gfortran ]; inherit (petsc) mpiSupport;
buildInputs = [ blas lapack mpi petsc python3 ]; nativeBuildInputs = [ cmake python3 ];
buildInputs = [ gfortran blas lapack petsc ]
++ lib.optional mpiSupport mpi
;
cmakeFlags = lib.optional mpiSupport "-DENABLE_MPI=1";
meta = with lib; { meta = with lib; {
description = "A General Environment for the Treatment of Discrete Problems"; description = "A General Environment for the Treatment of Discrete Problems";

View file

@ -7,6 +7,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gcc-arm-embedded"; pname = "gcc-arm-embedded";
version = "10-2020-q4-major"; version = "10-2020-q4-major";
numVersion = "10.2.1";
subdir = "10-2020q4"; subdir = "10-2020q4";
suffix = { suffix = {

View file

@ -7,6 +7,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gcc-arm-embedded"; pname = "gcc-arm-embedded";
version = "6-2017-q2-update"; version = "6-2017-q2-update";
numVersion = "6.3.1";
subdir = "6-2017q2"; subdir = "6-2017q2";
suffix = { suffix = {

View file

@ -7,6 +7,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gcc-arm-embedded"; pname = "gcc-arm-embedded";
version = "7-2018-q2-update"; version = "7-2018-q2-update";
numVersion = "7.3.1";
subdir = "7-2018q2"; subdir = "7-2018q2";
suffix = { suffix = {

View file

@ -7,6 +7,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gcc-arm-embedded"; pname = "gcc-arm-embedded";
version = "8-2019-q3-update"; version = "8-2019-q3-update";
numVersion = "8.3.1";
subdir = "8-2019q3/RC1.1"; subdir = "8-2019q3/RC1.1";
suffix = { suffix = {

View file

@ -7,6 +7,7 @@
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "gcc-arm-embedded"; pname = "gcc-arm-embedded";
version = "9-2020-q2-update"; version = "9-2020-q2-update";
numVersion = "9.3.1";
subdir = "9-2020q2"; subdir = "9-2020q2";
suffix = { suffix = {

View file

@ -1,4 +1,20 @@
{ lib, stdenv , darwin , fetchurl , blas , gfortran , lapack , python }: { lib
, stdenv
, fetchurl
, darwin
, gfortran
, python3
, blas
, lapack
, mpi # generic mpi dependency
, openssh # required for openmpi tests
, petsc-withp4est ? true
, p4est
, zlib # propagated by p4est but required by petsc
}:
# This version of PETSc does not support a non-MPI p4est build
assert petsc-withp4est -> p4est.mpiSupport;
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "petsc"; pname = "petsc";
@ -9,44 +25,53 @@ stdenv.mkDerivation rec {
sha256 = "04vy3qyakikslc58qyv8c9qrwlivix3w6znc993i37cvfg99dch9"; sha256 = "04vy3qyakikslc58qyv8c9qrwlivix3w6znc993i37cvfg99dch9";
}; };
nativeBuildInputs = [ blas gfortran gfortran.cc.lib lapack python ]; mpiSupport = !withp4est || p4est.mpiSupport;
withp4est = petsc-withp4est;
# Upstream does some hot she-py-bang stuff, this change streamlines that nativeBuildInputs = [ python3 gfortran ];
# process. The original script in upstream is both a shell script and a buildInputs = [ blas lapack ]
# python script, where the shellscript just finds a suitable python ++ lib.optional mpiSupport mpi
# interpreter to execute the python script. See ++ lib.optional (mpiSupport && mpi.pname == "openmpi") openssh
# https://github.com/NixOS/nixpkgs/pull/89299#discussion_r450203444 ++ lib.optional withp4est p4est
# for more details. ;
prePatch = ''
substituteInPlace configure \ prePatch = lib.optionalString stdenv.isDarwin ''
--replace /bin/sh /usr/bin/python
'' + lib.optionalString stdenv.isDarwin ''
substituteInPlace config/install.py \ substituteInPlace config/install.py \
--replace /usr/bin/install_name_tool ${darwin.cctools}/bin/install_name_tool --replace /usr/bin/install_name_tool ${darwin.cctools}/bin/install_name_tool
''; '';
preConfigure = '' preConfigure = ''
export FC="${gfortran}/bin/gfortran" F77="${gfortran}/bin/gfortran" export FC="${gfortran}/bin/gfortran" F77="${gfortran}/bin/gfortran"
patchShebangs . patchShebangs ./lib/petsc/bin
configureFlagsArray=( configureFlagsArray=(
$configureFlagsArray $configureFlagsArray
"--CC=$CC" ${if !mpiSupport then ''
"--with-cxx=$CXX" "--with-mpi=0"
"--with-fc=$FC" '' else ''
"--with-mpi=0" "--CC=mpicc"
"--with-blas-lib=[${blas}/lib/libblas.so,${gfortran.cc.lib}/lib/libgfortran.a]" "--with-cxx=mpicxx"
"--with-lapack-lib=[${lapack}/lib/liblapack.so,${gfortran.cc.lib}/lib/libgfortran.a]" "--with-fc=mpif90"
"--with-mpi=1"
''}
${if withp4est then ''
"--with-p4est=1"
"--with-zlib-include=${zlib.dev}/include"
"--with-zlib-lib=-L${zlib}/lib -lz"
'' else ""}
"--with-blas=1"
"--with-lapack=1"
) )
''; '';
configureScript = "python ./configure";
enableParallelBuilding = true;
doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
meta = with lib; { meta = with lib; {
description = '' description = "Portable Extensible Toolkit for Scientific computation";
Library of linear algebra algorithms for solving partial differential
equations
'';
homepage = "https://www.mcs.anl.gov/petsc/index.html"; homepage = "https://www.mcs.anl.gov/petsc/index.html";
license = licenses.bsd2; license = licenses.bsd2;
maintainers = with maintainers; [ wucke13 ]; maintainers = with maintainers; [ wucke13 cburstedde ];
platforms = platforms.all;
}; };
} }

View file

@ -0,0 +1,46 @@
{ lib
, fetchFromGitLab
, buildDunePackage
, ezjsonm
, zarith
, hex
, json-data-encoding
, json-data-encoding-bson
, alcotest
, crowbar
}:
buildDunePackage {
pname = "data-encoding";
version = "0.2.0";
src = fetchFromGitLab {
owner = "nomadic-labs";
repo = "data-encoding";
rev = "0.2";
sha256 = "0d9c2ix2imqk4r0jfhnwak9laarlbsq9kmswvbnjzdm2g0hwin1d";
};
useDune2 = true;
propagatedBuildInputs = [
ezjsonm
zarith
hex
json-data-encoding
json-data-encoding-bson
];
checkInputs = [
alcotest
crowbar
];
doCheck = true;
meta = {
homepage = "https://gitlab.com/nomadic-labs/data-encoding";
description = "Library of JSON and binary encoding combinators";
license = lib.licenses.mit;
maintainers = [ lib.maintainers.ulrikstrid ];
};
}

View file

@ -0,0 +1,20 @@
{ lib, buildDunePackage, json-data-encoding, ocplib-endian, crowbar }:
buildDunePackage {
pname = "json-data-encoding-bson";
inherit (json-data-encoding) version src useDune2 doCheck;
propagatedBuildInputs = [
json-data-encoding
ocplib-endian
];
checkInputs = [
crowbar
];
meta = json-data-encoding.meta // {
description = "Type-safe encoding to and decoding from JSON (bson support)";
};
}

View file

@ -0,0 +1,31 @@
{ lib, fetchFromGitLab, buildDunePackage, uri, crowbar }:
buildDunePackage rec {
pname = "json-data-encoding";
version = "0.8";
src = fetchFromGitLab {
owner = "nomadic-labs";
repo = "json-data-encoding";
rev = "v${version}";
sha256 = "1c6m2qvi9bm6qjxc38p6cia1f66r0rb9xf6b8svlj3jjymvqw889";
};
useDune2 = true;
propagatedBuildInputs = [
uri
];
checkInputs = [
crowbar
];
doCheck = true;
meta = {
homepage = "https://gitlab.com/nomadic-labs/json-data-encoding";
description = "Type-safe encoding to and decoding from JSON";
license = lib.licenses.lgpl3;
maintainers = [ lib.maintainers.ulrikstrid ];
};
}

View file

@ -1,9 +1,8 @@
{ buildPythonPackage { lib
, buildPythonPackage
, fetchFromGitHub , fetchFromGitHub
, fetchPypi
, git , git
, isPy27 , pythonOlder
, lib
, pytestCheckHook , pytestCheckHook
, ruamel_yaml , ruamel_yaml
, toml , toml
@ -11,19 +10,25 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "pre-commit-hooks"; pname = "pre-commit-hooks";
version = "3.4.0"; version = "4.0.1";
disabled = isPy27; disabled = pythonOlder "3.6";
# fetchPypi does not provide tests
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "pre-commit"; owner = "pre-commit";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "1aqkmprdc2lhds9c59pkkf2js65j63197flanaggk7cm8k0kz7zs"; sha256 = "sha256-Rg2I79r0Pp3AUgT6mD+kEdm+5CEGgdmFn6G3xcU6fnk=";
}; };
propagatedBuildInputs = [ toml ruamel_yaml ]; propagatedBuildInputs = [
checkInputs = [ git pytestCheckHook ]; ruamel_yaml
toml
];
checkInputs = [
git
pytestCheckHook
];
# the tests require a functional git installation which requires a valid HOME # the tests require a functional git installation which requires a valid HOME
# directory. # directory.
@ -34,6 +39,8 @@ buildPythonPackage rec {
git config --global user.email "nix-builder@nixos.org" git config --global user.email "nix-builder@nixos.org"
''; '';
pythonImportsCheck = [ "pre_commit_hooks" ];
meta = with lib; { meta = with lib; {
description = "Some out-of-the-box hooks for pre-commit"; description = "Some out-of-the-box hooks for pre-commit";
homepage = "https://github.com/pre-commit/pre-commit-hooks"; homepage = "https://github.com/pre-commit/pre-commit-hooks";

View file

@ -242,6 +242,8 @@ let
dap = callPackage ../development/ocaml-modules/dap { }; dap = callPackage ../development/ocaml-modules/dap { };
data-encoding = callPackage ../development/ocaml-modules/data-encoding { };
decompress = callPackage ../development/ocaml-modules/decompress { }; decompress = callPackage ../development/ocaml-modules/decompress { };
diet = callPackage ../development/ocaml-modules/diet { }; diet = callPackage ../development/ocaml-modules/diet { };
@ -548,6 +550,10 @@ let
jsonm = callPackage ../development/ocaml-modules/jsonm { }; jsonm = callPackage ../development/ocaml-modules/jsonm { };
json-data-encoding = callPackage ../development/ocaml-modules/json-data-encoding { };
json-data-encoding-bson = callPackage ../development/ocaml-modules/json-data-encoding/bson.nix { };
junit = callPackage ../development/ocaml-modules/junit { }; junit = callPackage ../development/ocaml-modules/junit { };
junit_ounit = callPackage ../development/ocaml-modules/junit/ounit.nix { }; junit_ounit = callPackage ../development/ocaml-modules/junit/ounit.nix { };
junit_alcotest = callPackage ../development/ocaml-modules/junit/alcotest.nix { }; junit_alcotest = callPackage ../development/ocaml-modules/junit/alcotest.nix { };