Merge master into staging-next

authored by

github-actions[bot] and committed by
GitHub
5704fd10 df21fb8a

+508 -294
+15 -40
nixos/modules/services/continuous-integration/hercules-ci-agent/common.nix
··· 9 9 { config, lib, options, pkgs, ... }: 10 10 11 11 let 12 - inherit (lib) mkOption mkIf types filterAttrs literalExample mkRenamedOptionModule; 12 + inherit (lib) 13 + filterAttrs 14 + literalExample 15 + mkIf 16 + mkOption 17 + mkRemovedOptionModule 18 + mkRenamedOptionModule 19 + types 20 + ; 13 21 14 22 cfg = 15 23 config.services.hercules-ci-agent; ··· 77 85 }; 78 86 }; 79 87 88 + # TODO (2022) remove 80 89 checkNix = 81 90 if !cfg.checkNix 82 91 then "" 83 - else if lib.versionAtLeast config.nix.package.version "2.4.0" 92 + else if lib.versionAtLeast config.nix.package.version "2.3.10" 84 93 then "" 85 94 else pkgs.stdenv.mkDerivation { 86 95 name = "hercules-ci-check-system-nix-src"; ··· 88 97 configurePhase = ":"; 89 98 buildPhase = '' 90 99 echo "Checking in-memory pathInfoCache expiry" 91 - if ! grep 'struct PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then 100 + if ! grep 'PathInfoCacheValue' src/libstore/store-api.hh >/dev/null; then 92 101 cat 1>&2 <<EOF 93 102 94 103 You are deploying Hercules CI Agent on a system with an incompatible 95 - nix-daemon. Please 96 - - either upgrade Nix to version 2.4.0 (when released), 97 - - or set option services.hercules-ci-agent.patchNix = true; 98 - - or set option nix.package to a build of Nix 2.3 with this patch applied: 99 - https://github.com/NixOS/nix/pull/3405 100 - 101 - The patch is required for Nix-daemon clients that expect a change in binary 102 - cache contents while running, like the agent's evaluator. Without it, import 103 - from derivation will fail if your cluster has more than one machine. 104 - We are conservative with changes to the overall system, which is why we 105 - keep changes to a minimum and why we ask for confirmation in the form of 106 - services.hercules-ci-agent.patchNix = true before applying. 107 - 104 + nix-daemon. Please make sure nix.package is set to a Nix version of at 105 + least 2.3.10 or a master version more recent than Mar 12, 2020. 108 106 EOF 109 107 exit 1 110 108 fi ··· 112 110 installPhase = "touch $out"; 113 111 }; 114 112 115 - patchedNix = lib.mkIf (!lib.versionAtLeast pkgs.nix.version "2.4.0") ( 116 - if lib.versionAtLeast pkgs.nix.version "2.4pre" 117 - then lib.warn "Hercules CI Agent module will not patch 2.4 pre-release. Make sure it includes (equivalently) PR #3043, commit d048577909 or is no older than 2020-03-13." pkgs.nix 118 - else pkgs.nix.overrideAttrs ( 119 - o: { 120 - patches = (o.patches or []) ++ [ backportNix3398 ]; 121 - } 122 - ) 123 - ); 124 - 125 - backportNix3398 = pkgs.fetchurl { 126 - url = "https://raw.githubusercontent.com/hercules-ci/hercules-ci-agent/hercules-ci-agent-0.7.3/for-upstream/issue-3398-path-info-cache-ttls-backport-2.3.patch"; 127 - sha256 = "0jfckqjir9il2il7904yc1qyadw366y7xqzg81sp9sl3f1pw70ib"; 128 - }; 129 113 in 130 114 { 131 115 imports = [ 132 116 (mkRenamedOptionModule ["services" "hercules-ci-agent" "extraOptions"] ["services" "hercules-ci-agent" "settings"]) 133 117 (mkRenamedOptionModule ["services" "hercules-ci-agent" "baseDirectory"] ["services" "hercules-ci-agent" "settings" "baseDirectory"]) 134 118 (mkRenamedOptionModule ["services" "hercules-ci-agent" "concurrentTasks"] ["services" "hercules-ci-agent" "settings" "concurrentTasks"]) 119 + (mkRemovedOptionModule ["services" "hercules-ci-agent" "patchNix"] "Nix versions packaged in this version of Nixpkgs don't need a patched nix-daemon to work correctly in Hercules CI Agent clusters.") 135 120 ]; 136 121 137 122 options.services.hercules-ci-agent = { ··· 145 130 continuous integation service that is centered around Nix. 146 131 147 132 Support is available at <link xlink:href="mailto:help@hercules-ci.com">help@hercules-ci.com</link>. 148 - ''; 149 - }; 150 - patchNix = mkOption { 151 - type = types.bool; 152 - default = false; 153 - description = '' 154 - Fix Nix 2.3 cache path metadata caching behavior. Has the effect of <literal>nix.package = patch pkgs.nix;</literal> 155 - 156 - This option will be removed when Hercules CI Agent moves to Nix 2.4 (upcoming Nix release). 157 133 ''; 158 134 }; 159 135 checkNix = mkOption { ··· 206 182 # even shortly after the previous lookup. This *also* applies to the daemon. 207 183 narinfo-cache-negative-ttl = 0 208 184 ''; 209 - nix.package = mkIf cfg.patchNix patchedNix; 210 185 services.hercules-ci-agent.tomlFile = 211 186 format.generate "hercules-ci-agent.toml" cfg.settings; 212 187 };
+7 -1
nixos/modules/services/networking/dnscrypt-proxy2.nix
··· 87 87 NoNewPrivileges = true; 88 88 NonBlocking = true; 89 89 PrivateDevices = true; 90 + ProtectClock = true; 90 91 ProtectControlGroups = true; 91 92 ProtectHome = true; 92 93 ProtectHostname = true; ··· 107 108 SystemCallFilter = [ 108 109 "@system-service" 109 110 "@chown" 111 + "~@aio" 112 + "~@keyring" 113 + "~@memlock" 110 114 "~@resources" 111 - "@privileged" 115 + "~@setuid" 116 + "~@sync" 117 + "~@timer" 112 118 ]; 113 119 }; 114 120 };
+8 -19
pkgs/applications/misc/clipcat/default.nix
··· 3 3 4 4 rustPlatform.buildRustPackage rec { 5 5 pname = "clipcat"; 6 - version = "0.4.19"; 6 + version = "0.5.0"; 7 7 8 8 src = fetchFromGitHub { 9 9 owner = "xrelkd"; 10 10 repo = pname; 11 11 rev = "v${version}"; 12 - sha256 = "1lhnm521qqy3aw2iyk1dv4yc5ms0c5x5iipx96bz6v6y0cnmf4kw"; 12 + sha256 = "0rxl3ksjinw07q3p2vjqg80k3c6wx2q7pzpf2344zyfb4gkqzx1c"; 13 13 }; 14 14 15 - cargoSha256 = "04iflyvz8g53z658rkxafiyi2m9kzxwl3p1xgkjq7vacmz5jk15c"; 15 + cargoSha256 = "1ffgvhkdj8wkhlgi0cj0njdm9ycxq2qda4b5qn8bmaygzr2zkwpd"; 16 16 17 17 LIBCLANG_PATH = "${llvmPackages.libclang}/lib"; 18 18 ··· 38 38 cargoBuildFlags = [ "--features=all" ]; 39 39 40 40 postInstall = '' 41 - installShellCompletion --bash --name clipcatd completions/bash-completion/completions/clipcatd 42 - installShellCompletion --fish --name clipcatd.fish completions/fish/completions/clipcatd.fish 43 - installShellCompletion --zsh --name _clipcatd completions/zsh/site-functions/_clipcatd 44 - 45 - installShellCompletion --bash --name clipcatctl completions/bash-completion/completions/clipcatctl 46 - installShellCompletion --fish --name clipcatctl.fish completions/fish/completions/clipcatctl.fish 47 - installShellCompletion --zsh --name _clipcatctl completions/zsh/site-functions/_clipcatctl 48 - 49 - installShellCompletion --bash --name clipcat-menu completions/bash-completion/completions/clipcat-menu 50 - installShellCompletion --fish --name clipcat-menu.fish completions/fish/completions/clipcat-menu.fish 51 - installShellCompletion --zsh --name _clipcat-menu completions/zsh/site-functions/_clipcat-menu 52 - 53 - installShellCompletion --bash --name clipcat-notify completions/bash-completion/completions/clipcat-notify 54 - installShellCompletion --fish --name clipcat-notify.fish completions/fish/completions/clipcat-notify.fish 55 - installShellCompletion --zsh --name _clipcat-notify completions/zsh/site-functions/_clipcat-notify 41 + installShellCompletion --bash completions/bash-completion/completions/* 42 + installShellCompletion --fish completions/fish/completions/* 43 + installShellCompletion --zsh completions/zsh/site-functions/* 56 44 ''; 57 45 58 46 meta = with lib; { 59 47 description = "Clipboard Manager written in Rust Programming Language"; 60 - license = licenses.gpl3; 48 + homepage = "https://github.com/xrelkd/clipcat"; 49 + license = licenses.gpl3Only; 61 50 platforms = platforms.linux; 62 51 maintainers = with maintainers; [ xrelkd ]; 63 52 };
+3 -3
pkgs/applications/office/trilium/default.nix
··· 19 19 maintainers = with maintainers; [ emmanuelrosa dtzWill ]; 20 20 }; 21 21 22 - version = "0.43.3"; 22 + version = "0.43.4"; 23 23 24 24 desktopSource = { 25 25 url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-${version}.tar.xz"; 26 - sha256 = "1k9vcs7pwa89bzivqp0gfs45jzqw216fpypg3ja4n2dzn4qkv2as"; 26 + sha256 = "0kjysam5alsmnj93fcqq1ivawnra42gn7dch99rrfmvbkxp7hhr8"; 27 27 }; 28 28 29 29 serverSource = { 30 30 url = "https://github.com/zadam/trilium/releases/download/v${version}/trilium-linux-x64-server-${version}.tar.xz"; 31 - sha256 = "1n3v7wdav6mvgcy72mmfhncsa74i0ax1ij5rjczgfjjyiyc5y0rk"; 31 + sha256 = "128mvmp15mjpb5ipkmr0yn7ahby26shbix3f8q094f4zpxjp83zx"; 32 32 }; 33 33 34 34 in {
+1 -1
pkgs/build-support/fetchcvs/builder.sh
··· 1 1 source $stdenv/setup 2 2 3 - (echo '#!/usr/bin/env sh'; \ 3 + (echo "#!$SHELL"; \ 4 4 echo 'ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no "$@"') > ssh 5 5 chmod +x ssh 6 6 export CVS_RSH=$PWD/ssh
+5 -15
pkgs/development/libraries/libhugetlbfs/default.nix
··· 1 - { stdenv, lib, fetchurl, fetchpatch }: 1 + { stdenv, lib, fetchurl }: 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "libhugetlbfs"; 5 - version = "2.22"; 5 + version = "2.23"; 6 6 7 7 src = fetchurl { 8 8 url = "https://github.com/libhugetlbfs/libhugetlbfs/releases/download/${version}/libhugetlbfs-${version}.tar.gz"; 9 - sha256 = "11b7k8xvgx68rjzidm12a6l6b23hwi7hj149y9xxfz2j5kmakp4l"; 9 + sha256 = "0ya4q001g111d3pqlzrf3yaifadl0ccirx5dndz1pih7x3qp41mp"; 10 10 }; 11 11 12 12 outputs = [ "bin" "dev" "man" "doc" "lib" "out" ]; 13 13 14 - patches = [ 15 - # Don't check that 32-bit and 64-bit libraries don't get installed 16 - # to the same place if only one platform is being built for. 17 - # Can be removed if build succeeds without it. 18 - (fetchpatch { 19 - url = "https://groups.google.com/forum/message/raw?msg=libhugetlbfs/IswjDAygfwA/PKy7MZbVAAAJ"; 20 - sha256 = "00fyrhn380d6swil8pcf4x0krl1113ghswrvjn3m9czc3h4p385a"; 21 - }) 22 - ]; 23 - 24 14 postConfigure = '' 25 15 patchShebangs ld.hugetlbfs 26 16 ''; ··· 34 24 "LIBDIR64=$(lib)/$(LIB64)" 35 25 "EXEDIR=$(bin)/bin" 36 26 "DOCDIR=$(doc)/share/doc/libhugetlbfs" 37 - ] ++ map (n: "MANDIR${n}=$(man)/share/man/man${n}") 38 - (lib.genList (n: toString (n + 1)) 8); 27 + "MANDIR=$(man)/share/man" 28 + ]; 39 29 40 30 # Default target builds tests as well, and the tests want a static 41 31 # libc.
+2 -2
pkgs/development/libraries/openxr-loader/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "openxr-loader"; 5 - version = "1.0.13"; 5 + version = "1.0.14"; 6 6 7 7 src = fetchFromGitHub { 8 8 owner = "KhronosGroup"; 9 9 repo = "OpenXR-SDK-Source"; 10 10 rev = "release-${version}"; 11 - sha256 = "0znhv7x81bvqijk5xhc5w760d5yy6vr5c2y271wpk9lkmxbbcpl1"; 11 + sha256 = "sha256-ZmaxHm4MPd2q83PLduoavoynqRPEI79IpMfW32gkV14="; 12 12 }; 13 13 14 14 nativeBuildInputs = [ cmake python3 ];
+32
pkgs/development/python-modules/ailment/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchFromGitHub 4 + , pythonOlder 5 + , pyvex 6 + }: 7 + 8 + buildPythonPackage rec { 9 + pname = "ailment"; 10 + version = "9.0.5739"; 11 + disabled = pythonOlder "3.6"; 12 + 13 + src = fetchFromGitHub { 14 + owner = "angr"; 15 + repo = pname; 16 + rev = "v${version}"; 17 + sha256 = "1fjwksia6h7w7m5zhys65yr4zxvyfgp9hr1k5dn802p9kvz34bpc"; 18 + }; 19 + 20 + propagatedBuildInputs = [ pyvex ]; 21 + 22 + # Tests depend on angr (possibly a circular dependency) 23 + doCheck = false; 24 + #pythonImportsCheck = [ "ailment" ]; 25 + 26 + meta = with lib; { 27 + description = "The angr Intermediate Language"; 28 + homepage = "https://github.com/angr/ailment"; 29 + license = with licenses; [ bsd2 ]; 30 + maintainers = with maintainers; [ fab ]; 31 + }; 32 + }
+2 -2
pkgs/development/python-modules/archinfo/default.nix
··· 7 7 8 8 buildPythonPackage rec { 9 9 pname = "archinfo"; 10 - version = "9.0.5610"; 10 + version = "9.0.5739"; 11 11 12 12 src = fetchFromGitHub { 13 13 owner = "angr"; 14 14 repo = pname; 15 15 rev = "v${version}"; 16 - sha256 = "sha256-YlqCRLx8mqHXMKPCWqcGvHxRBGOxbwMZWPEDX/jEDdI="; 16 + sha256 = "sha256-6qjX0r2vLYgJdrKBVKedplfa1yhWv9tBvTu5BsViXBc="; 17 17 }; 18 18 19 19 checkInputs = [
+50 -16
pkgs/development/python-modules/h3/default.nix
··· 1 - { lib, stdenv 1 + { autoPatchelfHook 2 2 , buildPythonPackage 3 3 , cmake 4 - , fetchPypi 4 + , cython 5 + , fetchFromGitHub 5 6 , h3 6 - , python 7 + , lib 8 + , numpy 9 + , pytestCheckHook 10 + , scikit-build 11 + , stdenv 7 12 }: 8 13 9 14 buildPythonPackage rec { 10 15 pname = "h3"; 11 - version = "3.7.0"; 16 + version = "3.7.1"; 12 17 13 - src = fetchPypi { 14 - inherit pname version; 15 - sha256 = "cd27fc8ecd9183f93934079b7c986401f499030ff2e2171eace9de462fab561d"; 18 + # pypi version does not include tests 19 + src = fetchFromGitHub { 20 + owner = "uber"; 21 + repo = "h3-py"; 22 + rev = "v${version}"; 23 + sha256 = "sha256-MIVV3kZGsIsaJ/ccJOK3+j1VwkUsZGHS5d1sGOBa1Ec="; 16 24 }; 17 25 18 - patches = [ 19 - ./disable-custom-install.patch 20 - ./hardcode-h3-path.patch 26 + dontConfigure = true; 27 + 28 + checkInputs = [ pytestCheckHook ]; 29 + 30 + nativeBuildInputs = [ 31 + scikit-build cmake cython 32 + ] ++ lib.optionals stdenv.hostPlatform.isLinux [ 33 + # On Linux the .so files ends up referring to libh3.so instead of the full 34 + # Nix store path. I'm not sure why this is happening! On Darwin it works 35 + # fine. 36 + autoPatchelfHook 21 37 ]; 22 38 23 - preBuild = '' 24 - substituteInPlace h3/h3.py \ 25 - --subst-var-by libh3_path ${h3}/lib/libh3${stdenv.hostPlatform.extensions.sharedLibrary} 26 - ''; 39 + # This is not needed per-se, it's only added for autoPatchelfHook to work 40 + # correctly. See the note above ^^ 41 + buildInputs = lib.optionals stdenv.hostPlatform.isLinux [ h3 ]; 42 + 43 + propagatedBuildInputs = [ numpy ]; 44 + 45 + # The following prePatch replaces the h3lib compilation with using the h3 packaged in nixpkgs. 46 + # 47 + # - Remove the h3lib submodule. 48 + # - Patch CMakeLists to avoid building h3lib, and use h3 instead. 49 + prePatch = 50 + let 51 + cmakeCommands = '' 52 + include_directories(${h3}/include/h3) 53 + link_directories(${h3}/lib) 54 + ''; 55 + in '' 56 + rm -r src/h3lib 57 + substituteInPlace CMakeLists.txt --replace "add_subdirectory(src/h3lib)" "${cmakeCommands}" 58 + ''; 59 + 60 + # Extra check to make sure we can import it from Python 61 + pythonImportsCheck = [ "h3" ]; 27 62 28 63 meta = with lib; { 29 64 homepage = "https://github.com/uber/h3-py"; 30 - description = "This library provides Python bindings for the H3 Core Library."; 65 + description = "Hierarchical hexagonal geospatial indexing system"; 31 66 license = licenses.asl20; 32 - platforms = platforms.unix ++ platforms.darwin; 33 67 maintainers = [ maintainers.kalbasit ]; 34 68 }; 35 69 }
-41
pkgs/development/python-modules/h3/disable-custom-install.patch
··· 1 - diff --git a/setup.py b/setup.py 2 - index 8e1c220..45297b6 100644 3 - --- a/setup.py 4 - +++ b/setup.py 5 - @@ -25,20 +25,6 @@ class CustomBuildExtCommand(build_ext): 6 - install_h3(h3_version) 7 - 8 - 9 - -# Tested with wheel v0.29.0 10 - -class BinaryDistribution(Distribution): 11 - - def __init__(self, attrs=None): 12 - - Distribution.__init__(self, attrs) 13 - - # The values used for the name and sources in the Extension below are 14 - - # not important, because we override the build_ext command above. 15 - - # The normal C extension building logic is never invoked, and is 16 - - # replaced with our own custom logic. However, ext_modules cannot be 17 - - # empty, because this signals to other parts of distutils that our 18 - - # package contains C extensions and thus needs to be built for 19 - - # different platforms separately. 20 - - self.ext_modules = [Extension('h3c', [])] 21 - - 22 - - 23 - long_description = open('README.rst').read() 24 - 25 - setup( 26 - @@ -52,14 +38,10 @@ setup( 27 - url='https://github.com/uber/h3-py.git', 28 - packages=find_packages(exclude=['tests', 'tests.*']), 29 - install_requires=[], 30 - - cmdclass={ 31 - - 'build_ext': CustomBuildExtCommand, 32 - - }, 33 - package_data={ 34 - 'h-py': 35 - ['out/*.dylib' if platform.system() == 'Darwin' else ( 36 - 'out/*.dll' if platform.system() == 'Windows' else 37 - 'out/*.so.*')] 38 - }, 39 - - license='Apache License 2.0', 40 - - distclass=BinaryDistribution) 41 - + license='Apache License 2.0')
-19
pkgs/development/python-modules/h3/hardcode-h3-path.patch
··· 1 - diff --git a/h3/h3.py b/h3/h3.py 2 - index 18cf168..2cc7812 100644 3 - --- a/h3/h3.py 4 - +++ b/h3/h3.py 5 - @@ -34,13 +34,7 @@ from ctypes import ( 6 - POINTER, 7 - ) 8 - 9 - -_dirname = os.path.dirname(__file__) 10 - -libh3_path = ('{}/{}'.format(_dirname, 'out/libh3.1.dylib') 11 - - if platform.system() == 'Darwin' else ( 12 - - '{}/{}'.format(_dirname, 'out/h3.dll') if platform.system() == 'Windows' else 13 - - '{}/{}'.format(_dirname, 'out/libh3.so.1'))) 14 - - 15 - -libh3 = cdll.LoadLibrary(libh3_path) 16 - +libh3 = cdll.LoadLibrary('@libh3_path@') 17 - 18 - # Type of an H3 index 19 - H3Index = c_ulonglong
+47
pkgs/development/python-modules/libpurecool/default.nix
··· 1 + { lib 2 + , buildPythonPackage 3 + , fetchPypi 4 + , netifaces 5 + , paho-mqtt 6 + , pycryptodome 7 + , requests 8 + , six 9 + , zeroconf 10 + }: 11 + 12 + buildPythonPackage rec { 13 + pname = "libpurecool"; 14 + version = "0.6.4"; 15 + 16 + src = fetchPypi { 17 + inherit pname version; 18 + sha256 = "1kwbinbg0i4fca1bpx6jwa1fiw71vg0xa89jhq4pmnl5cn9c8kqx"; 19 + }; 20 + 21 + # Remove vendorized zeroconf, https://github.com/etheralm/libpurecool/issues/33 22 + postPatch = '' 23 + rm libpurecool/zeroconf.py 24 + substituteInPlace libpurecool/dyson_pure_cool_link.py \ 25 + --replace "from .zeroconf import ServiceBrowser, Zeroconf" "from zeroconf import ServiceBrowser, Zeroconf" 26 + ''; 27 + 28 + propagatedBuildInputs = [ 29 + netifaces 30 + paho-mqtt 31 + pycryptodome 32 + requests 33 + six 34 + zeroconf 35 + ]; 36 + 37 + # Tests are only present in repo, https://github.com/etheralm/libpurecool/issues/36 38 + doCheck = false; 39 + pythonImportsCheck = [ "libpurecool" ]; 40 + 41 + meta = with lib; { 42 + description = "Python library for Dyson devices"; 43 + homepage = "http://libpurecool.readthedocs.io"; 44 + license = with licenses; [ asl20 ]; 45 + maintainers = with maintainers; [ fab ]; 46 + }; 47 + }
-1
pkgs/development/python-modules/py-multihash/default.nix
··· 49 49 homepage = "https://github.com/multiformats/py-multihash"; 50 50 license = licenses.mit; 51 51 maintainers = with maintainers; [ rakesh4g ]; 52 - broken = true; # no longer compatible with base58, no updates in 5 years. Added 2020-11-05 53 52 }; 54 53 }
+39
pkgs/development/python-modules/pyvex/default.nix
··· 1 + { lib 2 + , archinfo 3 + , bitstring 4 + , fetchPypi 5 + , cffi 6 + , buildPythonPackage 7 + , future 8 + , pycparser 9 + }: 10 + 11 + buildPythonPackage rec { 12 + pname = "pyvex"; 13 + version = "9.0.5739"; 14 + 15 + src = fetchPypi { 16 + inherit pname version; 17 + sha256 = "1jwxxw2kw7wkz7kh8m8vbavzw6m5k6xph7mazfn3k2qbsshh3lk3"; 18 + }; 19 + 20 + propagatedBuildInputs = [ 21 + archinfo 22 + bitstring 23 + cffi 24 + future 25 + pycparser 26 + ]; 27 + 28 + # No tests are available on PyPI, GitHub release has tests 29 + # Switch to GitHub release after all angr parts are present 30 + doCheck = false; 31 + pythonImportsCheck = [ "pyvex" ]; 32 + 33 + meta = with lib; { 34 + description = "Python interface to libVEX and VEX IR"; 35 + homepage = "https://github.com/angr/pyvex"; 36 + license = with licenses; [ bsd2 gpl3Plus lgpl3Plus ]; 37 + maintainers = with maintainers; [ fab ]; 38 + }; 39 + }
+2 -2
pkgs/development/python-modules/sqlite-utils/default.nix
··· 15 15 16 16 buildPythonPackage rec { 17 17 pname = "sqlite-utils"; 18 - version = "3.3"; 18 + version = "3.4.1"; 19 19 disabled = pythonOlder "3.6"; 20 20 21 21 src = fetchPypi { 22 22 inherit pname version; 23 - sha256 = "1linla3za1gb3w0n0k6h3q8in62qhipizff259p14gzmyr95rjjv"; 23 + sha256 = "sha256-LJuvUTbsL2anQENEuW1oaSUsMEiXnSgLEAhZ6EP5bNs="; 24 24 }; 25 25 26 26 propagatedBuildInputs = [
+50
pkgs/development/tools/misc/bonnmotion/default.nix
··· 1 + { stdenv, lib, fetchzip, substituteAll, bash, jre }: 2 + 3 + stdenv.mkDerivation rec { 4 + pname = "bonnmotion"; 5 + version = "3.0.1"; 6 + 7 + src = fetchzip { 8 + url = "https://sys.cs.uos.de/bonnmotion/src/bonnmotion-${version}.zip"; 9 + sha256 = "16bjgr0hy6an892m5r3x9yq6rqrl11n91f9rambq5ik1cxjqarxw"; 10 + }; 11 + 12 + patches = [ 13 + # The software has a non-standard install bash script which kind of works. 14 + # However, to make it fully functional, the automatically detection of the 15 + # program paths must be substituted with full paths. 16 + (substituteAll { 17 + src = ./install.patch; 18 + inherit bash jre; 19 + }) 20 + ]; 21 + 22 + installPhase = '' 23 + runHook preInstall 24 + 25 + ./install 26 + 27 + mkdir -p $out/bin $out/share/bonnmotion 28 + cp -r ./classes ./lib $out/share/bonnmotion/ 29 + cp ./bin/bm $out/bin/ 30 + 31 + substituteInPlace $out/bin/bm \ 32 + --replace /build/source $out/share/bonnmotion 33 + 34 + runHook postInstall 35 + ''; 36 + 37 + meta = with lib; { 38 + description = "A mobility scenario generation and analysis tool"; 39 + longDescription = '' 40 + BonnMotion is a Java software which creates and analyzes mobility 41 + scenarios and is most commonly used as a tool for the investigation of 42 + mobile ad hoc network characteristics. The scenarios can also be exported 43 + for several network simulators, such as ns-2, ns-3, GloMoSim/QualNet, 44 + COOJA, MiXiM, and ONE. 45 + ''; 46 + homepage = "https://sys.cs.uos.de/bonnmotion/"; 47 + license = licenses.gpl2Plus; 48 + maintainers = with maintainers; [ oxzi ]; 49 + }; 50 + }
+75
pkgs/development/tools/misc/bonnmotion/install.patch
··· 1 + diff --git a/install b/install 2 + index 95afa2c..70c5fca 100755 3 + --- a/install 4 + +++ b/install 5 + @@ -1,4 +1,4 @@ 6 + -#!/bin/bash 7 + +#!@bash@/bin/bash 8 + 9 + echo "BonnMotion - a mobility scenario generation and analysis tool" 10 + echo "Copyright (C) 2002-2012 University of Bonn" 11 + @@ -19,28 +19,11 @@ echo "along with this program; if not, write to the Free Software" 12 + echo "Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA" 13 + echo 14 + 15 + -OS=`uname -s | tr A-Z a-z | sed -e s/_.\*//` 16 + - 17 + PACKAGE=edu.bonn.cs.iv.bonnmotion 18 + -JAVAPATH=`which java 2> /dev/null` 19 + -if [ ! "$JAVAPATH" = "" ] 20 + -then 21 + - JAVAPATH=`dirname ${JAVAPATH}` 22 + -fi 23 + -echo -n Please enter your Java binary path \[$JAVAPATH\]:\ 24 + -read KBDENTRY 25 + -if [ ! "$KBDENTRY" = "" ] 26 + -then 27 + - JAVAPATH=$KBDENTRY 28 + -fi 29 + +JAVAPATH="@jre@/bin" 30 + if [ -x "${JAVAPATH}/java" ] 31 + then 32 + - cd `dirname $0` 33 + - BONNMOTION=`pwd` 34 + - 35 + - cd "${JAVAPATH}" 36 + - JAVAPATH=`pwd` 37 + - cd "${BONNMOTION}" 38 + + BONNMOTION="$(realpath .)" 39 + 40 + CLASSPATH="${BONNMOTION}/classes" 41 + DOCPATH="${BONNMOTION}/javadoc" 42 + @@ -52,14 +35,7 @@ then 43 + then 44 + mkdir "${DOCPATH}" 45 + fi 46 + - if [ $OS = "cygwin" ] 47 + - then 48 + - cd "${CLASSPATH}" 49 + - CLASSPATH=`cmd.exe /c cd` 50 + - cd "${DOCPATH}" 51 + - DOCPATH=`cmd.exe /c cd` 52 + - fi 53 + - 54 + + 55 + for l in $BONNMOTION/lib/*.jar 56 + do 57 + LIBRARYPATH=$LIBRARYPATH:$l 58 + @@ -69,7 +45,7 @@ then 59 + APPS=`ls` 60 + cd "${BONNMOTION}/bin" 61 + 62 + - echo \#\!/bin/bash > .head 63 + + echo \#\!@bash@/bin/bash > .head 64 + echo >> .head 65 + echo BONNMOTION=\"$BONNMOTION\" >> .head 66 + echo PACKAGE=\"$PACKAGE\" >> .head 67 + @@ -103,8 +79,6 @@ then 68 + fi 69 + echo "done." 70 + echo 71 + - echo "$ ./bin/bm -h" 72 + - ./bm 73 + else 74 + echo No executable \"$JAVAPATH/java\", aborting. 75 + fi
+2 -2
pkgs/misc/emulators/ppsspp/default.nix
··· 16 16 17 17 mkDerivation rec { 18 18 pname = "ppsspp"; 19 - version = "1.10.3"; 19 + version = "1.11"; 20 20 21 21 src = fetchFromGitHub { 22 22 owner = "hrydgard"; 23 23 repo = pname; 24 24 rev = "v${version}"; 25 25 fetchSubmodules = true; 26 - sha256 = "sha256-W41Poq5S+opkasIGYo13SQZWQF1HjfFnH7u9DW5HNA0="; 26 + sha256 = "19948jzqpclf8zfzp3k7s580xfjgqcyfwlcp7x7xj8h8lyypzymx"; 27 27 }; 28 28 29 29 postPatch = ''
+3 -3
pkgs/os-specific/linux/firmware/firmware-linux-nonfree/default.nix
··· 2 2 3 3 stdenvNoCC.mkDerivation rec { 4 4 pname = "firmware-linux-nonfree"; 5 - version = "2020-12-18"; 5 + version = "2021-02-08"; 6 6 7 7 src = fetchgit { 8 8 url = "https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git"; 9 9 rev = lib.replaceStrings ["-"] [""] version; 10 - sha256 = "1rb5b3fzxk5bi6kfqp76q1qszivi0v1kdz1cwj2llp5sd9ns03b5"; 10 + sha256 = "0c85cd659312isfz1r87qswsgfhy0rljagcwspnvjljqrh9bsgzq"; 11 11 }; 12 12 13 13 installFlags = [ "DESTDIR=$(out)" ]; ··· 17 17 18 18 outputHashMode = "recursive"; 19 19 outputHashAlgo = "sha256"; 20 - outputHash = "1p7vn2hfwca6w69jhw5zq70w44ji8mdnibm1z959aalax6ndy146"; 20 + outputHash = "0l4xsgxdvjffad7a98n42nyqy3ihs6m6hy3qsfkqin9z10413x5n"; 21 21 22 22 meta = with lib; { 23 23 description = "Binary firmware collection packaged by kernel.org";
+12 -12
pkgs/os-specific/linux/kernel/hardened/patches.json
··· 1 1 { 2 2 "4.14": { 3 3 "extra": "-hardened1", 4 - "name": "linux-hardened-4.14.219-hardened1.patch", 5 - "sha256": "0pgpb7phjgil01xbpwqdwyk8k3pv5qlikw4721cmy10aj97plpqw", 6 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.219-hardened1/linux-hardened-4.14.219-hardened1.patch" 4 + "name": "linux-hardened-4.14.220-hardened1.patch", 5 + "sha256": "083jc9lwr8lwxyfk4r39jcncf2g89srd50crj17jw9ysrp1jpyks", 6 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.14.220-hardened1/linux-hardened-4.14.220-hardened1.patch" 7 7 }, 8 8 "4.19": { 9 9 "extra": "-hardened1", 10 - "name": "linux-hardened-4.19.173-hardened1.patch", 11 - "sha256": "19ikdwvp3mjh6cl2anhlpzmk1ha4lw1lf9rmvls7pzc7d1bmlwi0", 12 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.173-hardened1/linux-hardened-4.19.173-hardened1.patch" 10 + "name": "linux-hardened-4.19.174-hardened1.patch", 11 + "sha256": "1ggh7rjqm68gih41a9z2pzm1wm483165lvmigdp604p152157974", 12 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/4.19.174-hardened1/linux-hardened-4.19.174-hardened1.patch" 13 13 }, 14 14 "5.10": { 15 15 "extra": "-hardened1", 16 - "name": "linux-hardened-5.10.13-hardened1.patch", 17 - "sha256": "1pn6ddkpairsij8p5130h8iwqq65v6ngn0c3pf6rlavy4az1sw82", 18 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.13-hardened1/linux-hardened-5.10.13-hardened1.patch" 16 + "name": "linux-hardened-5.10.14-hardened1.patch", 17 + "sha256": "1l84hmwdkyd1nkby0w7vy9j0jhg866bpiw6hriav208dw2r0binx", 18 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.10.14-hardened1/linux-hardened-5.10.14-hardened1.patch" 19 19 }, 20 20 "5.4": { 21 21 "extra": "-hardened1", 22 - "name": "linux-hardened-5.4.95-hardened1.patch", 23 - "sha256": "04c54xk75gb4p4yfrmjam25jafqz47cqapr38jw2v1plwc98ng4m", 24 - "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.95-hardened1/linux-hardened-5.4.95-hardened1.patch" 22 + "name": "linux-hardened-5.4.96-hardened1.patch", 23 + "sha256": "05cb303llr2m5ik5f4v5ykr8ycldkrdb8gvjdr02zm8g0as7agil", 24 + "url": "https://github.com/anthraxx/linux-hardened/releases/download/5.4.96-hardened1/linux-hardened-5.4.96-hardened1.patch" 25 25 } 26 26 }
+2 -2
pkgs/os-specific/linux/kernel/linux-4.14.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "4.14.219"; 6 + version = "4.14.220"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; 16 - sha256 = "1p81p2g1dax225mbc704g1yl96i93nq19j9fpkrzr4f066kwmvkm"; 16 + sha256 = "1qip0c8nvfximgg4fj9xai741cgvi9f141bsps3zmrryjd796i6h"; 17 17 }; 18 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-4.19.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "4.19.173"; 6 + version = "4.19.174"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; 16 - sha256 = "0pqr8k0kfnaklb31y29xvqdmgn0pak4qd9pl77lsh6pkwqvd5zfj"; 16 + sha256 = "1rcy0hfbc3ny52mfrfysknm1q2scqz0g8l28j0qlyw8cx41wgxhg"; 17 17 }; 18 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-4.4.nix
··· 1 1 { buildPackages, fetchurl, perl, buildLinux, ... } @ args: 2 2 3 3 buildLinux (args // rec { 4 - version = "4.4.255"; 4 + version = "4.4.256"; 5 5 extraMeta.branch = "4.4"; 6 6 7 7 src = fetchurl { 8 8 url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; 9 - sha256 = "0l45csywd30qrs8gwzjjijr5hwpd5s05rbyrxb37vck78znk0f1g"; 9 + sha256 = "1z7vfy4h0mjvv0rcvvpb55x5fl16c6cgpcafz5gpjp0pw1p2lva8"; 10 10 }; 11 11 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-4.9.nix
··· 1 1 { buildPackages, fetchurl, perl, buildLinux, ... } @ args: 2 2 3 3 buildLinux (args // rec { 4 - version = "4.9.255"; 4 + version = "4.9.256"; 5 5 extraMeta.branch = "4.9"; 6 6 7 7 src = fetchurl { 8 8 url = "mirror://kernel/linux/kernel/v4.x/linux-${version}.tar.xz"; 9 - sha256 = "066101fzq5lr1pznw1hwlvsdgqpv8n7b2yi09qpv3xi0r41jvpxg"; 9 + sha256 = "15qlv4m56dzv195xjy4yp8qsrkbmv51vwfg0qcm664hkrb4i32y4"; 10 10 }; 11 11 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-5.10.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "5.10.13"; 6 + version = "5.10.14"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "1wp1vy9y50ncwlx5yqgya5gy0vdqgzn0icffg6dzmvjwwc68qs86"; 16 + sha256 = "0ahxga1jdgn8kxln0pn8j42qxx0dhrhm9vcpwilyjnwb36gvf9zs"; 17 17 }; 18 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-5.4.nix
··· 3 3 with lib; 4 4 5 5 buildLinux (args // rec { 6 - version = "5.4.95"; 6 + version = "5.4.96"; 7 7 8 8 # modDirVersion needs to be x.y.z, will automatically add .0 if needed 9 9 modDirVersion = if (modDirVersionArg == null) then concatStringsSep "." (take 3 (splitVersion "${version}.0")) else modDirVersionArg; ··· 13 13 14 14 src = fetchurl { 15 15 url = "mirror://kernel/linux/kernel/v5.x/linux-${version}.tar.xz"; 16 - sha256 = "0jfl2jwq9z6iymn6sfrdcf9w63nijdzf3ncxc77a5gs6yd2fa2h3"; 16 + sha256 = "1q7mz69wzk1ps5770l9bj556qyndiz2frjjsl7pigsy5brlxwa7p"; 17 17 }; 18 18 } // (args.argsOverride or {}))
+2 -2
pkgs/os-specific/linux/kernel/linux-libre.nix
··· 1 1 { stdenv, lib, fetchsvn, linux 2 2 , scripts ? fetchsvn { 3 3 url = "https://www.fsfla.org/svn/fsfla/software/linux-libre/releases/branches/"; 4 - rev = "17812"; 5 - sha256 = "150rh6qakyfzr6afzchf7c05z0dvc39gj0rpfb4ggr7xqpzhxrcc"; 4 + rev = "17873"; 5 + sha256 = "1r1c8wagbq3cgxys7ylvsg6bnxiky66xgx9l0282zsmnn3gh83l7"; 6 6 } 7 7 , ... 8 8 }:
+1 -1
pkgs/servers/home-assistant/component-packages.nix
··· 195 195 "dwd_weather_warnings" = ps: with ps; [ ]; # missing inputs: dwdwfsapi 196 196 "dweet" = ps: with ps; [ ]; # missing inputs: dweepy 197 197 "dynalite" = ps: with ps; [ ]; # missing inputs: dynalite_devices 198 - "dyson" = ps: with ps; [ aiohttp-cors zeroconf ]; # missing inputs: libpurecool 198 + "dyson" = ps: with ps; [ aiohttp-cors libpurecool zeroconf ]; 199 199 "eafm" = ps: with ps; [ aioeafm ]; 200 200 "ebox" = ps: with ps; [ ]; # missing inputs: pyebox 201 201 "ebusd" = ps: with ps; [ ]; # missing inputs: ebusdpy
+33
pkgs/servers/http/nginx/modules.nix
··· 22 22 fastcgi-cache-purge = throw "fastcgi-cache-purge was renamed to cache-purge"; 23 23 ngx_aws_auth = throw "ngx_aws_auth was renamed to aws-auth"; 24 24 25 + akamai-token-validate = { 26 + src = fetchFromGitHub { 27 + name = "akamai-token-validate"; 28 + owner = "kaltura"; 29 + repo = "nginx-akamai-token-validate-module"; 30 + rev = "34fd0c94d2c43c642f323491c4f4a226cd83b962"; 31 + sha256 = "0yf34s11vgkcl03wbl6gjngm3p9hs8vvm7hkjkwhjh39vkk2a7cy"; 32 + }; 33 + inputs = [ pkgs.openssl ]; 34 + }; 35 + 25 36 aws-auth = { 26 37 src = fetchFromGitHub { 27 38 name = "aws-auth"; ··· 320 331 }; 321 332 }; 322 333 334 + secure-token = { 335 + src = fetchFromGitHub { 336 + name = "secure-token"; 337 + owner = "kaltura"; 338 + repo = "nginx-secure-token-module"; 339 + rev = "95bdc0d1aca06ea7fe42555f71e65910bd74914d"; 340 + sha256 = "19wzck1xzq4kz7nyabcwzlank1k7wi7w2wn2c1mwz374c79g8ggp"; 341 + }; 342 + inputs = [ pkgs.openssl ]; 343 + }; 344 + 323 345 set-misc = { 324 346 src = fetchFromGitHub { 325 347 name = "set-misc"; ··· 470 492 sha256 = "1b0v471mzbcys73pzr7gpvzzhff0cva0l5ff32cv7z1v9c0ypji7"; 471 493 }; 472 494 inputs = [ pkgs.ffmpeg_3 ]; 495 + }; 496 + 497 + vod = { 498 + src = fetchFromGitHub { 499 + name = "vod"; 500 + owner = "kaltura"; 501 + repo = "nginx-vod-module"; 502 + rev = "e46079f51282d5a378e6911714b5f3a533bb7700"; 503 + sha256 = "0pzzq4xcq7jg8mxwnz7srj1nczg9ajd1b8q58qlm03lny8nd2hr5"; 504 + }; 505 + inputs = [ pkgs.ffmpeg_3 pkgs.fdk_aac pkgs.openssl pkgs.libxml2 pkgs.libiconv ]; 473 506 }; 474 507 475 508 vts = {
+12 -3
pkgs/servers/monitoring/prometheus/promscale.nix
··· 5 5 6 6 buildGoModule rec { 7 7 pname = "promscale"; 8 - version = "0.1.4"; 8 + version = "0.2.0"; 9 9 10 10 src = fetchFromGitHub { 11 11 owner = "timescale"; 12 12 repo = pname; 13 13 rev = version; 14 - sha256 = "0179sw5zx552y14lr56adxcgas642xvxpqly6y4m9pi33r1gs8lj"; 14 + sha256 = "sha256-rXOAAd08NTWFRGnJoAY9xllw6dAA7Xu3qcImIVq9ewE="; 15 15 }; 16 16 17 - vendorSha256 = "sha256:04gzf0siz96ar4qdkcw6daswy14i1zvl7ir200adhw1c5phppab6"; 17 + vendorSha256 = "sha256-/woSbtrOI3BVBhh+A2kO1CB1BLzBciwOqvSbGkFeMEU="; 18 18 19 19 buildFlagsArray = [ "-ldflags=-s -w -X github.com/timescale/promscale/pkg/version.Version=${version} -X github.com/timescale/promscale/pkg/version.CommitHash=${src.rev}" ]; 20 20 21 21 doCheck = false; # Requires access to a docker daemon 22 + doInstallCheck = true; 23 + installCheckPhase = '' 24 + if [[ "$("$out/bin/${pname}" -version)" == "${version}" ]]; then 25 + echo '${pname} smoke check passed' 26 + else 27 + echo '${pname} smoke check failed' 28 + exit 1 29 + fi 30 + ''; 22 31 23 32 meta = with lib; { 24 33 description = "An open-source analytical platform for Prometheus metrics";
+2 -2
pkgs/servers/roundcube/default.nix
··· 2 2 3 3 stdenv.mkDerivation rec { 4 4 pname = "roundcube"; 5 - version = "1.4.10"; 5 + version = "1.4.11"; 6 6 7 7 src = fetchurl { 8 8 url = "https://github.com/roundcube/roundcubemail/releases/download/${version}/roundcubemail-${version}-complete.tar.gz"; 9 - sha256 = "03sjvmnrspkiq0w73xvp1w61pcxhv0djrdm3mvs8h0dp9pfc1n53"; 9 + sha256 = "sha256-rHMZBwwwX8LIjHcjYFVi2GBwMHMr7ukxzbQJHPBeabc="; 10 10 }; 11 11 12 12 patches = [ ./0001-Don-t-resolve-symlinks-when-trying-to-find-INSTALL_P.patch ];
+2 -2
pkgs/tools/graphics/scrot/default.nix
··· 3 3 4 4 stdenv.mkDerivation rec { 5 5 pname = "scrot"; 6 - version = "1.4"; 6 + version = "1.5"; 7 7 8 8 src = fetchFromGitHub { 9 9 owner = "resurrecting-open-source-projects"; 10 10 repo = pname; 11 11 rev = version; 12 - sha256 = "12xq6glg70icwsvbnfw9gm4dahlbnrc7b6adpd0mpf89h4sj2gds"; 12 + sha256 = "sha256-4vguodLnCj0sOBLM4oJXTfX1p8hIo3WTwIuViPtZxHQ="; 13 13 }; 14 14 15 15 nativeBuildInputs = [ autoreconfHook autoconf-archive ];
+2 -2
pkgs/tools/networking/haproxy/default.nix
··· 11 11 12 12 stdenv.mkDerivation rec { 13 13 pname = "haproxy"; 14 - version = "2.3.4"; 14 + version = "2.3.5"; 15 15 16 16 src = fetchurl { 17 17 url = "https://www.haproxy.org/download/${lib.versions.majorMinor version}/src/${pname}-${version}.tar.gz"; 18 - sha256 = "sha256-YBSM3+3WsZxAHbzXXM12pTwgvHbEkDK6Mq+YoKXEle0="; 18 + sha256 = "sha256-eSRTlTC79VWCnH9Yhr4Lf8+NnI/+CGe3AQvrZwq/vks="; 19 19 }; 20 20 21 21 buildInputs = [ openssl zlib ]
+15 -27
pkgs/tools/networking/httpie/default.nix
··· 1 - { lib, fetchFromGitHub, python3Packages, docutils, fetchpatch }: 1 + { lib, fetchFromGitHub, python3Packages, docutils }: 2 2 3 3 python3Packages.buildPythonApplication rec { 4 4 pname = "httpie"; 5 - version = "2.2.0"; 5 + version = "2.4.0"; 6 6 7 7 src = fetchFromGitHub { 8 - owner = "jakubroztocil"; 8 + owner = "httpie"; 9 9 repo = "httpie"; 10 10 rev = version; 11 - sha256 = "0caazv24jr0844c4mdx77vzwwi5m869n10wa42cydb08ppx1xxj6"; 11 + sha256 = "00lafjqg9nfnak0nhcr2l2hzzkwn2y6qv0wdkm6r6f69snizy3hf"; 12 12 }; 13 13 14 - outputs = [ "out" "doc" "man" ]; 15 - 16 - propagatedBuildInputs = with python3Packages; [ pygments requests setuptools ]; 17 - dontUseSetuptoolsCheck = true; 18 14 patches = [ 19 15 ./strip-venv.patch 20 - 21 - # Fix `test_ciphers_none_can_be_selected` 22 - # TODO: remove on next release 23 - (fetchpatch { 24 - url = "https://github.com/jakubroztocil/httpie/commit/49e71d252f54871a6bc49cb1cba103d385a543b8.patch"; 25 - sha256 = "13b2faf50gimj7f17dlx4gmd8ph8ipgihpzfqbvmfjlbf1v95fsj"; 26 - }) 27 16 ]; 28 17 18 + outputs = [ "out" "doc" "man" ]; 19 + 20 + propagatedBuildInputs = with python3Packages; [ pygments requests requests-toolbelt setuptools ]; 21 + 29 22 checkInputs = with python3Packages; [ 30 23 mock 31 24 pytest ··· 70 63 toHtml CHANGELOG.rst $docdir/html/CHANGELOG.html 71 64 toHtml CONTRIBUTING.rst $docdir/html/CONTRIBUTING.html 72 65 73 - # change a few links to the local files 74 - substituteInPlace $docdir/html/index.html \ 75 - --replace \ 76 - 'https://github.com/jakubroztocil/httpie/blob/master/CHANGELOG.rst' \ 77 - "CHANGELOG.html" \ 78 - --replace \ 79 - 'https://github.com/jakubroztocil/httpie/blob/master/CONTRIBUTING.rst' \ 80 - "CONTRIBUTING.html" 81 - 82 66 ${docutils}/bin/rst2man \ 83 67 --strip-elements-with-class=no-web \ 84 68 --title=http \ ··· 94 78 export PATH=${docutils}/bin:$PATH 95 79 ''; 96 80 97 - meta = { 81 + checkPhase = '' 82 + py.test ./httpie ./tests --doctest-modules --verbose ./httpie ./tests -k 'not test_chunked and not test_verbose_chunked and not test_multipart_chunked and not test_request_body_from_file_by_path_chunked' 83 + ''; 84 + 85 + meta = with lib; { 98 86 description = "A command line HTTP client whose goal is to make CLI human-friendly"; 99 87 homepage = "https://httpie.org/"; 100 - license = lib.licenses.bsd3; 101 - maintainers = with lib.maintainers; [ antono relrod schneefux ]; 88 + license = licenses.bsd3; 89 + maintainers = with maintainers; [ antono relrod schneefux SuperSandro2000 ]; 102 90 }; 103 91 }
+8 -5
pkgs/tools/networking/httpie/strip-venv.patch
··· 1 1 diff --git a/tests/test_docs.py b/tests/test_docs.py 2 - index 7a41822..720ecf6 100644 2 + index 340e64d..a6b4dc9 100644 3 3 --- a/tests/test_docs.py 4 4 +++ b/tests/test_docs.py 5 - @@ -41,12 +41,10 @@ assert filenames 6 - 5 + @@ -42,15 +42,10 @@ assert filenames 7 6 # HACK: hardcoded paths, venv should be irrelevant, etc. 8 - # TODO: replaces the process with Python code 7 + # TODO: simplify by using the Python API instead of a subprocess 8 + # then we wont’t need the paths. 9 9 -VENV_BIN = Path(__file__).parent.parent / 'venv/bin' 10 10 -VENV_PYTHON = VENV_BIN / 'python' 11 11 -VENV_RST2PSEUDOXML = VENV_BIN / 'rst2pseudoxml.py' ··· 13 13 +VENV_RST2PSEUDOXML = 'rst2pseudoxml.py' 14 14 15 15 16 - -@pytest.mark.skipif(not os.path.exists(VENV_RST2PSEUDOXML), reason='docutils not installed') 16 + -@pytest.mark.skipif( 17 + - not VENV_RST2PSEUDOXML.exists(), 18 + - reason='docutils not installed', 19 + -) 17 20 @pytest.mark.parametrize('filename', filenames) 18 21 def test_rst_file_syntax(filename): 19 22 p = subprocess.Popen(
-52
pkgs/tools/text/ocrmypdf/0001-Make-compatible-with-pdfminer.six-version-20200720.patch
··· 1 - From 4315b58e0bffedd145cec61f96062292cd98278e Mon Sep 17 00:00:00 2001 2 - From: Pascal Bach <pascal.bach@nextrem.ch> 3 - Date: Thu, 23 Jul 2020 21:37:33 +0200 4 - Subject: [PATCH] Make compatible with pdfminer.six version 20200720 5 - 6 - --- 7 - setup.py | 2 +- 8 - src/ocrmypdf/pdfinfo/layout.py | 8 ++++++-- 9 - 2 files changed, 7 insertions(+), 3 deletions(-) 10 - 11 - diff --git a/setup.py b/setup.py 12 - index bd95ed9..d1f4ab1 100644 13 - --- a/setup.py 14 - +++ b/setup.py 15 - @@ -83,7 +83,7 @@ setup( 16 - 'cffi >= 1.9.1', # must be a setup and install requirement 17 - 'coloredlogs >= 14.0', # strictly optional 18 - 'img2pdf >= 0.3.0, < 0.4', # pure Python, so track HEAD closely 19 - - 'pdfminer.six >= 20191110, <= 20200517', 20 - + 'pdfminer.six >= 20191110, <= 20200720', 21 - 'pikepdf >= 1.14.0, < 2', 22 - 'Pillow >= 7.0.0', 23 - 'pluggy >= 0.13.0', 24 - diff --git a/src/ocrmypdf/pdfinfo/layout.py b/src/ocrmypdf/pdfinfo/layout.py 25 - index 98bd82e..8b41e14 100644 26 - --- a/src/ocrmypdf/pdfinfo/layout.py 27 - +++ b/src/ocrmypdf/pdfinfo/layout.py 28 - @@ -26,7 +26,11 @@ import pdfminer.pdfdevice 29 - import pdfminer.pdfinterp 30 - from pdfminer.converter import PDFLayoutAnalyzer 31 - from pdfminer.layout import LAParams, LTChar, LTPage, LTTextBox 32 - -from pdfminer.pdfdocument import PDFTextExtractionNotAllowed 33 - +try: 34 - + from pdfminer.pdfdocument import PDFTextExtractionNotAllowedError 35 - +except ImportError: 36 - + # Fallback for pdfminer < 20200720 37 - + from pdfminer.pdfdocument import PDFTextExtractionNotAllowed as PDFTextExtractionNotAllowedError 38 - from pdfminer.pdffont import PDFSimpleFont, PDFUnicodeNotDefined 39 - from pdfminer.pdfpage import PDFPage 40 - from pdfminer.utils import bbox2str, matrix2str 41 - @@ -239,7 +243,7 @@ def get_page_analysis(infile, pageno, pscript5_mode): 42 - with Path(infile).open('rb') as f: 43 - page = PDFPage.get_pages(f, pagenos=[pageno], maxpages=0) 44 - interp.process_page(next(page)) 45 - - except PDFTextExtractionNotAllowed: 46 - + except PDFTextExtractionNotAllowedError: 47 - raise EncryptedPdfError() 48 - finally: 49 - if pscript5_mode: 50 - -- 51 - 2.27.0 52 -
+6 -7
pkgs/tools/text/ocrmypdf/default.nix
··· 7 7 , python3 8 8 , python3Packages 9 9 , qpdf 10 - , lib, stdenv 10 + , lib 11 + , stdenv 11 12 , tesseract4 12 13 , unpaper 13 14 , substituteAll ··· 29 30 in 30 31 buildPythonApplication rec { 31 32 pname = "ocrmypdf"; 32 - version = "11.3.3"; 33 + version = "11.6.0"; 33 34 disabled = ! python3Packages.isPy3k; 34 35 35 36 src = fetchFromGitHub { 36 37 owner = "jbarlow83"; 37 38 repo = "OCRmyPDF"; 38 39 rev = "v${version}"; 39 - sha256 = "0qv34clid65p11dgqalyk7b7myn5ibiz8i9xxhxkmjblw297p6ak"; 40 + sha256 = "0inmmpam0vcm5n4sm6lh9p5swk44clknvm1cdwk9cax01mdqljza"; 40 41 }; 41 42 42 43 nativeBuildInputs = with python3Packages; [ 43 - pytestrunner 44 44 setuptools 45 45 setuptools-scm-git-archive 46 46 setuptools_scm ··· 65 65 pytest 66 66 pytest-helpers-namespace 67 67 pytest_xdist 68 - pytestcov 69 - pytestrunner 68 + pytest-cov 70 69 python-xmp-toolkit 71 70 pytestCheckHook 72 71 ] ++ runtimeDeps; ··· 83 82 meta = with lib; { 84 83 homepage = "https://github.com/jbarlow83/OCRmyPDF"; 85 84 description = "Adds an OCR text layer to scanned PDF files, allowing them to be searched"; 86 - license = licenses.gpl3; 85 + license = with licenses; [ mpl20 mit ]; 87 86 platforms = platforms.linux; 88 87 maintainers = [ maintainers.kiwi ]; 89 88 };
+48
pkgs/tools/text/robodoc/default.nix
··· 1 + { lib 2 + , stdenv 3 + , fetchFromGitHub 4 + , autoreconfHook 5 + }: 6 + 7 + stdenv.mkDerivation rec { 8 + pname = "robodoc"; 9 + version = "4.99.44"; 10 + 11 + src = fetchFromGitHub { 12 + owner = "gumpu"; 13 + repo = "ROBODoc"; 14 + rev = "v${version}"; 15 + sha256 = "l3prSdaGhOvXmZfCPbsZJNocO7y20zJjLQpajRTJOqE="; 16 + }; 17 + 18 + nativeBuildInputs = [ autoreconfHook ]; 19 + 20 + hardeningDisable = [ "format" ]; 21 + 22 + meta = with lib; { 23 + homepage = "https://github.com/gumpu/ROBODoc"; 24 + description = "Documentation Extraction Tool"; 25 + longDescription = '' 26 + ROBODoc is program documentation tool. The idea is to include for every 27 + function or procedure a standard header containing all sorts of 28 + information about the procedure or function. ROBODoc extracts these 29 + headers from the source file and puts them in a separate 30 + autodocs-file. ROBODoc thus allows you to include the program 31 + documentation in the source code and avoid having to maintain two separate 32 + documents. Or as Petteri puts it: "robodoc is very useful - especially for 33 + programmers who don't like writing documents with Word or some other 34 + strange tool." 35 + 36 + ROBODoc can format the headers in a number of different formats: HTML, 37 + RTF, LaTeX, or XML DocBook. In HTML mode it can generate cross links 38 + between headers. You can even include parts of your source code. 39 + 40 + ROBODoc works with many programming languages: For instance C, Pascal, 41 + Shell Scripts, Assembler, COBOL, Occam, Postscript, Forth, Tcl/Tk, C++, 42 + Java -- basically any program in which you can use remarks/comments. 43 + ''; 44 + license = with licenses; gpl3Plus; 45 + maintainers = with maintainers; [ AndersonTorres ]; 46 + platforms = with platforms; all; 47 + }; 48 + }
+4
pkgs/top-level/all-packages.nix
··· 1114 1114 1115 1115 bmap-tools = callPackage ../tools/misc/bmap-tools { }; 1116 1116 1117 + bonnmotion = callPackage ../development/tools/misc/bonnmotion { }; 1118 + 1117 1119 bonnie = callPackage ../tools/filesystems/bonnie { }; 1118 1120 1119 1121 bonfire = callPackage ../tools/misc/bonfire { }; ··· 4829 4831 ripgrep-all = callPackage ../tools/text/ripgrep-all { 4830 4832 inherit (darwin.apple_sdk.frameworks) Security; 4831 4833 }; 4834 + 4835 + robodoc = callPackage ../tools/text/robodoc { }; 4832 4836 4833 4837 ucg = callPackage ../tools/text/ucg { }; 4834 4838
+6
pkgs/top-level/python-packages.nix
··· 204 204 205 205 aioamqp = callPackage ../development/python-modules/aioamqp { }; 206 206 207 + ailment = callPackage ../development/python-modules/ailment { }; 208 + 207 209 aiocoap = callPackage ../development/python-modules/aiocoap { }; 208 210 209 211 aioconsole = callPackage ../development/python-modules/aioconsole { }; ··· 3660 3662 inherit python; 3661 3663 })).py; 3662 3664 3665 + libpurecool = callPackage ../development/python-modules/libpurecool { }; 3666 + 3663 3667 libredwg = toPythonModule (pkgs.libredwg.override { 3664 3668 enablePython = true; 3665 3669 inherit (self) python libxml2; ··· 6522 6526 pyvcf = callPackage ../development/python-modules/pyvcf { }; 6523 6527 6524 6528 pyvera = callPackage ../development/python-modules/pyvera { }; 6529 + 6530 + pyvex = callPackage ../development/python-modules/pyvex { }; 6525 6531 6526 6532 pyviz-comms = callPackage ../development/python-modules/pyviz-comms { }; 6527 6533