Merge branch 'master' of github.com:NixOS/nixpkgs into staging-next

This commit is contained in:
Jonathan Ringer 2019-12-30 10:14:18 -08:00
commit 446fec8c2d
No known key found for this signature in database
GPG Key ID: 5C841D3CFDFEC4E0
45 changed files with 806 additions and 180 deletions

View File

@ -5,15 +5,10 @@ let
in { in {
options = { options = {
services.sysstat = { services.sysstat = {
enable = mkOption { enable = mkEnableOption "sar system activity collection";
type = types.bool;
default = false;
description = ''
Whether to enable sar system activity collection.
'';
};
collect-frequency = mkOption { collect-frequency = mkOption {
type = types.str;
default = "*:00/10"; default = "*:00/10";
description = '' description = ''
OnCalendar specification for sysstat-collect OnCalendar specification for sysstat-collect
@ -21,6 +16,7 @@ in {
}; };
collect-args = mkOption { collect-args = mkOption {
type = types.str;
default = "1 1"; default = "1 1";
description = '' description = ''
Arguments to pass sa1 when collecting statistics Arguments to pass sa1 when collecting statistics
@ -33,13 +29,13 @@ in {
systemd.services.sysstat = { systemd.services.sysstat = {
description = "Resets System Activity Logs"; description = "Resets System Activity Logs";
wantedBy = [ "multi-user.target" ]; wantedBy = [ "multi-user.target" ];
preStart = "test -d /var/log/sa || mkdir -p /var/log/sa";
serviceConfig = { serviceConfig = {
User = "root"; User = "root";
RemainAfterExit = true; RemainAfterExit = true;
Type = "oneshot"; Type = "oneshot";
ExecStart = "${pkgs.sysstat}/lib/sa/sa1 --boot"; ExecStart = "${pkgs.sysstat}/lib/sa/sa1 --boot";
LogsDirectory = "sa";
}; };
}; };

View File

@ -39,6 +39,7 @@ in stdenv.mkDerivation (rec {
sed '/BUILD_TIMESTAMP=/s/=.*/=1970-01-01T00:01+0000/' -i ./configure sed '/BUILD_TIMESTAMP=/s/=.*/=1970-01-01T00:01+0000/' -i ./configure
'' + lib.optionalString (stdenv.hostPlatform.isAarch32 && stdenv.buildPlatform != stdenv.hostPlatform) '' '' + lib.optionalString (stdenv.hostPlatform.isAarch32 && stdenv.buildPlatform != stdenv.hostPlatform) ''
ln -s lock-obj-pub.arm-unknown-linux-gnueabi.h src/syscfg/lock-obj-pub.linux-gnueabihf.h ln -s lock-obj-pub.arm-unknown-linux-gnueabi.h src/syscfg/lock-obj-pub.linux-gnueabihf.h
ln -s lock-obj-pub.arm-unknown-linux-gnueabi.h src/syscfg/lock-obj-pub.linux-gnueabi.h
'' + lib.optionalString (stdenv.hostPlatform.isx86_64 && stdenv.hostPlatform.isMusl) '' '' + lib.optionalString (stdenv.hostPlatform.isx86_64 && stdenv.hostPlatform.isMusl) ''
ln -s lock-obj-pub.x86_64-pc-linux-musl.h src/syscfg/lock-obj-pub.linux-musl.h ln -s lock-obj-pub.x86_64-pc-linux-musl.h src/syscfg/lock-obj-pub.linux-musl.h
'' + lib.optionalString (stdenv.hostPlatform.isAarch32 && stdenv.hostPlatform.isMusl) '' '' + lib.optionalString (stdenv.hostPlatform.isAarch32 && stdenv.hostPlatform.isMusl) ''

View File

@ -1,19 +1,21 @@
{ stdenv, fetchFromGitHub, python, cunit, dpdk, libaio, libuuid, numactl, openssl }: { stdenv, fetchFromGitHub, python, cunit, dpdk, libaio, libbsd, libuuid, numactl, openssl }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "spdk"; pname = "spdk";
version = "19.04"; version = "19.10";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "spdk"; owner = "spdk";
repo = "spdk"; repo = "spdk";
rev = "v${version}"; rev = "v${version}";
sha256 = "10mzal1hspnh26ws5d7sc54gyjfzkf6amr0gkd7b368ng2a9z8s6"; sha256 = "16v2vswn3rnnj7ak5w5rsak6r8f9b85gyhyll4ac1k4xpyj488hj";
}; };
patches = [ ./spdk-dpdk-meson.patch ];
nativeBuildInputs = [ python ]; nativeBuildInputs = [ python ];
buildInputs = [ cunit dpdk libaio libuuid numactl openssl ]; buildInputs = [ cunit dpdk libaio libbsd libuuid numactl openssl ];
postPatch = '' postPatch = ''
patchShebangs . patchShebangs .

View File

@ -0,0 +1,17 @@
1. dpdk built with meson generates rte_build_config.h rather than rte_config.h.
2. dpdk configured with libbsd requires that dependents link with libbsd.
--- a/lib/env_dpdk/env.mk
+++ b/lib/env_dpdk/env.mk
@@ -140,6 +140,9 @@ endif
-ifneq (,$(wildcard $(DPDK_INC_DIR)/rte_config.h))
-ifneq (,$(shell grep -e "define RTE_LIBRTE_VHOST_NUMA 1" -e "define RTE_EAL_NUMA_AWARE_HUGEPAGES 1" $(DPDK_INC_DIR)/rte_config.h))
+ifneq (,$(wildcard $(DPDK_INC_DIR)/rte_build_config.h))
+ifneq (,$(shell grep -e "define RTE_LIBRTE_VHOST_NUMA 1" -e "define RTE_EAL_NUMA_AWARE_HUGEPAGES 1" $(DPDK_INC_DIR)/rte_build_config.h))
ENV_LINKER_ARGS += -lnuma
endif
+ifneq (,$(shell grep -e "define RTE_USE_LIBBSD 1" $(DPDK_INC_DIR)/rte_build_config.h))
+ENV_LINKER_ARGS += -lbsd
+endif
endif

View File

@ -1,20 +1,42 @@
{ lib, buildPythonPackage, fetchPypi, pythonOlder, { lib
, buildPythonPackage
, fetchFromGitHub
, pamqp
, pytest
, asynctest
, pyrabbit2
, isPy27
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "aioamqp"; pname = "aioamqp";
version = "0.14.0"; version = "0.14.0";
disabled = isPy27;
meta = { src = fetchFromGitHub {
owner = "Polyconseil";
repo = pname;
rev = "${pname}-${version}";
sha256 = "1gpfsrc2vi6w33c9zsycd2qn589pr7a222rb41r85m915283zy48";
};
propagatedBuildInputs = [
pamqp
];
checkInputs = [
pytest
asynctest
pyrabbit2
];
# tests assume rabbitmq server running
doCheck = false;
meta = with lib; {
homepage = https://github.com/polyconseil/aioamqp; homepage = https://github.com/polyconseil/aioamqp;
description = "AMQP implementation using asyncio"; description = "AMQP implementation using asyncio";
license = lib.licenses.bsd3; license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
}; };
src = fetchPypi {
inherit pname version;
sha256 = "eef5c23a7fedee079d8326406f5c7a5725dfe36c359373da3499fffa16f79915";
};
disabled = pythonOlder "3.3";
} }

View File

@ -0,0 +1,48 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pytestrunner
, pytest
, pytest-asyncio
, contextvars
, sqlalchemy
, isPy27
, pythonOlder
}:
buildPythonPackage rec {
pname = "aiocontextvars";
version = "0.2.2";
disabled = isPy27;
src = fetchFromGitHub {
owner = "fantix";
repo = pname;
rev = "v${version}";
sha256 = "0a2gmrm9csiknc8n3si67sgzffkydplh9d7ga1k87ygk2aj22mmk";
};
buildInputs = [
pytestrunner
];
checkInputs = [
pytest
pytest-asyncio
];
propagatedBuildInputs = [
sqlalchemy
] ++ lib.optionals (pythonOlder "3.7") [ contextvars ];
checkPhase = ''
pytest
'';
meta = with lib; {
description = "Asyncio support for PEP-567 contextvars backport";
homepage = https://github.com/fantix/aiocontextvars;
license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -0,0 +1,47 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, pymysql
, pytest
, isPy27
}:
buildPythonPackage rec {
pname = "aiomysql";
version = "0.0.20";
disabled = isPy27;
src = fetchFromGitHub {
owner = "aio-libs";
repo = pname;
rev = "v${version}";
sha256 = "1mxih81zc2k64briirpp5wz4f72l8v05avfyfibaq9fr6lcbih9b";
};
propagatedBuildInputs = [
pymysql
];
checkInputs = [
pytest
];
postPatch = ''
substituteInPlace setup.py \
--replace "PyMySQL>=0.9,<=0.9.2" "PyMySQL"
'';
checkPhase = ''
pytest
'';
# tests require mysql database
doCheck = false;
meta = with lib; {
description = "MySQL driver for asyncio";
homepage = https://github.com/aio-libs/aiomysql;
license = licenses.mit;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -0,0 +1,36 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, setuptools
, aiounittest
, isPy27
, pytest
}:
buildPythonPackage rec {
pname = "aiosqlite";
version = "0.11.0";
disabled = isPy27;
src = fetchFromGitHub {
owner = "jreese";
repo = pname;
rev = "v${version}";
sha256 = "0pmkp4iy738yv2sl08kvhd0ma6wjqbmfnwid72gvg4zqsr1hnn0z";
};
buildInputs = [
setuptools
];
checkInputs = [
aiounittest
];
meta = with lib; {
description = "Asyncio bridge to the standard sqlite3 module";
homepage = https://github.com/jreese/aiosqlite;
license = licenses.mit;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -0,0 +1,36 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, nose
, coverage
, isPy27
}:
buildPythonPackage rec {
pname = "aiounittest";
version = "1.3.1";
disabled = isPy27;
src = fetchFromGitHub {
owner = "kwarunek";
repo = pname;
rev = version;
sha256 = "0mlic2q49cb0vv62mixy4i4x8c91qb6jlji7khiamcxcg676nasl";
};
checkInputs = [
nose
coverage
];
checkPhase = ''
nosetests
'';
meta = with lib; {
description = "Test asyncio code more easily";
homepage = https://github.com/kwarunek/aiounittest;
license = licenses.mit;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -0,0 +1,49 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, sqlalchemy
, aiocontextvars
, isPy27
, pytest
, asyncpg
, aiomysql
, aiosqlite
}:
buildPythonPackage rec {
pname = "databases";
version = "0.2.6";
disabled = isPy27;
src = fetchFromGitHub {
owner = "encode";
repo = pname;
rev = version;
sha256 = "0cdb4vln4zdmqbbcj7711b81b2l64jg1miihqcg8gpi35v404h2q";
};
propagatedBuildInputs = [
sqlalchemy
aiocontextvars
];
checkInputs = [
pytest
asyncpg
aiomysql
aiosqlite
];
# big chunk to tests depend on existing posgresql and mysql databases
# some tests are better than no tests
checkPhase = ''
pytest --ignore=tests/test_integration.py --ignore=tests/test_databases.py
'';
meta = with lib; {
description = "Async database support for Python";
homepage = https://github.com/encode/databases;
license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -1,22 +1,36 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchFromGitHub
, tox , pytest
, pytestcov
, pytest_xdist
, pytest-django
, mock
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "diskcache"; pname = "diskcache";
version = "4.1.0"; version = "4.1.0";
src = fetchPypi { src = fetchFromGitHub {
inherit pname version; owner = "grantjenks";
sha256 = "bcee5a59f9c264e2809e58d01be6569a3bbb1e36a1e0fb83f7ef9b2075f95ce0"; repo = "python-diskcache";
rev = "v${version}";
sha256 = "0xy2vpk4hixb4gg871d9sx9wxdz8pi0pmnfdwg4bf8jqfjg022w8";
}; };
checkInputs = [ checkInputs = [
tox pytest
pytestcov
pytest_xdist
pytest-django
mock
]; ];
checkPhase = ''
pytest
'';
meta = with lib; { meta = with lib; {
description = "Disk and file backed persistent cache"; description = "Disk and file backed persistent cache";
homepage = "http://www.grantjenks.com/docs/diskcache/"; homepage = "http://www.grantjenks.com/docs/diskcache/";

View File

@ -1,22 +1,28 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchFromGitHub
, uvicorn , uvicorn
, starlette , starlette
, pydantic , pydantic
, python
, isPy3k , isPy3k
, which , pytest
, pytestcov
, pyjwt
, passlib
, aiosqlite
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "fastapi"; pname = "fastapi";
version = "0.45.0"; version = "0.45.0";
format = "flit";
disabled = !isPy3k; disabled = !isPy3k;
src = fetchPypi { src = fetchFromGitHub {
inherit pname version; owner = "tiangolo";
sha256 = "44712863ca3899eb812a6869a2efe02d6be6ae972968c76a43d82ec472788f17"; repo = "fastapi";
rev = version;
sha256 = "1qwh382ny6qa3zi64micdq4j7dc64zv4rfd8g91j0digd4rhs6i1";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -25,10 +31,24 @@ buildPythonPackage rec {
pydantic pydantic
]; ];
patches = [ ./setup.py.patch ]; checkInputs = [
pytest
pytestcov
pyjwt
passlib
aiosqlite
];
# starlette pinning kept in place due to 0.12.9 being a hard
# dependency luckily fastapi is currently the only dependent on
# starlette. Please remove pinning when possible
postPatch = ''
substituteInPlace pyproject.toml \
--replace "pydantic >=0.32.2,<=0.32.2" "pydantic"
'';
checkPhase = '' checkPhase = ''
${python.interpreter} -c "from fastapi import FastAPI; app = FastAPI()" pytest --ignore=tests/test_default_response_class.py
''; '';
meta = with lib; { meta = with lib; {

View File

@ -1,13 +0,0 @@
diff --git a/setup.py b/setup.py
index ccc3d2b..77ce446 100644
--- a/setup.py
+++ b/setup.py
@@ -10,7 +10,7 @@ package_data = \
{'': ['*']}
install_requires = \
-['starlette >=0.11.1,<=0.12.0', 'pydantic >=0.30,<=0.30.0']
+['starlette >=0.11.1', 'pydantic >=0.30']
extras_require = \
{'all': ['requests',

View File

@ -1,26 +1,34 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchFromGitHub
, pythonOlder , pythonOlder
, pytest
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "fsspec"; pname = "fsspec";
version = "0.6.2"; version = "0.6.2";
disabled = pythonOlder "3.5"; disabled = pythonOlder "3.5";
src = fetchPypi { src = fetchFromGitHub {
inherit pname version; owner = "intake";
sha256 = "ffd7cd5ac32f36698097c3d78c2c433d4c12f7e4bce3a3a4036fd3491188046d"; repo = "filesystem_spec";
rev = version;
sha256 = "1y3d6xw14rcldz9779ir6mjaff4rk82ch6ahn4y9mya0qglpc31i";
}; };
# no tests checkInputs = [
doCheck = false; pytest
];
checkPhase = ''
pytest
'';
meta = with lib; { meta = with lib; {
description = "A specification that python filesystems should adhere to."; description = "A specification that python filesystems should adhere to";
homepage = "https://github.com/intake/filesystem_spec"; homepage = https://github.com/intake/filesystem_spec;
license = licenses.bsd3; license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
}; };
} }

View File

@ -0,0 +1,28 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, isPy27
}:
buildPythonPackage rec {
pname = "hstspreload";
version = "2019.12.25";
disabled = isPy27;
src = fetchFromGitHub {
owner = "sethmlarson";
repo = pname;
rev = version;
sha256 = "1aa7jccwldxw3s0z668qqb0i0plsark1q3jvkmqkyp645w5bfilk";
};
# tests require network connection
doCheck = false;
meta = with lib; {
description = "Chromium HSTS Preload list as a Python package and updated daily";
homepage = https://github.com/sethmlarson/hstspreload;
license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -0,0 +1,68 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, certifi
, hstspreload
, chardet
, h11
, h2
, idna
, rfc3986
, sniffio
, isPy27
, pytest
, pytestcov
, trustme
, uvicorn
, trio
, brotli
}:
buildPythonPackage rec {
pname = "httpx";
version = "0.9.5";
disabled = isPy27;
src = fetchFromGitHub {
owner = "encode";
repo = pname;
rev = version;
sha256 = "140z2j7b5hlcxvfb433hqv5b8irqa88hpq33lzr9m992djbhj2hb";
};
propagatedBuildInputs = [
certifi
hstspreload
chardet
h11
h2
idna
rfc3986
sniffio
];
checkInputs = [
pytest
pytestcov
trustme
uvicorn
trio
brotli
];
postPatch = ''
substituteInPlace setup.py \
--replace "h11==0.8.*" "h11"
'';
checkPhase = ''
PYTHONPATH=.:$PYTHONPATH pytest
'';
meta = with lib; {
description = "The next generation HTTP client";
homepage = https://github.com/encode/httpx;
license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -10,11 +10,24 @@ buildPythonPackage rec {
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "95d18aa13ceb1b18a6109433b42d054e13b9a295cba96c08ab719f864f589d68"; sha256 = "0s4xb17qd7vimc46rafbjnibj4sf0lnv8cwl22k1h6zb7jhqmlcm";
}; };
checkInputs = [ pytest ]; nativeBuildInputs = [
propagatedBuildInputs = [ numpy cython ]; cython
];
checkInputs = [
pytest
];
propagatedBuildInputs = [
numpy
];
checkPhase = ''
pytest
'';
meta = with lib; { meta = with lib; {
description = "Block-oriented, in-memory buffer transformation, compression, and decompression functions"; description = "Block-oriented, in-memory buffer transformation, compression, and decompression functions";

View File

@ -0,0 +1,43 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, databases
, typesystem
, aiosqlite
, pytest
, pytestcov
}:
buildPythonPackage rec {
pname = "orm";
version = "0.1.5";
src = fetchFromGitHub {
owner = "encode";
repo = "orm";
rev = version;
sha256 = "1g70cr0559iyqfzidwh6n2qq6d4dcnrr4sg0jkn1s4qzka828mj7";
};
propagatedBuildInputs = [
databases
typesystem
];
checkInputs = [
aiosqlite
pytest
pytestcov
];
checkPhase = ''
PYTHONPATH=$PYTHONPATH:. pytest
'';
meta = with lib; {
description = "An async ORM";
homepage = https://github.com/encode/orm;
license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -1,21 +1,25 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, fetchPypi , fetchFromGitHub
, ujson , ujson
, email_validator , email_validator
, typing-extensions , typing-extensions
, python , python
, isPy3k , isPy3k
, pytest
, pytestcov
}: }:
buildPythonPackage rec { buildPythonPackage rec {
pname = "pydantic"; pname = "pydantic";
version = "1.2"; version = "1.3";
disabled = !isPy3k; disabled = !isPy3k;
src = fetchPypi { src = fetchFromGitHub {
inherit pname version; owner = "samuelcolvin";
sha256 = "da10b034750addbd95a328654d20364c479f4e2e26e0f72933204d61cbc8fa78"; repo = pname;
rev = "v${version}";
sha256 = "0s85nzlsyj97j54zsgv569hkzv617z0vqsifsxkkyiimgbvnx7g8";
}; };
propagatedBuildInputs = [ propagatedBuildInputs = [
@ -24,22 +28,13 @@ buildPythonPackage rec {
typing-extensions typing-extensions
]; ];
checkInputs = [
pytest
pytestcov
];
checkPhase = '' checkPhase = ''
${python.interpreter} -c """ pytest
from datetime import datetime
from typing import List
from pydantic import BaseModel
class User(BaseModel):
id: int
name = 'John Doe'
signup_ts: datetime = None
friends: List[int] = []
external_data = {'id': '123', 'signup_ts': '2017-06-01 12:22', 'friends': [1, '2', b'3']}
user = User(**external_data)
assert user.id is "123"
"""
''; '';
meta = with lib; { meta = with lib; {

View File

@ -0,0 +1,26 @@
{ lib
, buildPythonPackage
, fetchPypi
, requests
}:
buildPythonPackage rec {
pname = "pyrabbit2";
version = "1.0.7";
src = fetchPypi {
inherit pname version;
sha256 = "d27160cb35c096f0072df57307233d01b117a451236e136604a8e51be6f106c0";
};
propagatedBuildInputs = [
requests
];
meta = with lib; {
description = "A Pythonic interface to the RabbitMQ Management HTTP API";
homepage = https://github.com/deslum/pyrabbit2;
license = licenses.mit;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -0,0 +1,41 @@
{ lib
, buildPythonPackage
, fetchPypi
, pytest
, pytestcov
, mock
, pyyaml
, six
}:
buildPythonPackage rec {
pname = "python-multipart";
version = "0.0.5";
src = fetchPypi {
inherit pname version;
sha256 = "f7bb5f611fc600d15fa47b3974c8aa16e93724513b49b5f95c81e6624c83fa43";
};
checkInputs = [
pytest
pytestcov
mock
pyyaml
];
propagatedBuildInputs = [
six
];
checkPhase = ''
pytest
'';
meta = with lib; {
description = "A streaming multipart parser for Python";
homepage = https://github.com/andrew-d/python-multipart;
license = licenses.asl20;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -9,11 +9,13 @@
, pyyaml , pyyaml
, requests , requests
, ujson , ujson
, python-multipart
, pytest , pytest
, python
, uvicorn , uvicorn
, isPy27 , isPy27
, darwin , darwin
, databases
, aiosqlite
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -35,13 +37,17 @@ buildPythonPackage rec {
requests requests
ujson ujson
uvicorn uvicorn
python-multipart
databases
] ++ stdenv.lib.optional stdenv.isDarwin [ darwin.apple_sdk.frameworks.ApplicationServices ]; ] ++ stdenv.lib.optional stdenv.isDarwin [ darwin.apple_sdk.frameworks.ApplicationServices ];
checkInputs = [
pytest
aiosqlite
];
checkPhase = '' checkPhase = ''
${python.interpreter} -c """ pytest --ignore=tests/test_graphql.py
from starlette.applications import Starlette
app = Starlette(debug=True)
"""
''; '';
meta = with lib; { meta = with lib; {

View File

@ -1,7 +1,14 @@
{ lib, fetchPypi, buildPythonPackage, isPy27, isPy3k { lib
, numpy, enum34, futures, pathlib , fetchPypi
, pytest , buildPythonPackage
, isPy27
, isPy3k
, numpy
, imagecodecs-lite , imagecodecs-lite
, enum34
, futures
, pathlib
, pytest
}: }:
buildPythonPackage rec { buildPythonPackage rec {
@ -18,14 +25,24 @@ buildPythonPackage rec {
# Missing dependencies: imagecodecs, czifile, cmapfile, oiffile, lfdfiles # Missing dependencies: imagecodecs, czifile, cmapfile, oiffile, lfdfiles
# and test data missing from PyPI tarball # and test data missing from PyPI tarball
doCheck = false; doCheck = false;
checkInputs = [ pytest ];
checkInputs = [
pytest
];
checkPhase = '' checkPhase = ''
pytest pytest
''; '';
propagatedBuildInputs = [ numpy ] propagatedBuildInputs = [
++ lib.optionals isPy27 [ futures enum34 pathlib ] numpy
++ lib.optionals isPy3k [ imagecodecs-lite ]; ] ++ lib.optionals isPy3k [
imagecodecs-lite
] ++ lib.optionals isPy27 [
futures
enum34
pathlib
];
meta = with lib; { meta = with lib; {
description = "Read and write image data from and to TIFF files."; description = "Read and write image data from and to TIFF files.";

View File

@ -1,5 +1,6 @@
{ stdenv, buildPythonPackage, fetchPypi, twine, pbr, click, click-completion, validate-email, { stdenv, buildPythonPackage, fetchPypi, twine, pbr, click, click-completion, validate-email,
pendulum, ptable, requests, inquirer, pythonOlder, pytest, pytestcov, pytest-mock, faker, factory_boy }: pendulum, ptable, requests, inquirer, pythonOlder, pytest, pytestcov, pytest-mock, faker, factory_boy,
setuptools }:
buildPythonPackage rec { buildPythonPackage rec {
@ -16,6 +17,7 @@ buildPythonPackage rec {
postPatch = '' postPatch = ''
substituteInPlace requirements.txt \ substituteInPlace requirements.txt \
--replace "pendulum==2.0.4" "pendulum>=2.0.4" \
--replace "click-completion==0.5.0" "click-completion>=0.5.0" \ --replace "click-completion==0.5.0" "click-completion>=0.5.0" \
--replace "pbr==5.1.2" "pbr>=5.1.2" \ --replace "pbr==5.1.2" "pbr>=5.1.2" \
--replace "inquirer==2.5.1" "inquirer>=2.5.1" --replace "inquirer==2.5.1" "inquirer>=2.5.1"
@ -37,6 +39,7 @@ buildPythonPackage rec {
''; '';
propagatedBuildInputs = [ propagatedBuildInputs = [
setuptools
click click
click-completion click-completion
validate-email validate-email

View File

@ -16,13 +16,13 @@
buildPythonPackage rec { buildPythonPackage rec {
pname = "trezor"; pname = "trezor";
version = "0.11.5"; version = "0.11.6";
disabled = !isPy3k; disabled = !isPy3k;
src = fetchPypi { src = fetchPypi {
inherit pname version; inherit pname version;
sha256 = "cd8aafd70a281daa644c4a3fb021ffac20b7a88e86226ecc8bb3e78e1734a184"; sha256 = "1i73j812i0dgjw9n106pipc6qksd9cgs59d0as0b4j5iyl0087hh";
}; };
propagatedBuildInputs = [ typing-extensions protobuf hidapi ecdsa mnemonic requests pyblake2 click construct libusb1 rlp shamir-mnemonic trezor-udev-rules ]; propagatedBuildInputs = [ typing-extensions protobuf hidapi ecdsa mnemonic requests pyblake2 click construct libusb1 rlp shamir-mnemonic trezor-udev-rules ];

View File

@ -0,0 +1,44 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, isPy27
, pytest
, pytestcov
, jinja2
, pyyaml
}:
buildPythonPackage rec {
pname = "typesystem";
version = "0.2.4";
disabled = isPy27;
src = fetchFromGitHub {
owner = "encode";
repo = pname;
rev = version;
sha256 = "1k0jwcky17zwaz2vx4x2zbsnp270g4mgn7kx5bpl8jgx76qmsnba";
};
propagatedBuildInputs = [
jinja2
pyyaml
];
checkInputs = [
pytest
pytestcov
];
# for some reason jinja2 not picking up forms directory (1% of tests)
checkPhase = ''
pytest --ignore=tests/test_forms.py
'';
meta = with lib; {
description = "A type system library for Python";
homepage = https://github.com/encode/typesystem;
license = licenses.bsd3;
maintainers = [ maintainers.costrouc ];
};
}

View File

@ -10,11 +10,12 @@
let let
# See https://mesonbuild.com/Reference-tables.html#cpu-families # See https://mesonbuild.com/Reference-tables.html#cpu-families
cpuFamilies = { cpuFamilies = {
aarch64 = "aarch64"; aarch64 = "aarch64";
armv6l = "arm"; armv5tel = "arm";
armv7l = "arm"; armv6l = "arm";
i686 = "x86"; armv7l = "arm";
x86_64 = "x86_64"; i686 = "x86";
x86_64 = "x86_64";
}; };
in in
python3Packages.buildPythonApplication rec { python3Packages.buildPythonApplication rec {

View File

@ -1,4 +1,4 @@
{ stdenv, lib, fetchurl, libftdi1, libusb1, pkgconfig, hidapi }: { stdenv, lib, fetchurl, fetchpatch, libftdi1, libusb1, pkgconfig, hidapi }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "openocd"; pname = "openocd";
@ -9,6 +9,15 @@ stdenv.mkDerivation rec {
sha256 = "1bhn2c85rdz4gf23358kg050xlzh7yxbbwmqp24c0akmh3bff4kk"; sha256 = "1bhn2c85rdz4gf23358kg050xlzh7yxbbwmqp24c0akmh3bff4kk";
}; };
patches = [
# Fix FTDI channel configuration for SheevaPlug
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=837989
(fetchpatch {
url = "https://salsa.debian.org/electronics-team/openocd/raw/9a94335daa332a37a51920f87afbad4d36fad2d5/debian/patches/fix-sheeva.patch";
sha256 = "01x021fagwvgxdpzk7psap7ryqiya4m4mi4nqr27asbmb3q46g5r";
})
];
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ pkgconfig ];
buildInputs = [ libftdi1 libusb1 hidapi ]; buildInputs = [ libftdi1 libusb1 hidapi ];

View File

@ -6,6 +6,10 @@
, interactive ? false, ncurses, procps , interactive ? false, ncurses, procps
}: }:
let
crossBuildTools = interactive && stdenv.hostPlatform != stdenv.buildPlatform;
in
with stdenv.lib; with stdenv.lib;
stdenv.mkDerivation { stdenv.mkDerivation {
@ -17,7 +21,13 @@ stdenv.mkDerivation {
inherit sha256; inherit sha256;
}; };
patches = optional (version == "6.5") ./perl.patch; patches = optional (version == "6.5") ./perl.patch
++ optional crossBuildTools ./cross-tools-flags.patch;
# ncurses is required to build `makedoc'
# this feature is introduced by the ./cross-tools-flags.patch
NATIVE_TOOLS_CFLAGS = if crossBuildTools then "-I${getDev buildPackages.ncurses}/include" else null;
NATIVE_TOOLS_LDFLAGS = if crossBuildTools then "-L${getLib buildPackages.ncurses}/lib" else null;
# We need a native compiler to build perl XS extensions # We need a native compiler to build perl XS extensions
# when cross-compiling. # when cross-compiling.

View File

@ -0,0 +1,12 @@
diff -ur texinfo-6.5/configure texinfo-6.5-patched/configure
--- texinfo-6.5/configure 2017-09-13 03:50:18.000000000 +0900
+++ texinfo-6.5-patched/configure 2019-12-28 17:39:06.692818866 +0900
@@ -23281,7 +23281,7 @@
# env -i gives this build host configure a clean environment;
# consequently, we have to re-initialize $PATH.
env -i CC="$BUILD_CC" AR="$BUILD_AR" RANLIB="$BUILD_RANLIB" \
- PATH="$PATH" \
+ PATH="$PATH" CFLAGS="$NATIVE_TOOLS_CFLAGS" LDFLAGS="$NATIVE_TOOLS_LDFLAGS" \
tools_only=1 \
${confdir}/configure --build=${build} --host=${build} \
--disable-rpath --disable-nls

View File

@ -79,6 +79,7 @@ in buildFHSUserEnv rec {
# Not formally in runtime but needed by some games # Not formally in runtime but needed by some games
at-spi2-atk at-spi2-atk
at-spi2-core # CrossCode
gst_all_1.gstreamer gst_all_1.gstreamer
gst_all_1.gst-plugins-ugly gst_all_1.gst-plugins-ugly
libdrm libdrm

View File

@ -300,7 +300,7 @@ in {
ubootSheevaplug = buildUBoot { ubootSheevaplug = buildUBoot {
defconfig = "sheevaplug_defconfig"; defconfig = "sheevaplug_defconfig";
extraMeta.platforms = ["armv5tel-linux"]; extraMeta.platforms = ["armv5tel-linux"];
filesToInstall = ["u-boot.bin"]; filesToInstall = ["u-boot.kwb"];
}; };
ubootSopine = buildUBoot { ubootSopine = buildUBoot {

View File

@ -7,16 +7,15 @@
, shared ? false }: , shared ? false }:
let let
kver = kernel.modDirVersion or null;
mod = kernel != null; mod = kernel != null;
in stdenv.mkDerivation rec { in stdenv.mkDerivation rec {
name = "dpdk-${version}" + lib.optionalString mod "-${kernel.version}"; name = "dpdk-${version}" + lib.optionalString mod "-${kernel.version}";
version = "19.08.2"; version = "19.11";
src = fetchurl { src = fetchurl {
url = "https://fast.dpdk.org/rel/dpdk-${version}.tar.xz"; url = "https://fast.dpdk.org/rel/dpdk-${version}.tar.xz";
sha256 = "141bqqy4w6nzs9z70x7yv94a4gmxjfal46pxry9bwdh3zi1jwnyd"; sha256 = "1aqjn6bm9miv3v2rbqi1rh1c19wa8nip9fvnqaqpnrs3i2b36wa6";
}; };
nativeBuildInputs = [ nativeBuildInputs = [
@ -44,13 +43,23 @@ in stdenv.mkDerivation rec {
mesonFlags = [ mesonFlags = [
"-Denable_docs=true" "-Denable_docs=true"
"-Denable_kmods=${if kernel != null then "true" else "false"}" "-Denable_kmods=${if mod then "true" else "false"}"
]
++ lib.optionals (shared == false) [
"-Ddefault_library=static"
] ]
++ lib.optional (!shared) "-Ddefault_library=static"
++ lib.optional stdenv.isx86_64 "-Dmachine=nehalem" ++ lib.optional stdenv.isx86_64 "-Dmachine=nehalem"
++ lib.optional (kernel != null) "-Dkernel_dir=${kernel.dev}/lib/modules/${kernel.modDirVersion}"; ++ lib.optional mod "-Dkernel_dir=${placeholder "kmod"}/lib/modules/${kernel.modDirVersion}";
# dpdk meson script does not support separate kernel source and installion
# dirs (except via destdir), so we temporarily link the former into the latter.
preConfigure = lib.optionalString mod ''
mkdir -p $kmod/lib/modules/${kernel.modDirVersion}
ln -sf ${kernel.dev}/lib/modules/${kernel.modDirVersion}/build \
$kmod/lib/modules/${kernel.modDirVersion}
'';
postBuild = lib.optionalString mod ''
rm -f $kmod/lib/modules/${kernel.modDirVersion}/build
'';
outputs = [ "out" ] ++ lib.optional mod "kmod"; outputs = [ "out" ] ++ lib.optional mod "kmod";

View File

@ -5,7 +5,7 @@
version = "18.11.5"; version = "18.11.5";
src = fetchurl { src = fetchurl {
url = "https://fast.dpdk.org/rel/dpdk-${version}.tar.xz"; url = "https://fast.dpdk.org/rel/dpdk-${version}.tar.xz";
sha256 = "0000000000000000000000000000000000000000000000000000"; sha256 = "1n6nfaj7703l19jcw540lm8avni48hj9q1rq4mfp8b8gd4zjprj0";
}; };
}); });
@ -46,6 +46,8 @@ in stdenv.mkDerivation rec {
# binaries will segfault otherwise # binaries will segfault otherwise
dontStrip = true; dontStrip = true;
enableParallelBuilding = true;
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Open Data Plane optimized for DPDK"; description = "Open Data Plane optimized for DPDK";
homepage = https://www.opendataplane.org; homepage = https://www.opendataplane.org;

View File

@ -0,0 +1,17 @@
1. librte_process_info does not exist.
2. lua5.3 library is liblua.
3. app/meson.build uses undeclared drivers_install_subdir.
--- a/lib/common/meson.build
+++ b/lib/common/meson.build
@@ -34,1 +34,1 @@
-libs = ['eal', 'kvargs', 'cmdline', 'process_info']
+libs = ['eal', 'kvargs', 'cmdline']
--- a/lib/lua/meson.build
+++ b/lib/lua/meson.build
@@ -31 +31 @@ endforeach
-ext_deps += cc.find_library('lua5.3', required: true)
+ext_deps += cc.find_library('lua', required: true)
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -0,0 +1,1 @@
+option('drivers_install_subdir', type: 'string', value: '')

View File

@ -1,41 +1,40 @@
{ stdenv, lib, fetchurl, pkgconfig { stdenv, lib, fetchurl, meson, ninja, pkgconfig
, dpdk, libpcap, lua5_3, numactl, utillinux , dpdk, libbsd, libpcap, lua5_3, numactl, utillinux
, gtk2, which, withGtk ? false , gtk2, which, withGtk ? false
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "pktgen"; pname = "pktgen";
version = "3.7.2"; version = "19.12.0";
src = fetchurl { src = fetchurl {
url = "http://dpdk.org/browse/apps/pktgen-dpdk/snapshot/${pname}-${version}.tar.xz"; url = "http://dpdk.org/browse/apps/pktgen-dpdk/snapshot/${pname}-${version}.tar.xz";
sha256 = "03k7h4j2lsrh6b7477hgn87ljrjh2673ncffx9v261bx1ns54y7w"; sha256 = "1clfviz1qa4hysslcg6i29vsxwl9f6j1y7zf9wwx9br3yq08x956";
}; };
nativeBuildInputs = [ pkgconfig ]; nativeBuildInputs = [ meson ninja pkgconfig ];
buildInputs = buildInputs =
[ dpdk libpcap lua5_3 numactl which ] [ dpdk libbsd libpcap lua5_3 numactl which ]
++ stdenv.lib.optionals withGtk [gtk2]; ++ stdenv.lib.optionals withGtk [gtk2];
RTE_SDK = "${dpdk}/share/dpdk"; RTE_SDK = dpdk;
RTE_TARGET = "x86_64-native-linuxapp-gcc";
GUI = stdenv.lib.optionalString withGtk "true"; GUI = stdenv.lib.optionalString withGtk "true";
NIX_CFLAGS_COMPILE = [ "-msse3" ]; NIX_CFLAGS_COMPILE = [ "-msse3" ];
postPatch = let dpdkMajor = lib.versions.major dpdk.version; in '' patches = [ ./configure.patch ];
postPatch = ''
substituteInPlace lib/common/lscpu.h --replace /usr/bin/lscpu ${utillinux}/bin/lscpu substituteInPlace lib/common/lscpu.h --replace /usr/bin/lscpu ${utillinux}/bin/lscpu
''; '';
installPhase = '' postInstall = ''
install -d $out/bin # meson installs unneeded files with conflicting generic names, such as
install -m 0755 app/${RTE_TARGET}/pktgen $out/bin # include/cli.h and lib/liblua.so.
install -m 0644 Pktgen.lua $out/bin rm -rf $out/include $out/lib
''; '';
enableParallelBuilding = true;
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Traffic generator powered by DPDK"; description = "Traffic generator powered by DPDK";
homepage = http://dpdk.org/; homepage = http://dpdk.org/;

View File

@ -9,13 +9,16 @@ stdenv.mkDerivation rec {
sha256 = "1lijl89l7hljx8xx70vrz9srd3h41v5gh4b0lvqnlv831yvyh5cd"; sha256 = "1lijl89l7hljx8xx70vrz9srd3h41v5gh4b0lvqnlv831yvyh5cd";
}; };
nativeBuildInputs = [ autoreconfHook cmocka pkgconfig ]; nativeBuildInputs = [ autoreconfHook pkgconfig ] ++ stdenv.lib.optional doCheck cmocka;
buildInputs = [ acl libuuid lzo zlib zstd ]; buildInputs = [ acl libuuid lzo zlib zstd ];
configureFlags = [ "--enable-unit-tests" "--enable-tests" ]; configureFlags = [
(stdenv.lib.enableFeature doCheck "unit-tests")
(stdenv.lib.enableFeature doCheck "tests")
];
enableParallelBuilding = true; enableParallelBuilding = true;
doCheck = true; doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
meta = { meta = {
description = "Tools for MTD filesystems"; description = "Tools for MTD filesystems";

View File

@ -2,16 +2,16 @@
rustPlatform.buildRustPackage rec { rustPlatform.buildRustPackage rec {
pname = "topgrade"; pname = "topgrade";
version = "3.5.0"; version = "3.6.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "r-darwish"; owner = "r-darwish";
repo = pname; repo = pname;
rev = "v${version}"; rev = "v${version}";
sha256 = "15w1qi38dsx573nadqpvarxx63xla53w775fwkdds2iyspaljsg6"; sha256 = "1pr8bwwxp8zvn89ldsb0qy5asx59kpd7dsp7sjmgnbj2ddizl05n";
}; };
cargoSha256 = "0xhrgs2rpkgjzgsipq5rb3fmqwvxrl2wi0fly1xaa6p304k1710m"; cargoSha256 = "1f5s8nxl450vpfhvshiwvm49q6ph79vb40qqiz0a2i6jdrzhphq3";
meta = with stdenv.lib; { meta = with stdenv.lib; {
description = "Upgrade all the things"; description = "Upgrade all the things";

View File

@ -57,7 +57,7 @@ common =
propagatedBuildInputs = [ boehmgc ]; propagatedBuildInputs = [ boehmgc ];
# Seems to be required when using std::atomic with 64-bit types # Seems to be required when using std::atomic with 64-bit types
NIX_LDFLAGS = lib.optionalString (stdenv.hostPlatform.system == "armv6l-linux") "-latomic"; NIX_LDFLAGS = lib.optionalString (stdenv.hostPlatform.system == "armv5tel-linux" || stdenv.hostPlatform.system == "armv6l-linux") "-latomic";
preConfigure = preConfigure =
# Copy libboost_context so we don't get all of Boost in our closure. # Copy libboost_context so we don't get all of Boost in our closure.

View File

@ -4,12 +4,12 @@ Updating the QEMU patches
When updating to the latest American Fuzzy Lop, make sure to check for When updating to the latest American Fuzzy Lop, make sure to check for
any new patches to qemu for binary fuzzing support: any new patches to qemu for binary fuzzing support:
https://github.com/mirrorer/afl/tree/master/qemu_mode https://github.com/google/AFL/tree/master/qemu_mode
Be sure to check the build script and make sure it's also using the Be sure to check the build script and make sure it's also using the
right QEMU version and options in `qemu.nix`: right QEMU version and options in `qemu.nix`:
https://github.com/mirrorer/afl/blob/master/qemu_mode/build_qemu_support.sh https://github.com/google/AFL/blob/master/qemu_mode/build_qemu_support.sh
`afl-config.h`, `afl-types.h`, and `afl-qemu-cpu-inl.h` are part of `afl-config.h`, `afl-types.h`, and `afl-qemu-cpu-inl.h` are part of
the afl source code, and copied from `config.h`, `types.h` and the afl source code, and copied from `config.h`, `types.h` and

View File

@ -1,4 +1,4 @@
{ stdenv, fetchurl, callPackage, makeWrapper { stdenv, fetchFromGitHub, callPackage, makeWrapper
, clang, llvm, which, libcgroup , clang, llvm, which, libcgroup
}: }:
@ -9,11 +9,13 @@ let
else throw "afl: no support for ${stdenv.hostPlatform.system}!"; else throw "afl: no support for ${stdenv.hostPlatform.system}!";
afl = stdenv.mkDerivation rec { afl = stdenv.mkDerivation rec {
pname = "afl"; pname = "afl";
version = "2.52b"; version = "2.56b";
src = fetchurl { src = fetchFromGitHub {
url = "http://lcamtuf.coredump.cx/afl/releases/${pname}-${version}.tgz"; owner = "google";
sha256 = "0ig0ij4n1pwry5dw1hk4q88801jzzy2cric6y2gd6560j55lnqa3"; repo = pname;
rev = "v${version}";
sha256 = "1q1g59gkm48aa4cg9h70jx4i2gapmypgp5rzs156b2avd95vwkn1";
}; };
enableParallelBuilding = true; enableParallelBuilding = true;

View File

@ -5,7 +5,7 @@ stdenv.mkDerivation {
pname = "libdislocator"; pname = "libdislocator";
src = afl.src; src = afl.src;
sourceRoot = "${afl.name}/libdislocator"; sourceRoot = "${afl.src.name}/libdislocator";
makeFlags = [ "PREFIX=$(out)" ]; makeFlags = [ "PREFIX=$(out)" ];

View File

@ -1,28 +0,0 @@
A modified version of qemu commit 75e5b70e6b5dcc4f2219992d7cffa462aa406af0
diff --git a/configure b/configure
index 9c8aa5a..99ccc17 100755
--- a/configure
+++ b/configure
@@ -3855,7 +3855,7 @@ fi
# check if memfd is supported
memfd=no
cat > $TMPC << EOF
-#include <sys/memfd.h>
+#include <sys/mman.h>
int main(void)
{
diff --git a/util/memfd.c b/util/memfd.c
index 4571d1a..412e94a 100644
--- a/util/memfd.c
+++ b/util/memfd.c
@@ -31,9 +31,7 @@
#include "qemu/memfd.h"
-#ifdef CONFIG_MEMFD
-#include <sys/memfd.h>
-#elif defined CONFIG_LINUX
+#if defined CONFIG_LINUX && !defined CONFIG_MEMFD
#include <sys/syscall.h>
#include <asm/unistd.h>

View File

@ -6,7 +6,6 @@ with stdenv.lib;
let let
qemuName = "qemu-2.10.0"; qemuName = "qemu-2.10.0";
aflName = afl.name;
cpuTarget = if stdenv.hostPlatform.system == "x86_64-linux" then "x86_64-linux-user" cpuTarget = if stdenv.hostPlatform.system == "x86_64-linux" then "x86_64-linux-user"
else if stdenv.hostPlatform.system == "i686-linux" then "i386-linux-user" else if stdenv.hostPlatform.system == "i686-linux" then "i386-linux-user"
else throw "afl: no support for ${stdenv.hostPlatform.system}!"; else throw "afl: no support for ${stdenv.hostPlatform.system}!";
@ -25,12 +24,12 @@ stdenv.mkDerivation {
sourceRoot = qemuName; sourceRoot = qemuName;
postUnpack = '' postUnpack = ''
cp ${aflName}/types.h $sourceRoot/afl-types.h cp ${afl.src.name}/types.h $sourceRoot/afl-types.h
substitute ${aflName}/config.h $sourceRoot/afl-config.h \ substitute ${afl.src.name}/config.h $sourceRoot/afl-config.h \
--replace "types.h" "afl-types.h" --replace "types.h" "afl-types.h"
substitute ${aflName}/qemu_mode/patches/afl-qemu-cpu-inl.h $sourceRoot/afl-qemu-cpu-inl.h \ substitute ${afl.src.name}/qemu_mode/patches/afl-qemu-cpu-inl.h $sourceRoot/afl-qemu-cpu-inl.h \
--replace "../../config.h" "afl-config.h" --replace "../../config.h" "afl-config.h"
substituteInPlace ${aflName}/qemu_mode/patches/cpu-exec.diff \ substituteInPlace ${afl.src.name}/qemu_mode/patches/cpu-exec.diff \
--replace "../patches/afl-qemu-cpu-inl.h" "afl-qemu-cpu-inl.h" --replace "../patches/afl-qemu-cpu-inl.h" "afl-qemu-cpu-inl.h"
''; '';
@ -46,12 +45,13 @@ stdenv.mkDerivation {
patches = [ patches = [
# patches extracted from afl source # patches extracted from afl source
"../${aflName}/qemu_mode/patches/cpu-exec.diff" "../${afl.src.name}/qemu_mode/patches/cpu-exec.diff"
"../${aflName}/qemu_mode/patches/elfload.diff" "../${afl.src.name}/qemu_mode/patches/elfload.diff"
"../${aflName}/qemu_mode/patches/syscall.diff" "../${afl.src.name}/qemu_mode/patches/syscall.diff"
"../${afl.src.name}/qemu_mode/patches/configure.diff"
"../${afl.src.name}/qemu_mode/patches/memfd.diff"
# nix-specific patches to make installation more well-behaved # nix-specific patches to make installation more well-behaved
./qemu-patches/no-etc-install.patch ./qemu-patches/no-etc-install.patch
./qemu-patches/qemu-2.10.0-glibc-2.27.patch
]; ];
configureFlags = configureFlags =

View File

@ -556,6 +556,8 @@ in {
inherit (pkgs.llvmPackages) openmp libcxx libcxxabi; inherit (pkgs.llvmPackages) openmp libcxx libcxxabi;
}; };
databases = callPackage ../development/python-modules/databases { };
datamodeldict = callPackage ../development/python-modules/datamodeldict { }; datamodeldict = callPackage ../development/python-modules/datamodeldict { };
datasette = callPackage ../development/python-modules/datasette { }; datasette = callPackage ../development/python-modules/datasette { };
@ -1460,16 +1462,22 @@ in {
aiohttp-swagger = callPackage ../development/python-modules/aiohttp-swagger { }; aiohttp-swagger = callPackage ../development/python-modules/aiohttp-swagger { };
aiomysql = callPackage ../development/python-modules/aiomysql { };
aioprocessing = callPackage ../development/python-modules/aioprocessing { }; aioprocessing = callPackage ../development/python-modules/aioprocessing { };
aioresponses = callPackage ../development/python-modules/aioresponses { }; aioresponses = callPackage ../development/python-modules/aioresponses { };
aiosqlite = callPackage ../development/python-modules/aiosqlite { };
aiorpcx = callPackage ../development/python-modules/aiorpcx { }; aiorpcx = callPackage ../development/python-modules/aiorpcx { };
aiosmtpd = callPackage ../development/python-modules/aiosmtpd { }; aiosmtpd = callPackage ../development/python-modules/aiosmtpd { };
aiounifi = callPackage ../development/python-modules/aiounifi { }; aiounifi = callPackage ../development/python-modules/aiounifi { };
aiounittest = callPackage ../development/python-modules/aiounittest { };
aiozeroconf = callPackage ../development/python-modules/aiozeroconf { }; aiozeroconf = callPackage ../development/python-modules/aiozeroconf { };
ajpy = callPackage ../development/python-modules/ajpy { }; ajpy = callPackage ../development/python-modules/ajpy { };
@ -2626,10 +2634,14 @@ in {
hsaudiotag3k = callPackage ../development/python-modules/hsaudiotag3k { }; hsaudiotag3k = callPackage ../development/python-modules/hsaudiotag3k { };
hstspreload = callPackage ../development/python-modules/hstspreload { };
htmlmin = callPackage ../development/python-modules/htmlmin {}; htmlmin = callPackage ../development/python-modules/htmlmin {};
httpauth = callPackage ../development/python-modules/httpauth { }; httpauth = callPackage ../development/python-modules/httpauth { };
httpx = callPackage ../development/python-modules/httpx { };
idna-ssl = callPackage ../development/python-modules/idna-ssl { }; idna-ssl = callPackage ../development/python-modules/idna-ssl { };
identify = callPackage ../development/python-modules/identify { }; identify = callPackage ../development/python-modules/identify { };
@ -4325,6 +4337,8 @@ in {
orderedset = callPackage ../development/python-modules/orderedset { }; orderedset = callPackage ../development/python-modules/orderedset { };
python-multipart = callPackage ../development/python-modules/python-multipart { };
python-otr = callPackage ../development/python-modules/python-otr { }; python-otr = callPackage ../development/python-modules/python-otr { };
plone-testing = callPackage ../development/python-modules/plone-testing { }; plone-testing = callPackage ../development/python-modules/plone-testing { };
@ -4373,6 +4387,8 @@ in {
fasteners = callPackage ../development/python-modules/fasteners { }; fasteners = callPackage ../development/python-modules/fasteners { };
aiocontextvars = callPackage ../development/python-modules/aiocontextvars { };
aioeventlet = callPackage ../development/python-modules/aioeventlet { }; aioeventlet = callPackage ../development/python-modules/aioeventlet { };
aiokafka = callPackage ../development/python-modules/aiokafka { }; aiokafka = callPackage ../development/python-modules/aiokafka { };
@ -4724,6 +4740,8 @@ in {
pyqrcode = callPackage ../development/python-modules/pyqrcode { }; pyqrcode = callPackage ../development/python-modules/pyqrcode { };
pyrabbit2 = callPackage ../development/python-modules/pyrabbit2 { };
pyrr = callPackage ../development/python-modules/pyrr { }; pyrr = callPackage ../development/python-modules/pyrr { };
pysha3 = callPackage ../development/python-modules/pysha3 { }; pysha3 = callPackage ../development/python-modules/pysha3 { };
@ -5125,6 +5143,8 @@ in {
typesentry = callPackage ../development/python-modules/typesentry { }; typesentry = callPackage ../development/python-modules/typesentry { };
typesystem = callPackage ../development/python-modules/typesystem { };
s3transfer = callPackage ../development/python-modules/s3transfer { }; s3transfer = callPackage ../development/python-modules/s3transfer { };
seqdiag = callPackage ../development/python-modules/seqdiag { }; seqdiag = callPackage ../development/python-modules/seqdiag { };
@ -6096,6 +6116,8 @@ in {
ofxtools = callPackage ../development/python-modules/ofxtools { }; ofxtools = callPackage ../development/python-modules/ofxtools { };
orm = callPackage ../development/python-modules/orm { };
basemap = callPackage ../development/python-modules/basemap { }; basemap = callPackage ../development/python-modules/basemap { };
dict2xml = callPackage ../development/python-modules/dict2xml { }; dict2xml = callPackage ../development/python-modules/dict2xml { };