diff options
-rw-r--r-- | nixos/tests/docker-tools.nix | 14 | ||||
-rw-r--r-- | pkgs/applications/misc/tellico/default.nix | 67 | ||||
-rw-r--r-- | pkgs/applications/misc/tellico/hex.patch | 15 | ||||
-rw-r--r-- | pkgs/applications/science/logic/coq/default.nix | 1 | ||||
-rw-r--r-- | pkgs/build-support/docker/examples.nix | 22 | ||||
-rwxr-xr-x | pkgs/build-support/docker/store-path-to-layer.sh | 10 | ||||
-rw-r--r-- | pkgs/development/coq-modules/mathcomp/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/libraries/curlcpp/default.nix | 2 | ||||
-rw-r--r-- | pkgs/development/ocaml-modules/piqi/default.nix | 17 | ||||
-rw-r--r-- | pkgs/development/python-modules/markdown/3_1.nix | 34 | ||||
-rw-r--r-- | pkgs/development/python-modules/natsort/default.nix | 4 | ||||
-rw-r--r-- | pkgs/development/python-modules/soco/default.nix | 9 | ||||
-rw-r--r-- | pkgs/tools/security/hashcat/default.nix | 12 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 3 | ||||
-rw-r--r-- | pkgs/top-level/coq-packages.nix | 4 | ||||
-rw-r--r-- | pkgs/top-level/ocaml-packages.nix | 4 | ||||
-rw-r--r-- | pkgs/top-level/python-packages.nix | 5 |
17 files changed, 200 insertions, 27 deletions
diff --git a/nixos/tests/docker-tools.nix b/nixos/tests/docker-tools.nix index 2375d15b381..c48e5b07976 100644 --- a/nixos/tests/docker-tools.nix +++ b/nixos/tests/docker-tools.nix @@ -42,6 +42,20 @@ import ./make-test-python.nix ({ pkgs, ... }: { "docker rmi ${examples.nix.imageName}", ) + with subtest("The nix binary symlinks are intact"): + docker.succeed( + "docker load --input='${examples.nix}'", + "docker run --rm ${examples.nix.imageName} ${pkgs.bash}/bin/bash -c 'test nix == $(readlink ${pkgs.nix}/bin/nix-daemon)'", + "docker rmi ${examples.nix.imageName}", + ) + + with subtest("The nix binary symlinks are intact when the image is layered"): + docker.succeed( + "docker load --input='${examples.nixLayered}'", + "docker run --rm ${examples.nixLayered.imageName} ${pkgs.bash}/bin/bash -c 'test nix == $(readlink ${pkgs.nix}/bin/nix-daemon)'", + "docker rmi ${examples.nixLayered.imageName}", + ) + with subtest("The pullImage tool works"): docker.succeed( "docker load --input='${examples.nixFromDockerHub}'", diff --git a/pkgs/applications/misc/tellico/default.nix b/pkgs/applications/misc/tellico/default.nix new file mode 100644 index 00000000000..401f1f1d718 --- /dev/null +++ b/pkgs/applications/misc/tellico/default.nix @@ -0,0 +1,67 @@ +{ lib +, fetchurl +, mkDerivation +, kdeApplications +, kinit +, kdelibs4support +, solid +, kxmlgui +, karchive +, kfilemetadata +, khtml +, knewstuff +, libksane +, cmake +, exempi +, extra-cmake-modules +, libcdio +, poppler +, makeWrapper +, kdoctools +}: + +mkDerivation rec { + name = "tellico"; + version = "3.3.0"; + + src = fetchurl { + url = "https://tellico-project.org/files/tellico-${lib.versions.majorMinor version}.tar.xz"; + sha256 = "1digkpvzrsbv5znf1cgzs6zkmysfz6lzs12n12mrrpgkcdxc426y"; + }; + + patches = [ + ./hex.patch + ]; + + nativeBuildInputs = [ + cmake + extra-cmake-modules + kdoctools + makeWrapper + ]; + + buildInputs = [ + kdelibs4support + solid + kxmlgui + karchive + kfilemetadata + khtml + knewstuff + libksane + cmake + exempi + extra-cmake-modules + libcdio + kdeApplications.libkcddb + poppler + ]; + + meta = { + description = "Collection management software, free and simple"; + homepage = "https://tellico-project.org/"; + maintainers = with lib.maintainers; [ numkem ]; + license = with lib.licenses; [ gpl2 gpl3 ]; + platforms = lib.platforms.linux; + }; +} diff --git a/pkgs/applications/misc/tellico/hex.patch b/pkgs/applications/misc/tellico/hex.patch new file mode 100644 index 00000000000..999c502287e --- /dev/null +++ b/pkgs/applications/misc/tellico/hex.patch @@ -0,0 +1,15 @@ +index 7ea81c7..0c19767 100644 +--- a/src/utils/iso5426converter.cpp ++++ b/src/utils/iso5426converter.cpp +@@ -1211,7 +1211,11 @@ QChar Iso5426Converter::getCombiningChar(uint c) { + return 0x1EF1; // SMALL LETTER U WITH HORN AND DOT BELOW + + default: ++#if (QT_VERSION < QT_VERSION_CHECK(5, 14, 0)) ++ myDebug() << "no match for" << hex << c; ++#else + myDebug() << "no match for" << Qt::hex << c; ++#endif + return QChar(); + } + } diff --git a/pkgs/applications/science/logic/coq/default.nix b/pkgs/applications/science/logic/coq/default.nix index 39e7cbe7f3c..a10b34e0a60 100644 --- a/pkgs/applications/science/logic/coq/default.nix +++ b/pkgs/applications/science/logic/coq/default.nix @@ -35,6 +35,7 @@ let "8.11.0" = "1rfdic6mp7acx2zfwz7ziqk12g95bl9nyj68z4n20a5bcjv2pxpn"; "8.11.1" = "0qriy9dy36dajsv5qmli8gd6v55mah02ya334nw49ky19v7518m0"; "8.11.2" = "0f77ccyxdgbf1nrj5fa8qvrk1cyfy06fv8gj9kzfvlcgn0cf48sa"; + "8.12+beta1" = "0jbm8am9j926s0h4fi0cjl95l37l6p7i03spcryyrd4sg5xrddr7"; }.${version}; coq-version = stdenv.lib.versions.majorMinor version; versionAtLeast = stdenv.lib.versionAtLeast coq-version; diff --git a/pkgs/build-support/docker/examples.nix b/pkgs/build-support/docker/examples.nix index d533e3abd03..b040d830b31 100644 --- a/pkgs/build-support/docker/examples.nix +++ b/pkgs/build-support/docker/examples.nix @@ -121,6 +121,7 @@ rec { # the image env variable NIX_PAGER. pkgs.coreutils pkgs.nix + pkgs.bash ]; config = { Env = [ @@ -313,4 +314,25 @@ rec { ) ]; }; + + nixLayered = pkgs.dockerTools.buildLayeredImageWithNixDb { + name = "nix-layered"; + tag = "latest"; + contents = [ + # nix-store uses cat program to display results as specified by + # the image env variable NIX_PAGER. + pkgs.coreutils + pkgs.nix + pkgs.bash + ]; + config = { + Env = [ + "NIX_PAGER=cat" + # A user is required by nix + # https://github.com/NixOS/nix/blob/9348f9291e5d9e4ba3c4347ea1b235640f54fd79/src/libutil/util.cc#L478 + "USER=nobody" + ]; + }; + }; + } diff --git a/pkgs/build-support/docker/store-path-to-layer.sh b/pkgs/build-support/docker/store-path-to-layer.sh index 7437da51cc4..3a1fcd0c27a 100755 --- a/pkgs/build-support/docker/store-path-to-layer.sh +++ b/pkgs/build-support/docker/store-path-to-layer.sh @@ -16,7 +16,11 @@ mkdir -p "$layerPath" # when there are other things being added to the # nix store, tar could fail, saying, # "tar: /nix/store: file changed as we read it" -mkdir -p nix/store +# +# In addition, we use `__Nix__` instead of `nix` to avoid renaming +# relative symlink destinations like +# /nix/store/...-nix-2.3.4/bin/nix-daemon -> nix +mkdir -p __Nix__/store # Then we change into the /nix/store in order to # avoid a similar "file changed as we read it" error @@ -35,8 +39,8 @@ tarhash=$( --hard-dereference --sort=name \ --mtime="@$SOURCE_DATE_EPOCH" \ --owner=0 --group=0 \ - --transform 's,^nix$,/\0,' \ - --transform 's,^nix/store$,/\0,' \ + --transform 's,^__Nix__$,/nix,' \ + --transform 's,^__Nix__/store$,/nix/store,' \ --transform 's,^[^/],/nix/store/\0,rS' | tee "$layerPath/layer.tar" | tarsum diff --git a/pkgs/development/coq-modules/mathcomp/default.nix b/pkgs/development/coq-modules/mathcomp/default.nix index d4d5f924f52..8cf502a1943 100644 --- a/pkgs/development/coq-modules/mathcomp/default.nix +++ b/pkgs/development/coq-modules/mathcomp/default.nix @@ -76,8 +76,8 @@ let }; # versions of coq compatible with released mathcomp versions coq-versions = { - "1.11.0" = flip elem [ "8.7" "8.8" "8.9" "8.10" "8.11" ]; - "1.11+beta1" = flip elem [ "8.7" "8.8" "8.9" "8.10" "8.11" ]; + "1.11.0" = flip elem [ "8.7" "8.8" "8.9" "8.10" "8.11" "8.12" ]; + "1.11+beta1" = flip elem [ "8.7" "8.8" "8.9" "8.10" "8.11" "8.12" ]; "1.10.0" = flip elem [ "8.7" "8.8" "8.9" "8.10" "8.11" ]; "1.9.0" = flip elem [ "8.7" "8.8" "8.9" "8.10" ]; "1.8.0" = flip elem [ "8.7" "8.8" "8.9" ]; diff --git a/pkgs/development/libraries/curlcpp/default.nix b/pkgs/development/libraries/curlcpp/default.nix index 9f2710f42a4..ead4d1b76bd 100644 --- a/pkgs/development/libraries/curlcpp/default.nix +++ b/pkgs/development/libraries/curlcpp/default.nix @@ -18,7 +18,7 @@ stdenv.mkDerivation rec { description = "Object oriented C++ wrapper for CURL"; platforms = platforms.unix; license = licenses.mit; - maintainers = with maintainers; [ juliendehos rszibele ]; + maintainers = with maintainers; [ rszibele ]; }; } diff --git a/pkgs/development/ocaml-modules/piqi/default.nix b/pkgs/development/ocaml-modules/piqi/default.nix index c492035f4f9..f3c489723b2 100644 --- a/pkgs/development/ocaml-modules/piqi/default.nix +++ b/pkgs/development/ocaml-modules/piqi/default.nix @@ -1,16 +1,19 @@ -{ stdenv, fetchurl, ocaml, findlib, which, ulex, easy-format, ocaml_optcomp, xmlm, base64 }: +{ stdenv, fetchFromGitHub, ocaml, findlib, which, sedlex_2, easy-format, xmlm, base64 }: stdenv.mkDerivation rec { - version = "0.6.14"; + version = "0.6.15"; pname = "piqi"; + name = "ocaml${ocaml.version}-${pname}-${version}"; - src = fetchurl { - url = "https://github.com/alavrik/piqi/archive/v${version}.tar.gz"; - sha256 = "1ssccnwqzfyf7syfq2fv4zyhwayxwd75rhq9y28mvq1w6qbww4l7"; + src = fetchFromGitHub { + owner = "alavrik"; + repo = pname; + rev = "v${version}"; + sha256 = "0v04hs85xv6d4ysqxyv1dik34dx49yab9shpi4x7iv19qlzl7csb"; }; - buildInputs = [ ocaml findlib which ocaml_optcomp ]; - propagatedBuildInputs = [ulex xmlm easy-format base64]; + buildInputs = [ ocaml findlib which ]; + propagatedBuildInputs = [ sedlex_2 xmlm easy-format base64 ]; patches = [ ./no-ocamlpath-override.patch ]; diff --git a/pkgs/development/python-modules/markdown/3_1.nix b/pkgs/development/python-modules/markdown/3_1.nix new file mode 100644 index 00000000000..b07d36e22c7 --- /dev/null +++ b/pkgs/development/python-modules/markdown/3_1.nix @@ -0,0 +1,34 @@ +{ lib +, buildPythonPackage +, fetchPypi +, setuptools +, nose +, pyyaml +, pythonOlder +, importlib-metadata +, isPy3k +}: + +buildPythonPackage rec { + pname = "Markdown"; + version = "3.1.1"; + + src = fetchPypi { + inherit pname version; + sha256 = "2e50876bcdd74517e7b71f3e7a76102050edec255b3983403f1a63e7c8a41e7a"; + }; + + propagatedBuildInputs = [ + setuptools + ] ++ lib.optionals (pythonOlder "3.8") [ + importlib-metadata + ]; + + checkInputs = [ nose pyyaml ]; + + meta = { + description = "A Python implementation of John Gruber's Markdown with Extension support"; + homepage = "https://github.com/Python-Markdown/markdown"; + license = lib.licenses.bsd3; + }; +} diff --git a/pkgs/development/python-modules/natsort/default.nix b/pkgs/development/python-modules/natsort/default.nix index 805f5dc5de4..bfe486e1a54 100644 --- a/pkgs/development/python-modules/natsort/default.nix +++ b/pkgs/development/python-modules/natsort/default.nix @@ -8,6 +8,7 @@ , hypothesis , glibcLocales , pathlib ? null +, isPy3k }: buildPythonPackage rec { @@ -29,6 +30,9 @@ buildPythonPackage rec { sha256 = "a633464dc3a22b305df0f27abcb3e83515898aa1fd0ed2f9726c3571a27258cf"; }; + # Does not support Python 2 + disabled = !isPy3k; + # testing based on project's tox.ini # natsort_keygen has pytest mock issues checkPhase = '' diff --git a/pkgs/development/python-modules/soco/default.nix b/pkgs/development/python-modules/soco/default.nix index 0af09cc01ce..b56e43e1321 100644 --- a/pkgs/development/python-modules/soco/default.nix +++ b/pkgs/development/python-modules/soco/default.nix @@ -1,4 +1,5 @@ { lib, buildPythonPackage, fetchPypi, xmltodict, requests +, toml # Test dependencies , pytest, pytestcov, coveralls, pylint, flake8, graphviz, mock, sphinx @@ -14,13 +15,7 @@ buildPythonPackage rec { sha256 = "0dgca286vhrabm4r4jj545k895z6w2c70ars06vrjhf9cpgg7qck"; }; - postPatch = '' - # https://github.com/SoCo/SoCo/pull/670 - substituteInPlace requirements-dev.txt \ - --replace "pytest-cov>=2.4.0,<2.6" "pytest-cov>=2.4.0" - ''; - - propagatedBuildInputs = [ xmltodict requests ]; + propagatedBuildInputs = [ xmltodict requests toml ]; checkInputs = [ pytest pytestcov coveralls pylint flake8 graphviz mock sphinx sphinx_rtd_theme diff --git a/pkgs/tools/security/hashcat/default.nix b/pkgs/tools/security/hashcat/default.nix index c1fd84b6452..2456f9ca18f 100644 --- a/pkgs/tools/security/hashcat/default.nix +++ b/pkgs/tools/security/hashcat/default.nix @@ -1,12 +1,18 @@ -{ stdenv, fetchurl, makeWrapper, opencl-headers, ocl-icd, xxHash }: +{ stdenv +, fetchurl +, makeWrapper +, opencl-headers +, ocl-icd +, xxHash +}: stdenv.mkDerivation rec { pname = "hashcat"; - version = "5.1.0"; + version = "6.0.0"; src = fetchurl { url = "https://hashcat.net/files/hashcat-${version}.tar.gz"; - sha256 = "0f73y4cg8c7a6q7x34qvpfi4g3lw6j9bnn0a13g43aqyiskflfr8"; + sha256 = "118jxk4xh55m1vhaz5h2j2385mp4p397m16g9hi4x2k0b8m0zrz8"; }; nativeBuildInputs = [ makeWrapper ]; diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 44143befa2b..c0a2c0b49e4 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25053,6 +25053,7 @@ in coqPackages_8_9 coq_8_9 coqPackages_8_10 coq_8_10 coqPackages_8_11 coq_8_11 + coqPackages_8_12 coq_8_12 coqPackages coq ; @@ -26300,6 +26301,8 @@ in prow = callPackage ../applications/networking/cluster/prow { }; + tellico = libsForQt5.callPackage ../applications/misc/tellico { }; + termpdfpy = python3Packages.callPackage ../applications/misc/termpdf.py {}; inherit (callPackage ../applications/networking/cluster/terraform { }) diff --git a/pkgs/top-level/coq-packages.nix b/pkgs/top-level/coq-packages.nix index dedef12e38b..c1015aa939f 100644 --- a/pkgs/top-level/coq-packages.nix +++ b/pkgs/top-level/coq-packages.nix @@ -118,6 +118,9 @@ in rec { coq_8_11 = callPackage ../applications/science/logic/coq { version = "8.11.2"; }; + coq_8_12 = callPackage ../applications/science/logic/coq { + version = "8.12+beta1"; + }; coqPackages_8_5 = mkCoqPackages coq_8_5; coqPackages_8_6 = mkCoqPackages coq_8_6; @@ -126,6 +129,7 @@ in rec { coqPackages_8_9 = mkCoqPackages coq_8_9; coqPackages_8_10 = mkCoqPackages coq_8_10; coqPackages_8_11 = mkCoqPackages coq_8_11; + coqPackages_8_12 = mkCoqPackages coq_8_12; coqPackages = recurseIntoAttrs (lib.mapDerivationAttrset lib.dontDistribute coqPackages_8_9 ); diff --git a/pkgs/top-level/ocaml-packages.nix b/pkgs/top-level/ocaml-packages.nix index 4be489c76eb..5ee24287dd6 100644 --- a/pkgs/top-level/ocaml-packages.nix +++ b/pkgs/top-level/ocaml-packages.nix @@ -712,9 +712,7 @@ let phylogenetics = callPackage ../development/ocaml-modules/phylogenetics { }; - piqi = callPackage ../development/ocaml-modules/piqi { - base64 = base64_2; - }; + piqi = callPackage ../development/ocaml-modules/piqi { }; piqi-ocaml = callPackage ../development/ocaml-modules/piqi-ocaml { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index a09610a1922..a1c03bc204e 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -4504,7 +4504,10 @@ in { mapsplotlib = callPackage ../development/python-modules/mapsplotlib { }; - markdown = callPackage ../development/python-modules/markdown { }; + markdown = if isPy3k then + callPackage ../development/python-modules/markdown { } + else + callPackage ../development/python-modules/markdown/3_1.nix { }; markdownsuperscript = callPackage ../development/python-modules/markdownsuperscript {}; |