diff options
26 files changed, 255 insertions, 63 deletions
diff --git a/doc/languages-frameworks/rust.section.md b/doc/languages-frameworks/rust.section.md index 849c836b03fc0..48890cf53efa8 100644 --- a/doc/languages-frameworks/rust.section.md +++ b/doc/languages-frameworks/rust.section.md @@ -15,7 +15,7 @@ For other versions such as daily builds (beta and nightly), use either `rustup` from nixpkgs (which will manage the rust installation in your home directory), or use a community maintained [Rust overlay](#using-community-rust-overlays). -## Compiling Rust applications with Cargo {#compiling-rust-applications-with-cargo} +## `buildRustPackage`: Compiling Rust applications with Cargo {#compiling-rust-applications-with-cargo} Rust applications are packaged by using the `buildRustPackage` helper from `rustPlatform`: @@ -608,7 +608,7 @@ buildPythonPackage rec { } ``` -## Compiling Rust crates using Nix instead of Cargo {#compiling-rust-crates-using-nix-instead-of-cargo} +## `buildRustCrate`: Compiling Rust crates using Nix instead of Cargo {#compiling-rust-crates-using-nix-instead-of-cargo} ### Simple operation {#simple-operation} diff --git a/lib/attrsets.nix b/lib/attrsets.nix index de88763854d69..8b5c0ef4cea62 100644 --- a/lib/attrsets.nix +++ b/lib/attrsets.nix @@ -3,7 +3,7 @@ let inherit (builtins) head tail length; - inherit (lib.trivial) id; + inherit (lib.trivial) flip id mergeAttrs pipe; inherit (lib.strings) concatStringsSep concatMapStringsSep escapeNixIdentifier sanitizeDerivationName; inherit (lib.lists) foldr foldl' concatMap concatLists elemAt all partition groupBy take foldl; in @@ -77,6 +77,25 @@ rec { let errorMsg = "cannot find attribute `" + concatStringsSep "." attrPath + "'"; in attrByPath attrPath (abort errorMsg); + /* Map each attribute in the given set and merge them into a new attribute set. + + Type: + concatMapAttrs :: + (String -> a -> AttrSet) + -> AttrSet + -> AttrSet + + Example: + concatMapAttrs + (name: value: { + ${name} = value; + ${name + value} = value; + }) + { x = "a"; y = "b"; } + => { x = "a"; xa = "a"; y = "b"; yb = "b"; } + */ + concatMapAttrs = f: flip pipe [ (mapAttrs f) attrValues (foldl' mergeAttrs { }) ]; + /* Update or set specific paths of an attribute set. @@ -606,7 +625,7 @@ rec { getMan = getOutput "man"; /* Pick the outputs of packages to place in buildInputs */ - chooseDevOutputs = drvs: builtins.map getDev drvs; + chooseDevOutputs = builtins.map getDev; /* Make various Nix tools consider the contents of the resulting attribute set when looking for what to build, find, etc. diff --git a/lib/default.nix b/lib/default.nix index 8bb06954518b9..cc4bedc5869b6 100644 --- a/lib/default.nix +++ b/lib/default.nix @@ -78,7 +78,7 @@ let inherit (self.attrsets) attrByPath hasAttrByPath setAttrByPath getAttrFromPath attrVals attrValues getAttrs catAttrs filterAttrs filterAttrsRecursive foldAttrs collect nameValuePair mapAttrs - mapAttrs' mapAttrsToList mapAttrsRecursive mapAttrsRecursiveCond + mapAttrs' mapAttrsToList concatMapAttrs mapAttrsRecursive mapAttrsRecursiveCond genAttrs isDerivation toDerivation optionalAttrs zipAttrsWithNames zipAttrsWith zipAttrs recursiveUpdateUntil recursiveUpdate matchAttrs overrideExisting showAttrPath getOutput getBin diff --git a/lib/systems/platforms.nix b/lib/systems/platforms.nix index 41c25484cea03..d574943e47df3 100644 --- a/lib/systems/platforms.nix +++ b/lib/systems/platforms.nix @@ -557,7 +557,7 @@ rec { else if platform.isRiscV then riscv-multiplatform - else if platform.parsed.cpu == lib.systems.parse.cpuTypes.mipsel then fuloong2f_n32 + else if platform.parsed.cpu == lib.systems.parse.cpuTypes.mipsel then (import ./examples.nix { inherit lib; }).mipsel-linux-gnu else if platform.parsed.cpu == lib.systems.parse.cpuTypes.powerpc64le then powernv diff --git a/lib/tests/misc.nix b/lib/tests/misc.nix index 31c938a8ffda1..b73da4f1010d4 100644 --- a/lib/tests/misc.nix +++ b/lib/tests/misc.nix @@ -478,6 +478,23 @@ runTests { # ATTRSETS + testConcatMapAttrs = { + expr = concatMapAttrs + (name: value: { + ${name} = value; + ${name + value} = value; + }) + { + foo = "bar"; + foobar = "baz"; + }; + expected = { + foo = "bar"; + foobar = "baz"; + foobarbaz = "baz"; + }; + }; + # code from the example testRecursiveUpdateUntil = { expr = recursiveUpdateUntil (path: l: r: path == ["foo"]) { diff --git a/nixos/modules/services/security/vaultwarden/default.nix b/nixos/modules/services/security/vaultwarden/default.nix index 81423e57fd2c3..3ef0bfb090ac4 100644 --- a/nixos/modules/services/security/vaultwarden/default.nix +++ b/nixos/modules/services/security/vaultwarden/default.nix @@ -22,9 +22,9 @@ let # we can only check for values consistently after converting them to their corresponding environment variable name. configEnv = let - configEnv = listToAttrs (concatLists (mapAttrsToList (name: value: - if value != null then [ (nameValuePair (nameToEnvVar name) (if isBool value then boolToString value else toString value)) ] else [] - ) cfg.config)); + configEnv = concatMapAttrs (name: value: optionalAttrs (value != null) { + ${nameToEnvVar name} = if isBool value then boolToString value else toString value; + }) cfg.config; in { DATA_FOLDER = "/var/lib/bitwarden_rs"; } // optionalAttrs (!(configEnv ? WEB_VAULT_ENABLED) || configEnv.WEB_VAULT_ENABLED == "true") { WEB_VAULT_FOLDER = "${cfg.webVaultPackage}/share/vaultwarden/vault"; } // configEnv; diff --git a/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix b/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix index 0272c73b17303..f4e0c99115f31 100644 --- a/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix +++ b/pkgs/applications/editors/vim/plugins/nvim-treesitter/overrides.nix @@ -14,18 +14,18 @@ let # ocaml-interface # tree-sitter-ocaml-interface # tree-sitter-ocaml_interface - builtGrammars = generatedGrammars // lib.listToAttrs - (lib.concatLists (lib.mapAttrsToList - (k: v: - let - replaced = lib.replaceStrings [ "_" ] [ "-" ] k; - in - map (lib.flip lib.nameValuePair v) - ([ "tree-sitter-${k}" ] ++ lib.optionals (k != replaced) [ - replaced - "tree-sitter-${replaced}" - ])) - generatedDerivations)); + builtGrammars = generatedGrammars // lib.concatMapAttrs + (k: v: + let + replaced = lib.replaceStrings [ "_" ] [ "-" ] k; + in + { + "tree-sitter-${k}" = v; + } // lib.optionalAttrs (k != replaced) { + ${replaced} = v; + "tree-sitter-${replaced}" = v; + }) + generatedDerivations; allGrammars = lib.attrValues generatedDerivations; diff --git a/pkgs/development/interpreters/guile/2.2.nix b/pkgs/development/interpreters/guile/2.2.nix index c101f5ae39030..91cb993fae06f 100644 --- a/pkgs/development/interpreters/guile/2.2.nix +++ b/pkgs/development/interpreters/guile/2.2.nix @@ -38,7 +38,7 @@ builder rec { buildPackages.stdenv.cc ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) - pkgsBuildBuild.guile; + pkgsBuildBuild.guile_2_2; nativeBuildInputs = [ makeWrapper pkg-config diff --git a/pkgs/development/interpreters/guile/3.0.nix b/pkgs/development/interpreters/guile/3.0.nix index ced8561720d3f..afad1c7a29ff8 100644 --- a/pkgs/development/interpreters/guile/3.0.nix +++ b/pkgs/development/interpreters/guile/3.0.nix @@ -38,7 +38,7 @@ builder rec { depsBuildBuild = [ buildPackages.stdenv.cc ] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) - pkgsBuildBuild.guile; + pkgsBuildBuild.guile_3_0; nativeBuildInputs = [ makeWrapper pkg-config diff --git a/pkgs/development/libraries/gobject-introspection/wrapper.nix b/pkgs/development/libraries/gobject-introspection/wrapper.nix index 518dda781a642..d59cbe6faffa4 100644 --- a/pkgs/development/libraries/gobject-introspection/wrapper.nix +++ b/pkgs/development/libraries/gobject-introspection/wrapper.nix @@ -33,6 +33,8 @@ then stdenv.mkDerivation (builtins.removeAttrs overridenUnwrappedGir.drvAttrs [ "name" ] # so we can get a fresh name generated from the pname // { + + inherit (overridenUnwrappedGir) meta; pname = "gobject-introspection-wrapped"; passthru = overridenUnwrappedGir.passthru // { unwrapped = overridenUnwrappedGir; @@ -88,6 +90,7 @@ then else stdenv.mkDerivation (builtins.removeAttrs overridenUnwrappedGir.drvAttrs [ "name" ] # so we can get a fresh name generated from the pname // { + inherit (overridenUnwrappedGir) meta; pname = "gobject-introspection-wrapped"; passthru = overridenUnwrappedGir.passthru // { unwrapped = overridenUnwrappedGir; diff --git a/pkgs/development/python-modules/asyauth/default.nix b/pkgs/development/python-modules/asyauth/default.nix index ca276bc37e8b4..4ac397875ec94 100644 --- a/pkgs/development/python-modules/asyauth/default.nix +++ b/pkgs/development/python-modules/asyauth/default.nix @@ -10,14 +10,14 @@ buildPythonPackage rec { pname = "asyauth"; - version = "0.0.6"; + version = "0.0.7"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-XUUeZ8yqnZEMj3fCtq8YrZJH6Ci77f2OKXcCIHMbY8w="; + hash = "sha256-a4M2I+xIla+S3Hi5F+AZpZRicTp7EycGRWWldVyAV8E="; }; propagatedBuildInputs = [ @@ -37,6 +37,7 @@ buildPythonPackage rec { meta = with lib; { description = "Unified authentication library"; homepage = "https://github.com/skelsec/asyauth"; + changelog = "https://github.com/skelsec/asyauth/releases/tag/${version}"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/msldap/default.nix b/pkgs/development/python-modules/msldap/default.nix index 445eea622d243..4afd120430b88 100644 --- a/pkgs/development/python-modules/msldap/default.nix +++ b/pkgs/development/python-modules/msldap/default.nix @@ -14,14 +14,14 @@ buildPythonPackage rec { pname = "msldap"; - version = "0.4.6"; + version = "0.4.7"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-iiAtylJIzcfNyh1d92wA1oOYk7UWdD/F0sWtlAMMv2g="; + hash = "sha256-WMMqNSRDBwPQ/1ACgtuSvA50j+xNyjnxl7rTbx3uQ1w="; }; propagatedBuildInputs = [ @@ -45,6 +45,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python LDAP library for auditing MS AD"; homepage = "https://github.com/skelsec/msldap"; + changelog = "https://github.com/skelsec/msldap/releases/tag/${version}"; license = with licenses; [ mit ]; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/mypy-boto3-builder/default.nix b/pkgs/development/python-modules/mypy-boto3-builder/default.nix index 659ca88d0f9a7..00be47cf82070 100644 --- a/pkgs/development/python-modules/mypy-boto3-builder/default.nix +++ b/pkgs/development/python-modules/mypy-boto3-builder/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "mypy-boto3-builder"; - version = "7.11.10"; + version = "7.11.11"; format = "pyproject"; disabled = pythonOlder "3.10"; @@ -25,8 +25,8 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "youtype"; repo = "mypy_boto3_builder"; - rev = version; - hash = "sha256-bS56xHrAoYKjwfbz5vh6O41EGDM821z4ZFZfpqc65cE="; + rev = "refs/tags/${version}"; + hash = "sha256-4iyh/oXuYsdtqEf1Dh4Z3y8AHWiS1TmimO5HUwsHrHA="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/ocifs/default.nix b/pkgs/development/python-modules/ocifs/default.nix index bf5bbe175aded..2d4e4bfa8757a 100644 --- a/pkgs/development/python-modules/ocifs/default.nix +++ b/pkgs/development/python-modules/ocifs/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "ocifs"; - version = "1.1.3"; + version = "1.1.4"; format = "setuptools"; disabled = pythonOlder "3.6"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "oracle"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-wMKrK7ONc3M6beF9czrGddSeElCOTGh+JD9efb4Shbg="; + hash = "sha256-zZREWEFWQj4G2RyEMH0X3oPr5Yu5/96UX6nm9HDmJCY="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/pyotgw/default.nix b/pkgs/development/python-modules/pyotgw/default.nix index c0f24aa3dc6d0..7e6807854180e 100644 --- a/pkgs/development/python-modules/pyotgw/default.nix +++ b/pkgs/development/python-modules/pyotgw/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "pyotgw"; - version = "2.1.1"; + version = "2.1.2"; format = "setuptools"; disabled = pythonOlder "3.8"; @@ -17,8 +17,8 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "mvn23"; repo = pname; - rev = version; - hash = "sha256-gMrLoITDBO7T9JtY4O43aMKF88zhwnJ/rlw8U3yvG8k="; + rev = "refs/tags/${version}"; + hash = "sha256-qUwpW9C9VqsbDNa9zqa/BZtMuzmPU21Au/q0iGRkBNY="; }; propagatedBuildInputs = [ @@ -37,6 +37,7 @@ buildPythonPackage rec { meta = with lib; { description = "Python module to interact the OpenTherm Gateway"; homepage = "https://github.com/mvn23/pyotgw"; + changelog = "https://github.com/mvn23/pyotgw/blob/${version}/CHANGELOG.md"; license = with licenses; [ gpl3Plus ]; maintainers = with maintainers; [ fab ]; }; diff --git a/pkgs/development/python-modules/pytest-mockito/default.nix b/pkgs/development/python-modules/pytest-mockito/default.nix new file mode 100644 index 0000000000000..240cf44343e21 --- /dev/null +++ b/pkgs/development/python-modules/pytest-mockito/default.nix @@ -0,0 +1,40 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, pytest +, mockito +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "pytest-mockito"; + version = "0.0.4"; + + format = "setuptools"; + + src = fetchFromGitHub { + owner = "kaste"; + repo = "pytest-mockito"; + rev = version; + hash = "sha256-vY/i1YV1lo4mZvnxsXBOyaq31YTiF0BY6PTVwdVX10I="; + }; + + buildInputs = [ + pytest + ]; + + propagatedBuildInputs = [ + mockito + ]; + + checkInputs = [ + pytestCheckHook + ]; + + meta = { + description = "Base fixtures for mockito"; + homepage = "https://github.com/kaste/pytest-mockito"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/robotframework-pythonlibcore/default.nix b/pkgs/development/python-modules/robotframework-pythonlibcore/default.nix new file mode 100644 index 0000000000000..01e6a98c02280 --- /dev/null +++ b/pkgs/development/python-modules/robotframework-pythonlibcore/default.nix @@ -0,0 +1,53 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, fetchpatch +, pytest-mockito +, pytestCheckHook +, robotframework +}: + +buildPythonPackage rec { + pname = "robotframework-pythonlibcore"; + version = "4.0.0"; + + disabled = pythonOlder "3.7"; + + format = "setuptools"; + + src = fetchFromGitHub { + owner = "robotframework"; + repo = "PythonLibCore"; + rev = "v${version}"; + hash = "sha256-86o5Lh9zWo4vUF2186dN7e8tTUu5PIxM/ZukPwNl0S8="; + }; + + patches = [ + (fetchpatch { + name = "fix-finding-version.patch"; + url = "https://github.com/robotframework/PythonLibCore/commit/84c73979e309f59de057ae6a77725ab0f468b71f.patch"; + hash = "sha256-zrjsNvXpJDLpXql200NV+QGWFLtnRVZTeAjT52dRn2s="; + }) + ]; + + checkInputs = [ + pytest-mockito + pytestCheckHook + robotframework + ]; + + preCheck = '' + export PYTHONPATH="atest:utest/helpers:$PYTHONPATH" + ''; + + pythonImportsCheck = [ "robotlibcore" ]; + + meta = { + changelog = "https://github.com/robotframework/PythonLibCore/blob/${src.rev}/docs/PythonLibCore-${version}.rst"; + description = "Tools to ease creating larger test libraries for Robot Framework using Python"; + homepage = "https://github.com/robotframework/PythonLibCore"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ dotlambda ]; + }; +} diff --git a/pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix b/pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix index 806387f1095e5..7f08c345bc6b8 100644 --- a/pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix +++ b/pkgs/development/python-modules/robotframework-seleniumlibrary/default.nix @@ -1,4 +1,16 @@ -{ stdenv, lib, buildPythonPackage, fetchFromGitHub, python, robotframework, selenium, mockito, robotstatuschecker, approvaltests }: +{ lib +, stdenv +, buildPythonPackage +, fetchFromGitHub +, python +, robotframework +, robotframework-pythonlibcore +, selenium +, approvaltests +, pytest-mockito +, pytestCheckHook +, robotstatuschecker +}: buildPythonPackage rec { version = "6.0.0"; @@ -12,17 +24,40 @@ buildPythonPackage rec { sha256 = "1rjzz6mrx4zavcck2ry8269rf3dkvvs1qfa9ra7dkppbarrjin3f"; }; - propagatedBuildInputs = [ robotframework selenium ]; - checkInputs = [ mockito robotstatuschecker approvaltests ]; + propagatedBuildInputs = [ + robotframework + robotframework-pythonlibcore + selenium + ]; - # Only execute Unit Tests. Acceptance Tests require headlesschrome, currently - # not available in nixpkgs - checkPhase = '' - ${python.interpreter} utest/run.py - ''; + checkInputs = [ + approvaltests + pytest-mockito + pytestCheckHook + robotstatuschecker + ]; + + disabledTestPaths = [ + # https://github.com/robotframework/SeleniumLibrary/issues/1804 + "utest/test/keywords/test_webdrivercache.py" + ]; + + disabledTests = [ + "test_create_opera_executable_path_not_set" + "test_create_opera_executable_path_set" + "test_create_opera_with_options" + "test_create_opera_with_service_log_path_real_path" + "test_get_executable_path" + "test_get_ff_profile_instance_FirefoxProfile" + "test_has_options" + "test_importer" + "test_log_file_with_index_exist" + "test_opera" + "test_single_method" + ]; meta = with lib; { - broken = (stdenv.isLinux && stdenv.isAarch64) || stdenv.isDarwin; + changelog = "https://github.com/robotframework/SeleniumLibrary/blob/${src.rev}/docs/SeleniumLibrary-${version}.rst"; description = "Web testing library for Robot Framework"; homepage = "https://github.com/robotframework/SeleniumLibrary"; license = licenses.asl20; diff --git a/pkgs/development/tools/appthreat-depscan/default.nix b/pkgs/development/tools/appthreat-depscan/default.nix index c4ba4b27939f0..fc8f3a9bd528a 100644 --- a/pkgs/development/tools/appthreat-depscan/default.nix +++ b/pkgs/development/tools/appthreat-depscan/default.nix @@ -5,13 +5,13 @@ python3.pkgs.buildPythonApplication rec { pname = "appthreat-depscan"; - version = "3.0.2"; + version = "3.0.3"; src = fetchFromGitHub { owner = "AppThreat"; repo = "dep-scan"; rev = "refs/tags/v${version}"; - hash = "sha256-AxdtphC9dVd/o52hW8L+5gaEDeP9wvR0vSZS3XY9sAw="; + hash = "sha256-JxaimM9sL6khTGJoSUFO2Dzlki6uoyqXEJznk6UHK/0="; }; propagatedBuildInputs = with python3.pkgs; [ diff --git a/pkgs/development/tools/dprint/default.nix b/pkgs/development/tools/dprint/default.nix index 8f5435f82728a..1ff2577b5d9f3 100644 --- a/pkgs/development/tools/dprint/default.nix +++ b/pkgs/development/tools/dprint/default.nix @@ -2,14 +2,14 @@ rustPlatform.buildRustPackage rec { pname = "dprint"; - version = "0.32.2"; + version = "0.33.0"; src = fetchCrate { inherit pname version; - sha256 = "sha256-F7hqSbCGP3p+6khNMfuUABAvtB8MMABcpX7zK9rWhrQ="; + sha256 = "sha256-7UgE8/FPEG3VUtQLdlvfaFx9N6iIci5eu+Z2HBo+7c0="; }; - cargoSha256 = "sha256-Azsky2rst+z33EKfZ+6LSeF+MpSNjNxQrLkqxgLAQ1o="; + cargoSha256 = "sha256-/7YUbbuoN/qUIHk95ndaKjHZdJOPNTqZqOBvM2dHvoc="; buildInputs = lib.optionals stdenv.isDarwin [ Security ]; diff --git a/pkgs/servers/monitoring/prometheus/bind-exporter.nix b/pkgs/servers/monitoring/prometheus/bind-exporter.nix index 4e0ef709496ec..46c428c59e05d 100644 --- a/pkgs/servers/monitoring/prometheus/bind-exporter.nix +++ b/pkgs/servers/monitoring/prometheus/bind-exporter.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "bind_exporter"; - version = "0.5.0"; + version = "0.6.0"; src = fetchFromGitHub { rev = "v${version}"; owner = "prometheus-community"; repo = "bind_exporter"; - sha256 = "sha256-ta+uy0FUEMcL4SW1K3v2j2bfDRmdAIz42MKPsNj4FbA="; + sha256 = "sha256-MZ+WjEtSTGsi+2iKSZ4Xy6gq+Zf7DZHolBiq3wop22A="; }; - vendorSha256 = "sha256-L0jZM83u423tiLf7kcqnXsQi7QBvNEXhuU+IwXXAhE0="; + vendorSha256 = "sha256-uTjY4Fx2GR6e/3nXKNcmjsWbDjnOnu/jOShXzMF+b3Q="; passthru.tests = { inherit (nixosTests.prometheus-exporters) bind; }; diff --git a/pkgs/servers/monitoring/prometheus/fastly-exporter.nix b/pkgs/servers/monitoring/prometheus/fastly-exporter.nix index a61466470ca5f..5acecd40bb6a8 100644 --- a/pkgs/servers/monitoring/prometheus/fastly-exporter.nix +++ b/pkgs/servers/monitoring/prometheus/fastly-exporter.nix @@ -2,16 +2,16 @@ buildGoModule rec { pname = "fastly-exporter"; - version = "7.2.5"; + version = "7.3.0"; src = fetchFromGitHub { owner = "peterbourgon"; repo = pname; rev = "v${version}"; - sha256 = "sha256-W/P4jUBNDR3t7FESNyUUnNWfGR0PI/dG03EVKYt8S2Y="; + sha256 = "sha256-oeRf/qjoe8ThzuyIGPOWO+5KTY318Fz3TGp5svXBGQU="; }; - vendorSha256 = "sha256-exoDUxcOXVn7wUqfLLtJpklPYFHjLodEYa3lF+qFD+A="; + vendorSha256 = "sha256-BBfI5SyTgaoXXHxhraH09YVi43v1mD6Ia8oyh+TYqvA="; meta = with lib; { description = "Prometheus exporter for the Fastly Real-time Analytics API"; diff --git a/pkgs/servers/monitoring/unifi-poller/default.nix b/pkgs/servers/monitoring/unifi-poller/default.nix index 83140c81f6379..c0aa3dd7f7db6 100644 --- a/pkgs/servers/monitoring/unifi-poller/default.nix +++ b/pkgs/servers/monitoring/unifi-poller/default.nix @@ -1,17 +1,20 @@ -{ lib, buildGoModule, fetchFromGitHub }: +{ lib +, buildGoModule +, fetchFromGitHub +}: buildGoModule rec { pname = "unifi-poller"; - version = "2.1.3"; + version = "2.1.9"; src = fetchFromGitHub { owner = "unifi-poller"; repo = "unifi-poller"; rev = "v${version}"; - sha256 = "sha256-xh9s1xAhIeEmeDprl7iPdE6pxmxZjzgMvilobiIoJp0="; + hash = "sha256-eC+jEtSLWhiL3V+GKfRN5MVF18/2tnA1kI096j3XQB0="; }; - vendorSha256 = "sha256-HoYgBKTl9HIMVzzzNYtRrfmqb7HCpPHVPeR4gUXneWk="; + vendorHash = "sha256-WVYQ3cZOO+EyJRTFcMjziDHwqqinm1IvxvSLuHTaqT8="; ldflags = [ "-w" "-s" @@ -24,6 +27,7 @@ buildGoModule rec { meta = with lib; { description = "Collect ALL UniFi Controller, Site, Device & Client Data - Export to InfluxDB or Prometheus"; homepage = "https://github.com/unifi-poller/unifi-poller"; + changelog = "https://github.com/unpoller/unpoller/releases/tag/v${version}"; license = licenses.mit; maintainers = with maintainers; [ ]; }; diff --git a/pkgs/tools/networking/obfs4/default.nix b/pkgs/tools/networking/obfs4/default.nix index 03e1d0ad5af22..af64c8190ebc7 100644 --- a/pkgs/tools/networking/obfs4/default.nix +++ b/pkgs/tools/networking/obfs4/default.nix @@ -13,9 +13,23 @@ buildGoModule rec { vendorSha256 = "0yjanv5piygffpdfysviijl7cql2k0r05bsxnlj4hbamsriz9xqy"; meta = with lib; { - description = "A pluggable transport proxy"; + description = "Circumvents censorship by transforming Tor traffic between clients and bridges"; + longDescription = '' + Obfs4proxy is a tool that attempts to circumvent censorship by + transforming the Tor traffic between the client and the bridge. + This way censors, who usually monitor traffic between the client + and the bridge, will see innocent-looking transformed traffic + instead of the actual Tor traffic. obfs4proxy implements the + obfsucation protocols obfs2, obfs3, and obfs4. It is written in + Go and is compliant with the Tor pluggable transports + specification, and its modular architecture allows it to support + multiple pluggable transports. + ''; homepage = "https://www.torproject.org/projects/obfsproxy"; maintainers = with maintainers; [ thoughtpolice ]; mainProgram = "obfs4proxy"; + changelog = "https://gitweb.torproject.org/pluggable-transports/obfs4.git/plain/ChangeLog"; + downloadPage = "https://gitweb.torproject.org/pluggable-transports/obfs4.git/"; + license = with lib.licenses; [ bsd2 bsd3 gpl3 ]; }; } diff --git a/pkgs/tools/security/grype/default.nix b/pkgs/tools/security/grype/default.nix index c690c0f629410..e55b721034333 100644 --- a/pkgs/tools/security/grype/default.nix +++ b/pkgs/tools/security/grype/default.nix @@ -8,13 +8,13 @@ buildGoModule rec { pname = "grype"; - version = "0.52.0"; + version = "0.53.0"; src = fetchFromGitHub { owner = "anchore"; repo = pname; rev = "v${version}"; - sha256 = "sha256-RZBO8TpFwRwr1CkGSX06jtAtLiNVHhe+8AJsHwNyPMY="; + sha256 = "sha256-um+uyY8kPkouF/9Kms0xZYhgYeZC/pE6w+JCVcKWdpI="; # populate values that require us to use git. By doing this in postFetch we # can delete .git afterwards and maintain better reproducibility of the src. leaveDotGit = true; @@ -27,7 +27,7 @@ buildGoModule rec { ''; }; proxyVendor = true; - vendorSha256 = "sha256-tRux9M9vFPj3TqhsF1zSV4V1YKnLVViuQjum9YFr5FU="; + vendorSha256 = "sha256-BP5Tvv5s74uxjVcEC0QPaw2tGPmkOjZmyCrPwwoz7o4="; nativeBuildInputs = [ installShellFiles diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index dd1dca64c91ca..b05da5787304d 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7059,6 +7059,8 @@ self: super: with self; { pysyncthru = callPackage ../development/python-modules/pysyncthru { }; + pytest-mockito = callPackage ../development/python-modules/pytest-mockito { }; + python-codon-tables = callPackage ../development/python-modules/python-codon-tables { }; python-crfsuite = callPackage ../development/python-modules/python-crfsuite { }; @@ -9812,6 +9814,8 @@ self: super: with self; { robotframework-databaselibrary = callPackage ../development/python-modules/robotframework-databaselibrary { }; + robotframework-pythonlibcore = callPackage ../development/python-modules/robotframework-pythonlibcore { }; + robotframework-requests = callPackage ../development/python-modules/robotframework-requests { }; robotframework-selenium2library = callPackage ../development/python-modules/robotframework-selenium2library { }; |