diff options
author | github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | 2024-02-08 18:01:31 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-08 18:01:31 +0000 |
commit | 3688b764d005fc32dc4944f306cffb80c1d238b1 (patch) | |
tree | 00c03fad6f2e9d83439d3a5503b91bc7eda2608f /pkgs | |
parent | b7cf3752c9c532e38cff83647fa188cebab9a6a7 (diff) | |
parent | 13d222c591f2c2a74bcf19f046f76fa3531bf98a (diff) | |
download | nixlib-3688b764d005fc32dc4944f306cffb80c1d238b1.tar nixlib-3688b764d005fc32dc4944f306cffb80c1d238b1.tar.gz nixlib-3688b764d005fc32dc4944f306cffb80c1d238b1.tar.bz2 nixlib-3688b764d005fc32dc4944f306cffb80c1d238b1.tar.lz nixlib-3688b764d005fc32dc4944f306cffb80c1d238b1.tar.xz nixlib-3688b764d005fc32dc4944f306cffb80c1d238b1.tar.zst nixlib-3688b764d005fc32dc4944f306cffb80c1d238b1.zip |
Merge staging-next into staging
Diffstat (limited to 'pkgs')
59 files changed, 487 insertions, 328 deletions
diff --git a/pkgs/applications/misc/tippecanoe/default.nix b/pkgs/applications/misc/tippecanoe/default.nix index af730d0dd9a5..79a2b6970bf7 100644 --- a/pkgs/applications/misc/tippecanoe/default.nix +++ b/pkgs/applications/misc/tippecanoe/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation (finalAttrs: { pname = "tippecanoe"; - version = "2.41.3"; + version = "2.42.0"; src = fetchFromGitHub { owner = "felt"; repo = "tippecanoe"; rev = finalAttrs.version; - hash = "sha256-yHX0hQbuPFaosBR/N7TmQKOHnd2LG6kkfGUBlaSkA8E="; + hash = "sha256-+IEgjjfotu2gLnaPyV29MEpVndgaZYRaFc92jvAKcWo="; }; buildInputs = [ sqlite zlib ]; diff --git a/pkgs/applications/networking/cluster/karmor/default.nix b/pkgs/applications/networking/cluster/karmor/default.nix index 998cabdb1088..8ee03d825d65 100644 --- a/pkgs/applications/networking/cluster/karmor/default.nix +++ b/pkgs/applications/networking/cluster/karmor/default.nix @@ -8,16 +8,16 @@ buildGoModule rec { pname = "karmor"; - version = "1.0.0"; + version = "1.1.0"; src = fetchFromGitHub { owner = "kubearmor"; repo = "kubearmor-client"; rev = "v${version}"; - hash = "sha256-TL/K1r76DV9CdKfVpE3Fn7N38lHqEF9Sxtthfew2l3w="; + hash = "sha256-HQJHtRi/ddKD+CNG3Ea61jz8zKcACBYCUR+qKbzADcI="; }; - vendorHash = "sha256-72gFtM+Z65VreeIamoBHXx2EsGCv8aDHmRz2aSQCU7Q="; + vendorHash = "sha256-Lzp6n66oMrzTk4oWERa8Btb3FwiASpSj8hdQmYxYges="; nativeBuildInputs = [ installShellFiles ]; diff --git a/pkgs/applications/networking/cluster/werf/default.nix b/pkgs/applications/networking/cluster/werf/default.nix index cd0182217fd5..a1215790968d 100644 --- a/pkgs/applications/networking/cluster/werf/default.nix +++ b/pkgs/applications/networking/cluster/werf/default.nix @@ -10,16 +10,16 @@ buildGoModule rec { pname = "werf"; - version = "1.2.287"; + version = "1.2.288"; src = fetchFromGitHub { owner = "werf"; repo = "werf"; rev = "v${version}"; - hash = "sha256-+xilQ9By8cbH/CDCxAocm2OlVnvh7efqcB/3cMZhc1w="; + hash = "sha256-NKSqg9lKKwK+b1dPpeQz4gp3KcVd4nZDhZR8+AAMTRc="; }; - vendorHash = "sha256-uzIUjG3Hv7wdsbX75wHZ8Z8fy/EPgRKH74VXUhThycE="; + vendorHash = "sha256-GRSGhepnXuTS3hgFanQgEdBtB+eyA7zUJ9W2qpE02LI="; proxyVendor = true; diff --git a/pkgs/build-support/docker/default.nix b/pkgs/build-support/docker/default.nix index 23e439c6c423..05a1a6fbbdaf 100644 --- a/pkgs/build-support/docker/default.nix +++ b/pkgs/build-support/docker/default.nix @@ -805,6 +805,7 @@ rec { ''; # This provides /bin/sh, pointing to bashInteractive. + # The use of bashInteractive here is intentional to support cases like `docker run -it <image_name>`, so keep these use cases in mind if making any changes to how this works. binSh = runCommand "bin-sh" { } '' mkdir -p $out/bin ln -s ${bashInteractive}/bin/bash $out/bin/sh diff --git a/pkgs/by-name/do/dorion/package.nix b/pkgs/by-name/do/dorion/package.nix index e80edc25835d..450a4644ac09 100644 --- a/pkgs/by-name/do/dorion/package.nix +++ b/pkgs/by-name/do/dorion/package.nix @@ -13,11 +13,11 @@ stdenv.mkDerivation (finalAttrs: { name = "dorion"; - version = "4.1.1"; + version = "4.1.2"; src = fetchurl { url = "https://github.com/SpikeHD/Dorion/releases/download/v${finalAttrs.version }/Dorion_${finalAttrs.version}_amd64.deb"; - hash = "sha256-H+r5+TPZ1Yyn0nE4MJGlN9WEn13nA8fkI1ZmfFor5Lk="; + hash = "sha256-hpZF83QPRcRqI0wCnIu6CsNBe8b9H0KrDyp6CDYkOfQ="; }; unpackCmd = '' diff --git a/pkgs/by-name/pa/parallel-disk-usage/package.nix b/pkgs/by-name/pa/parallel-disk-usage/package.nix index b3fa104bbfbf..0b6f06e52fbc 100644 --- a/pkgs/by-name/pa/parallel-disk-usage/package.nix +++ b/pkgs/by-name/pa/parallel-disk-usage/package.nix @@ -1,8 +1,6 @@ -{ - lib, - fetchFromGitHub, - rustPlatform, - stdenv, +{ lib +, fetchFromGitHub +, rustPlatform }: rustPlatform.buildRustPackage rec { pname = "parallel-disk-usage"; @@ -17,14 +15,17 @@ rustPlatform.buildRustPackage rec { cargoHash = "sha256-Jk9sNvApq4t/FoEzfjlDT2Td5sr38Jbdo6RoaOVQJK8="; + checkFlags = [ + # test example is ordered wrong on some systems + # https://github.com/KSXGitHub/parallel-disk-usage/issues/251 + "--skip=multiple_names" + ]; + meta = with lib; { description = "Highly parallelized, blazing fast directory tree analyzer"; homepage = "https://github.com/KSXGitHub/parallel-disk-usage"; license = licenses.asl20; maintainers = [maintainers.peret]; mainProgram = "pdu"; - # broken due to unit test failure - # https://github.com/KSXGitHub/parallel-disk-usage/issues/251 - broken = stdenv.isLinux && stdenv.isAarch64; }; } diff --git a/pkgs/by-name/pm/pmtiles/package.nix b/pkgs/by-name/pm/pmtiles/package.nix index 21a0d90d145e..4e9cffd9173e 100644 --- a/pkgs/by-name/pm/pmtiles/package.nix +++ b/pkgs/by-name/pm/pmtiles/package.nix @@ -1,13 +1,13 @@ { lib, buildGoModule, fetchFromGitHub }: buildGoModule rec { pname = "pmtiles"; - version = "1.14.0"; + version = "1.14.1"; src = fetchFromGitHub { owner = "protomaps"; repo = "go-pmtiles"; rev = "v${version}"; - hash = "sha256-yIH5vJTrSH1y30nHU7jrem1kbXp1fO0mhLoGMrv4IAE="; + hash = "sha256-CnREcPXNehxOMZm/cuedkDeWtloc7TGWNmmoFZhSTZE="; }; vendorHash = "sha256-tSQjCdgEXIGlSWcIB6lLQulAiEAebgW3pXL9Z2ujgIs="; diff --git a/pkgs/development/compilers/circt/default.nix b/pkgs/development/compilers/circt/default.nix index dfda406ab9b6..bef2c568de13 100644 --- a/pkgs/development/compilers/circt/default.nix +++ b/pkgs/development/compilers/circt/default.nix @@ -17,12 +17,12 @@ let in stdenv.mkDerivation rec { pname = "circt"; - version = "1.64.0"; + version = "1.65.0"; src = fetchFromGitHub { owner = "llvm"; repo = "circt"; rev = "firtool-${version}"; - sha256 = "sha256-tZ8IQa01hYVJZdUKPd0rMGfAScuhZPzpwP51WWXERGw="; + sha256 = "sha256-RYQAnvU+yoHGrU9zVvrD1/O80ioHEq2Cvo/MIjI6uTo="; fetchSubmodules = true; }; diff --git a/pkgs/by-name/sb/sbcl/bootstrap.nix b/pkgs/development/compilers/sbcl/bootstrap.nix index e23557c5a62f..e23557c5a62f 100644 --- a/pkgs/by-name/sb/sbcl/bootstrap.nix +++ b/pkgs/development/compilers/sbcl/bootstrap.nix diff --git a/pkgs/by-name/sb/sbcl/package.nix b/pkgs/development/compilers/sbcl/default.nix index 2f18dcc78d4c..2f18dcc78d4c 100644 --- a/pkgs/by-name/sb/sbcl/package.nix +++ b/pkgs/development/compilers/sbcl/default.nix diff --git a/pkgs/by-name/sb/sbcl/fix-2.4.0-aarch64-darwin.patch b/pkgs/development/compilers/sbcl/fix-2.4.0-aarch64-darwin.patch index cd344f0cbd19..cd344f0cbd19 100644 --- a/pkgs/by-name/sb/sbcl/fix-2.4.0-aarch64-darwin.patch +++ b/pkgs/development/compilers/sbcl/fix-2.4.0-aarch64-darwin.patch diff --git a/pkgs/development/embedded/avrdude/default.nix b/pkgs/development/embedded/avrdude/default.nix index 0f6bd8b6befc..99c798b5c238 100644 --- a/pkgs/development/embedded/avrdude/default.nix +++ b/pkgs/development/embedded/avrdude/default.nix @@ -5,13 +5,13 @@ stdenv.mkDerivation rec { pname = "avrdude"; - version = "7.2"; + version = "7.3"; src = fetchFromGitHub { owner = "avrdudes"; repo = pname; rev = "v${version}"; - sha256 = "sha256-/JyhMBcjNklyyXZEFZGTjrTNyafXEdHEhcLz6ZQx9aU="; + sha256 = "sha256-JqW3AOMmAfcy+PQRcqviWlxA6GoMSEfzIFt1pRYY7Dw="; }; nativeBuildInputs = [ cmake bison flex ] ++ lib.optionals docSupport [ diff --git a/pkgs/development/python-modules/boto3-stubs/default.nix b/pkgs/development/python-modules/boto3-stubs/default.nix index 858fb617c8b6..a934c9e312bb 100644 --- a/pkgs/development/python-modules/boto3-stubs/default.nix +++ b/pkgs/development/python-modules/boto3-stubs/default.nix @@ -365,14 +365,14 @@ buildPythonPackage rec { pname = "boto3-stubs"; - version = "1.34.36"; + version = "1.34.37"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-AvhzNyVC7Seap0a5kIX5UyAyhUeyp7A0R7bZAMZ5XtI="; + hash = "sha256-xmGMcSa6wDN8BeFh6cQo/rxX1qJNf/Yt5G5ndh9ALFc="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/botocore-stubs/default.nix b/pkgs/development/python-modules/botocore-stubs/default.nix index ce45115603f0..3361e6708439 100644 --- a/pkgs/development/python-modules/botocore-stubs/default.nix +++ b/pkgs/development/python-modules/botocore-stubs/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "botocore-stubs"; - version = "1.34.36"; + version = "1.34.37"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -17,7 +17,7 @@ buildPythonPackage rec { src = fetchPypi { pname = "botocore_stubs"; inherit version; - hash = "sha256-+VvELnYPQr54AgvmqJ6lzrMHtgRzDiyiVdmMrkhoM40="; + hash = "sha256-1rzqimhyqkbTiQJ9xcAiJB/QogR6i4WKpQBeYVHtMKc="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/cryptography/default.nix b/pkgs/development/python-modules/cryptography/default.nix index 4d30630759bb..4ae2e77de6ac 100644 --- a/pkgs/development/python-modules/cryptography/default.nix +++ b/pkgs/development/python-modules/cryptography/default.nix @@ -7,6 +7,7 @@ , cffi , cryptography-vectors ? (callPackage ./vectors.nix { }) , fetchPypi +, fetchpatch2 , isPyPy , libiconv , libxcrypt @@ -41,6 +42,14 @@ buildPythonPackage rec { hash = "sha256-jw/FC5rQO77h6omtBp0Nc2oitkVbNElbkBUduyprTIc="; }; + patches = [ + (fetchpatch2 { + # skip overflowing tests on 32 bit; https://github.com/pyca/cryptography/pull/10366 + url = "https://github.com/pyca/cryptography/commit/d741901dddd731895346636c0d3556c6fa51fbe6.patch"; + hash = "sha256-eC+MZg5O8Ia5CbjRE4y+JhaFs3Q5c62QtPHr3x9T+zw="; + }) + ]; + postPatch = '' substituteInPlace pyproject.toml \ --replace-fail "--benchmark-disable" "" diff --git a/pkgs/development/python-modules/es-client/default.nix b/pkgs/development/python-modules/es-client/default.nix index c75e0ed25dee..f5b16097c26f 100644 --- a/pkgs/development/python-modules/es-client/default.nix +++ b/pkgs/development/python-modules/es-client/default.nix @@ -20,7 +20,7 @@ buildPythonPackage rec { pname = "es-client"; - version = "8.12.4"; + version = "8.12.5"; pyproject = true; disabled = pythonOlder "3.7"; @@ -29,7 +29,7 @@ buildPythonPackage rec { owner = "untergeek"; repo = "es_client"; rev = "refs/tags/v${version}"; - hash = "sha256-IjpnukZRDpflk/lh9aSyeuoj/bzZD0jiS1prBKkZwLk="; + hash = "sha256-gaeNIxHnNulUOGhYHf9dIgBSh2rJIdsYdpPT8OTyEdg="; }; pythonRelaxDeps = true; diff --git a/pkgs/development/python-modules/flake8-bugbear/default.nix b/pkgs/development/python-modules/flake8-bugbear/default.nix index 841aac2be571..74319971e9a2 100644 --- a/pkgs/development/python-modules/flake8-bugbear/default.nix +++ b/pkgs/development/python-modules/flake8-bugbear/default.nix @@ -11,7 +11,7 @@ buildPythonPackage rec { pname = "flake8-bugbear"; - version = "24.1.17"; + version = "24.2.6"; format = "setuptools"; disabled = pythonOlder "3.7"; @@ -20,7 +20,7 @@ buildPythonPackage rec { owner = "PyCQA"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-dkegdW+yTZVmtDJDo67dSkLvEFaqvOw17FpZA4JgHN0="; + hash = "sha256-9GuHgRCwHD7YP0XdoFip9rWyPtZtVme+c+nHjvBrB8k="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/google-cloud-asset/default.nix b/pkgs/development/python-modules/google-cloud-asset/default.nix index 4d090d6e738e..ab2ae150eb3d 100644 --- a/pkgs/development/python-modules/google-cloud-asset/default.nix +++ b/pkgs/development/python-modules/google-cloud-asset/default.nix @@ -19,14 +19,14 @@ buildPythonPackage rec { pname = "google-cloud-asset"; - version = "3.24.0"; + version = "3.24.1"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-A9Ov5a6lpcJ+6diVEjFlLKMwROuSKO/lZOuGxN6Nn7U="; + hash = "sha256-aNTCDqj/0/qm4gwZrIKrn2yhgKshv1XwGlHd4zhzMgI="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/google-cloud-dataproc/default.nix b/pkgs/development/python-modules/google-cloud-dataproc/default.nix index 41c8122f9857..b481bff3f750 100644 --- a/pkgs/development/python-modules/google-cloud-dataproc/default.nix +++ b/pkgs/development/python-modules/google-cloud-dataproc/default.nix @@ -15,14 +15,14 @@ buildPythonPackage rec { pname = "google-cloud-dataproc"; - version = "5.9.0"; + version = "5.9.1"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-flH5yQBbxfG8sjYnFx3pzWJGpEd1EYpIzGMoYSgKdt8="; + hash = "sha256-qDc6E6d6hIHgRBNDGUHaJ7ROP24xDUXK1rkXTX187g0="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/google-cloud-redis/default.nix b/pkgs/development/python-modules/google-cloud-redis/default.nix index 451535149511..351acb618101 100644 --- a/pkgs/development/python-modules/google-cloud-redis/default.nix +++ b/pkgs/development/python-modules/google-cloud-redis/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "google-cloud-redis"; - version = "2.15.0"; + version = "2.15.1"; pyproject = true; disabled = pythonOlder "3.7"; src = fetchPypi { inherit pname version; - hash = "sha256-EyThUipPk96q5TuJDMKugFSGXDdWi0vOH5EzP2zzcyI="; + hash = "sha256-RTDYMmkRjkP5VhN74Adlvm/vpqXd9lnu3ckjmItIi+Y="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/html-sanitizer/default.nix b/pkgs/development/python-modules/html-sanitizer/default.nix index c640ee8a106d..c859952214ef 100644 --- a/pkgs/development/python-modules/html-sanitizer/default.nix +++ b/pkgs/development/python-modules/html-sanitizer/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "html-sanitizer"; - version = "2.2"; + version = "2.3"; format = "pyproject"; disabled = pythonOlder "3.7"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "matthiask"; repo = pname; rev = "refs/tags/${version}"; - hash = "sha256-WU5wdTvCzYEw1eiuTLcFImvydzxWANfmDQCmEgyU9h4="; + hash = "sha256-lQ8E3hdHX0YR3HJUTz1pVBegLo4lhvyiylLVFMDY1+s="; }; nativeBuildInputs = [ diff --git a/pkgs/development/python-modules/meteoalertapi/default.nix b/pkgs/development/python-modules/meteoalertapi/default.nix index 15d14934c5aa..9510ae01ffa5 100644 --- a/pkgs/development/python-modules/meteoalertapi/default.nix +++ b/pkgs/development/python-modules/meteoalertapi/default.nix @@ -8,15 +8,15 @@ buildPythonPackage rec { pname = "meteoalertapi"; - version = "0.3.0"; + version = "0.3.1"; format = "setuptools"; disabled = pythonOlder "3.7"; src = fetchFromGitHub { owner = "rolfberkenbosch"; repo = "meteoalert-api"; - rev = "v${version}"; - hash = "sha256-uB2nza9fj7vOWixL4WEQX1N3i2Y80zQPM3x1+gRtg+w="; + rev = "refs/tags/v${version}"; + hash = "sha256-Imb4DVcNB3QiVSCLCI+eKpfl73aMn4NIItQVf7p0H+E="; }; propagatedBuildInputs = [ diff --git a/pkgs/development/python-modules/spyder/default.nix b/pkgs/development/python-modules/spyder/default.nix index a70ef94409f7..47010b63a7c1 100644 --- a/pkgs/development/python-modules/spyder/default.nix +++ b/pkgs/development/python-modules/spyder/default.nix @@ -41,14 +41,14 @@ buildPythonPackage rec { pname = "spyder"; - version = "5.5.0"; + version = "5.5.1"; format = "setuptools"; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-zjQmUmkqwtXNnZKssNpl24p4FQscZKGiiJj5iwYl2UM="; + hash = "sha256-+z8Jj0eA/mYH1r8ZQUyYUFMk7h1mBxjoTD5YZk0cH0k="; }; patches = [ diff --git a/pkgs/development/python-modules/tensorstore/default.nix b/pkgs/development/python-modules/tensorstore/default.nix index 5e8631062394..7ad175d70077 100644 --- a/pkgs/development/python-modules/tensorstore/default.nix +++ b/pkgs/development/python-modules/tensorstore/default.nix @@ -2,6 +2,7 @@ , buildPythonPackage , fetchPypi , lib +, ml-dtypes , numpy , python , stdenv @@ -14,15 +15,17 @@ let "aarch64-darwin" = "macosx_11_0_arm64"; }; hashes = { - "310-x86_64-linux" = "sha256-Zuy2zBLV950CMbdtpLNpIWqnXHw2jkjrZG48eGtm42w="; - "311-x86_64-linux" = "sha256-Bg5j8QB5z8Ju4bEQsZDojJHTJ4UoQF1pkd4ma83Sc/s="; - "310-aarch64-darwin" = "sha256-6Tta4ru1TnobFa4FXWz8fm9rAxF0G09Y2Pj/KaQPVnE="; - "311-aarch64-darwin" = "sha256-Sb0tv9ZPQJ4n9b0ybpjJWpreQPZvSC5Sd7CXuUwHCn0="; + "310-x86_64-linux" = "sha256-1b6w9wgT6fffTTpJ3MxdPSrFD7Xaby6prQYFljVn4x4="; + "311-x86_64-linux" = "sha256-8+HlzaxH30gB5N+ZKR0Oq+yswhq5gjiSF9jVsg8U22E="; + "312-x86_64-linux" = "sha256-e8iEQzB4D3RSXgrcPC4me/vsFKoXf1QFNZfQ7968zQE="; + "310-aarch64-darwin" = "sha256-2C60yJk/Pbx2woV7hzEmWGzNKWWnySDfTPm247PWIRA="; + "311-aarch64-darwin" = "sha256-rdLB7l/8ZYjV589qKtORiyu1rC7W30wzrsz1uihNRpk="; + "312-aarch64-darwin" = "sha256-DpbYMIbqceQeiL7PYwnvn9jLtv8EmfHXmxvPfZCw914="; }; in buildPythonPackage rec { pname = "tensorstore"; - version = "0.1.40"; + version = "0.1.53"; format = "wheel"; # The source build involves some wonky Bazel stuff. @@ -38,7 +41,10 @@ buildPythonPackage rec { nativeBuildInputs = lib.optionals stdenv.isLinux [ autoPatchelfHook ]; - propagatedBuildInputs = [ numpy ]; + propagatedBuildInputs = [ + ml-dtypes + numpy + ]; pythonImportsCheck = [ "tensorstore" ]; diff --git a/pkgs/development/python-modules/tesla-fleet-api/default.nix b/pkgs/development/python-modules/tesla-fleet-api/default.nix index b1ca582ff829..d023ae54f7fe 100644 --- a/pkgs/development/python-modules/tesla-fleet-api/default.nix +++ b/pkgs/development/python-modules/tesla-fleet-api/default.nix @@ -8,7 +8,7 @@ buildPythonPackage rec { pname = "tesla-fleet-api"; - version = "0.2.7"; + version = "0.4.0"; pyproject = true; disabled = pythonOlder "3.10"; @@ -17,7 +17,7 @@ buildPythonPackage rec { owner = "Teslemetry"; repo = "python-tesla-fleet-api"; rev = "refs/tags/v${version}"; - hash = "sha256-yYvC53uBAiLP009HdXdy+FM+tGc5CLQ8OFwP//Zk488="; + hash = "sha256-XAgZxvN6j3p607Yox5omDDOm3n8YSJFAmui8+5jqY5c="; }; nativeBuildInputs = [ diff --git a/pkgs/development/tools/continuous-integration/github-runner/default.nix b/pkgs/development/tools/continuous-integration/github-runner/default.nix index 04dde366d8ad..69b018eaea3c 100644 --- a/pkgs/development/tools/continuous-integration/github-runner/default.nix +++ b/pkgs/development/tools/continuous-integration/github-runner/default.nix @@ -23,13 +23,13 @@ assert builtins.all (x: builtins.elem x [ "node20" ]) nodeRuntimes; buildDotnetModule rec { pname = "github-runner"; - version = "2.312.0"; + version = "2.313.0"; src = fetchFromGitHub { owner = "actions"; repo = "runner"; rev = "v${version}"; - hash = "sha256-gSxo73o/5B6RsR5fNQ8pCv/adXrZdVPwFK4Sjwa3ZIQ="; + hash = "sha256-0CclkbJ8AfffdfVNXacnpgFOS+ONk6eP1LTyFa12xU4="; leaveDotGit = true; postFetch = '' git -C $out rev-parse --short HEAD > $out/.git-revision diff --git a/pkgs/development/tools/misc/stlink/default.nix b/pkgs/development/tools/misc/stlink/default.nix index 850d0ea21bf8..cb996bcd5729 100644 --- a/pkgs/development/tools/misc/stlink/default.nix +++ b/pkgs/development/tools/misc/stlink/default.nix @@ -19,13 +19,13 @@ let in stdenv.mkDerivation rec { pname = "stlink"; - version = "1.7.0"; + version = "1.8.0"; src = fetchFromGitHub { owner = "stlink-org"; repo = "stlink"; rev = "v${version}"; - sha256 = "03xypffpbp4imrczbxmq69vgkr7mbp0ps9dk815br5wwlz6vgygl"; + sha256 = "sha256-hlFI2xpZ4ldMcxZbg/T5/4JuFFdO9THLcU0DQKSFqrw="; }; patches = [ @@ -55,7 +55,8 @@ in stdenv.mkDerivation rec { meta = with lib; { description = "In-circuit debug and programming for ST-Link devices"; license = licenses.bsd3; - platforms = platforms.unix; + # upstream says windows, linux/unix but dropped support for macOS in 1.8.0 + platforms = platforms.linux; # not sure how to express unix without darwin maintainers = [ maintainers.bjornfor maintainers.rongcuid ]; }; } diff --git a/pkgs/development/tools/opcr-policy/default.nix b/pkgs/development/tools/opcr-policy/default.nix index ecd31806cb6d..e1900a1f84f3 100644 --- a/pkgs/development/tools/opcr-policy/default.nix +++ b/pkgs/development/tools/opcr-policy/default.nix @@ -5,15 +5,15 @@ buildGoModule rec { pname = "opcr-policy"; - version = "0.2.8"; + version = "0.2.9"; src = fetchFromGitHub { owner = "opcr-io"; repo = "policy"; rev = "v${version}"; - sha256 = "sha256-JNWI7PCGuZ3uLqglrR08nOumpbX2CxyVBYbUJJwptoU="; + sha256 = "sha256-3ubbCPliBFe+sOQxAkQr4bJJiMvbDwDaJO/hOa88P5w="; }; - vendorHash = "sha256-S4HFIuWWb+7QhwUg28Kt5IEH3j82tzJv8K5EqSYq1eA="; + vendorHash = "sha256-oxcyKVdiTJYypgrBmH1poWc21xDyTBHk781TbA7i2gc="; ldflags = [ "-s" "-w" "-X github.com/opcr-io/policy/pkg/version.ver=${version}" ]; diff --git a/pkgs/development/tools/reindeer/default.nix b/pkgs/development/tools/reindeer/default.nix index eaf4b1858814..8124d5d12ccf 100644 --- a/pkgs/development/tools/reindeer/default.nix +++ b/pkgs/development/tools/reindeer/default.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "reindeer"; - version = "unstable-2024-01-30"; + version = "unstable-2024-02-03"; src = fetchFromGitHub { owner = "facebookincubator"; repo = pname; - rev = "2fe0af4d3b637d3dfff41d26623a4596a7b5fdb0"; - sha256 = "sha256-MUMqM6BZUECxdOkBdeNMEE88gJumKI/ODo+1hmmrCHY="; + rev = "8dd5629ef78d359fd8d3527157b0375762f22b1e"; + sha256 = "sha256-9WmhP8CyjwohlltfmUn5m29CmBucIH+XrfVjIJX7dS8="; }; - cargoSha256 = "sha256-fquvUq9MjC7J24wuZR+voUkm3F7eMy1ELxMuELlQaus="; + cargoSha256 = "sha256-W9YA9OZu71/bSx3EwMeueVQSTExeep+UKGYCD8c4yhc="; nativeBuildInputs = [ pkg-config ]; buildInputs = diff --git a/pkgs/development/tools/skaffold/default.nix b/pkgs/development/tools/skaffold/default.nix index cd6250ff3c72..3d98bf472770 100644 --- a/pkgs/development/tools/skaffold/default.nix +++ b/pkgs/development/tools/skaffold/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "skaffold"; - version = "2.10.0"; + version = "2.10.1"; src = fetchFromGitHub { owner = "GoogleContainerTools"; repo = "skaffold"; rev = "v${version}"; - hash = "sha256-onJ/WEGsDhIfM+y3OeVbWjZSYHc7oWlkbLCrbLm8JZk="; + hash = "sha256-NNiWiTY5AHMcGxDND5QwlucYVrp94C92qtMNLrVm2tQ="; }; vendorHash = null; diff --git a/pkgs/development/tools/turso-cli/default.nix b/pkgs/development/tools/turso-cli/default.nix index 09f96c2d183a..155360affbf7 100644 --- a/pkgs/development/tools/turso-cli/default.nix +++ b/pkgs/development/tools/turso-cli/default.nix @@ -8,13 +8,13 @@ }: buildGoModule rec { pname = "turso-cli"; - version = "0.88.3"; + version = "0.88.6"; src = fetchFromGitHub { owner = "tursodatabase"; repo = "turso-cli"; rev = "v${version}"; - hash = "sha256-tPeoLGYJRMXFVI09fupspdQMSMjF2Trdo2GlkoWs7wA="; + hash = "sha256-u8TZFgeDeZVRcP4ICgUrI4qhqlL1lhTSVDmWK3Ozku4="; }; vendorHash = "sha256-rTeW2RQhcdwJTAMQELm4cdObJbm8gk/I2Qz3Wk3+zpI="; diff --git a/pkgs/development/tools/upbound/default.nix b/pkgs/development/tools/upbound/default.nix index cfb667d55842..c1ac7b1a19b0 100644 --- a/pkgs/development/tools/upbound/default.nix +++ b/pkgs/development/tools/upbound/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "upbound"; - version = "0.24.0"; + version = "0.24.1"; src = fetchFromGitHub { owner = pname; repo = "up"; rev = "v${version}"; - sha256 = "sha256-AtaO4O9UbA44OnZl5ARQkyPHoBYnuwdFd91DEZPN+Co="; + sha256 = "sha256-1WSkNL1XpgnkWeL4tDiOxoKX6N5LYepD3DU0109pWC4="; }; vendorHash = "sha256-jHVwI5fQbS/FhRptRXtNezG1djaZKHJgpPJfuEH/zO0="; diff --git a/pkgs/games/starsector/default.nix b/pkgs/games/starsector/default.nix index 2dbb0ed54791..f40ae8857366 100644 --- a/pkgs/games/starsector/default.nix +++ b/pkgs/games/starsector/default.nix @@ -1,6 +1,5 @@ { lib , fetchzip -, libXxf86vm , libGL , makeWrapper , openal @@ -48,7 +47,8 @@ stdenv.mkDerivation rec { cp -r ./* $out/share/starsector mkdir -p $out/share/icons/hicolor/64x64/apps - ln -s $out/graphics/ui/s_icon64.png $out/share/icons/hicolor/64x64/apps/starsector.png + ln -s $out/share/starsector/graphics/ui/s_icon64.png \ + $out/share/icons/hicolor/64x64/apps/starsector.png wrapProgram $out/share/starsector/starsector.sh \ --prefix PATH : ${lib.makeBinPath [ openjdk xorg.xrandr ]} \ @@ -71,14 +71,6 @@ stdenv.mkDerivation rec { --replace "-XX:+CompilerThreadHintNoPreempt" "-XX:+UnlockDiagnosticVMOptions -XX:-BytecodeVerificationRemote -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:+CMSConcurrentMTEnabled -XX:+DisableExplicitGC" ''; - meta = with lib; { - description = "Open-world single-player space-combat, roleplaying, exploration, and economic game"; - homepage = "https://fractalsoftworks.com"; - sourceProvenance = with sourceTypes; [ binaryBytecode ]; - license = licenses.unfree; - maintainers = with maintainers; [ bbigras rafaelrc ]; - }; - passthru.updateScript = writeScript "starsector-update-script" '' #!/usr/bin/env nix-shell #!nix-shell -i bash -p curl gnugrep common-updater-scripts @@ -86,4 +78,12 @@ stdenv.mkDerivation rec { version=$(curl -s https://fractalsoftworks.com/preorder/ | grep -oP "https://f005.backblazeb2.com/file/fractalsoftworks/release/starsector_linux-\K.*?(?=\.zip)" | head -1) update-source-version ${pname} "$version" --file=./pkgs/games/starsector/default.nix ''; + + meta = with lib; { + description = "Open-world single-player space-combat, roleplaying, exploration, and economic game"; + homepage = "https://fractalsoftworks.com"; + sourceProvenance = with sourceTypes; [ binaryBytecode ]; + license = licenses.unfree; + maintainers = with maintainers; [ bbigras rafaelrc ]; + }; } diff --git a/pkgs/servers/home-assistant/default.nix b/pkgs/servers/home-assistant/default.nix index 9585fa8c600b..df3ed66a40cf 100644 --- a/pkgs/servers/home-assistant/default.nix +++ b/pkgs/servers/home-assistant/default.nix @@ -140,6 +140,16 @@ let }; }); + anova-wifi = super.anova-wifi.overridePythonAttrs (old: rec { + version = "0.10.3"; + src = fetchFromGitHub { + owner = "Lash-L"; + repo = "anova_wifi"; + rev = "refs/tags/v${version}"; + hash = "sha256-tCmvp29KSCkc+g0w0odcB7vGjtDx6evac7XsHEF0syM="; + }; + }); + astral = super.astral.overridePythonAttrs (oldAttrs: rec { pname = "astral"; version = "2.2"; diff --git a/pkgs/servers/pocketbase/default.nix b/pkgs/servers/pocketbase/default.nix index 8d8752f499e6..43e173c90244 100644 --- a/pkgs/servers/pocketbase/default.nix +++ b/pkgs/servers/pocketbase/default.nix @@ -6,13 +6,13 @@ buildGoModule rec { pname = "pocketbase"; - version = "0.21.1"; + version = "0.21.2"; src = fetchFromGitHub { owner = "pocketbase"; repo = "pocketbase"; rev = "v${version}"; - hash = "sha256-f8lqDYu2tlwp+/00QaHfXvUO3CZuDWMpdVBrUW3bbio="; + hash = "sha256-EOj+x6n0ww6al57X4mDM4T9/3Za5w8N/Bno5Trlb5dY="; }; vendorHash = "sha256-u7VgZkv9Ajtra9ikeIxJRLZleH+rzs1g2SZO9zj/bes="; diff --git a/pkgs/servers/sickbeard/sickgear.nix b/pkgs/servers/sickbeard/sickgear.nix index a900c6d69695..1081b4b1b0d2 100644 --- a/pkgs/servers/sickbeard/sickgear.nix +++ b/pkgs/servers/sickbeard/sickgear.nix @@ -4,13 +4,13 @@ let pythonEnv = python3.withPackages(ps: with ps; [ cheetah3 lxml ]); in stdenv.mkDerivation rec { pname = "sickgear"; - version = "3.30.8"; + version = "3.30.9"; src = fetchFromGitHub { owner = "SickGear"; repo = "SickGear"; rev = "release_${version}"; - hash = "sha256-U/lzTzvvMdnid2AHJ6fK3GHVqsr1h7X330RkR4jNTuQ="; + hash = "sha256-Ik+A7CqSRsXPzqbgmwpam7v2hyj6BweyWJnF5ix/JNg="; }; patches = [ diff --git a/pkgs/test/nixpkgs-check-by-name/src/eval.nix b/pkgs/test/nixpkgs-check-by-name/src/eval.nix index 7179951d41cf..ab1c41e0b145 100644 --- a/pkgs/test/nixpkgs-check-by-name/src/eval.nix +++ b/pkgs/test/nixpkgs-check-by-name/src/eval.nix @@ -1,5 +1,5 @@ -# Takes a path to nixpkgs and a path to the json-encoded list of attributes to check. -# Returns an value containing information on each requested attribute, +# Takes a path to nixpkgs and a path to the json-encoded list of `pkgs/by-name` attributes. +# Returns a value containing information on all Nixpkgs attributes # which is decoded on the Rust side. # See ./eval.rs for the meaning of the returned values { @@ -9,33 +9,28 @@ let attrs = builtins.fromJSON (builtins.readFile attrsPath); - nixpkgsPathLength = builtins.stringLength (toString nixpkgsPath) + 1; - removeNixpkgsPrefix = builtins.substring nixpkgsPathLength (-1); - - # We need access to the `callPackage` arguments of each attribute. - # The only way to do so is to override `callPackage` with our own version that adds this information to the result, - # and then try to access this information. + # We need to check whether attributes are defined manually e.g. in + # `all-packages.nix`, automatically by the `pkgs/by-name` overlay, or + # neither. The only way to do so is to override `callPackage` and + # `_internalCallByNamePackageFile` with our own version that adds this + # information to the result, and then try to access it. overlay = final: prev: { - # Information for attributes defined using `callPackage` + # Adds information to each attribute about whether it's manually defined using `callPackage` callPackage = fn: args: addVariantInfo (prev.callPackage fn args) { - Manual = { - path = - if builtins.isPath fn then - removeNixpkgsPrefix (toString fn) - else - null; - empty_arg = - args == { }; - }; + # This is a manual definition of the attribute, and it's a callPackage, specifically a semantic callPackage + ManualDefinition.is_semantic_call_package = true; }; - # Information for attributes that are auto-called from pkgs/by-name. - # This internal attribute is only used by pkgs/by-name + # Adds information to each attribute about whether it's automatically + # defined by the `pkgs/by-name` overlay. This internal attribute is only + # used by that overlay. + # This overrides the above `callPackage` information (we don't need that + # one, since `pkgs/by-name` always uses `callPackage` underneath. _internalCallByNamePackageFile = file: addVariantInfo (prev._internalCallByNamePackageFile file) { - Auto = null; + AutoDefinition = null; }; }; @@ -50,7 +45,7 @@ let else # It's very rare that callPackage doesn't return an attribute set, but it can occur. # In such a case we can't really return anything sensible that would include the info, - # so just don't return the info and let the consumer handle it. + # so just don't return the value directly and treat it as if it wasn't a callPackage. value; pkgs = import nixpkgsPath { @@ -62,30 +57,33 @@ let system = "x86_64-linux"; }; - attrInfo = name: value: - if ! builtins.isAttrs value then - { - NonAttributeSet = null; - } - else if ! value ? _callPackageVariant then - { - NonCallPackage = null; - } - else - { - CallPackage = { - call_package_variant = value._callPackageVariant; - is_derivation = pkgs.lib.isDerivation value; - location = builtins.unsafeGetAttrPos name pkgs; + # See AttributeInfo in ./eval.rs for the meaning of this + attrInfo = name: value: { + location = builtins.unsafeGetAttrPos name pkgs; + attribute_variant = + if ! builtins.isAttrs value then + { NonAttributeSet = null; } + else + { + AttributeSet = { + is_derivation = pkgs.lib.isDerivation value; + definition_variant = + if ! value ? _callPackageVariant then + { ManualDefinition.is_semantic_call_package = false; } + else + value._callPackageVariant; + }; }; - }; + }; + # Information on all attributes that are in pkgs/by-name. byNameAttrs = builtins.listToAttrs (map (name: { inherit name; value.ByName = if ! pkgs ? ${name} then { Missing = null; } else + # Evaluation failures are not allowed, so don't try to catch them { Existing = attrInfo name pkgs.${name}; }; }) attrs); @@ -93,6 +91,8 @@ let # We need this to enforce pkgs/by-name for new packages nonByNameAttrs = builtins.mapAttrs (name: value: let + # Packages outside `pkgs/by-name` often fail evaluation, + # so we need to handle that output = attrInfo name value; result = builtins.tryEval (builtins.deepSeq output null); in diff --git a/pkgs/test/nixpkgs-check-by-name/src/eval.rs b/pkgs/test/nixpkgs-check-by-name/src/eval.rs index cb49c3acbef3..e90a95533144 100644 --- a/pkgs/test/nixpkgs-check-by-name/src/eval.rs +++ b/pkgs/test/nixpkgs-check-by-name/src/eval.rs @@ -37,24 +37,13 @@ enum ByNameAttribute { } #[derive(Deserialize)] -enum AttributeInfo { - /// The attribute exists, but its value isn't an attribute set - NonAttributeSet, - /// The attribute exists, but its value isn't defined using callPackage - NonCallPackage, - /// The attribute exists and its value is an attribute set - CallPackage(CallPackageInfo), -} - -#[derive(Deserialize)] -struct CallPackageInfo { - call_package_variant: CallPackageVariant, - /// Whether the attribute is a derivation (`lib.isDerivation`) - is_derivation: bool, +struct AttributeInfo { + /// The location of the attribute as returned by `builtins.unsafeGetAttrPos` location: Option<Location>, + attribute_variant: AttributeVariant, } -/// The structure returned by `builtins.unsafeGetAttrPos` +/// The structure returned by a successful `builtins.unsafeGetAttrPos` #[derive(Deserialize, Clone, Debug)] struct Location { pub file: PathBuf, @@ -63,17 +52,28 @@ struct Location { } #[derive(Deserialize)] -enum CallPackageVariant { - /// The attribute is auto-called as pkgs.callPackage using pkgs/by-name, - /// and it is not overridden by a definition in all-packages.nix - Auto, - /// The attribute is defined as a pkgs.callPackage <path> <args>, - /// and overridden by all-packages.nix - Manual { - /// The <path> argument or None if it's not a path - path: Option<PathBuf>, - /// true if <args> is { } - empty_arg: bool, +pub enum AttributeVariant { + /// The attribute is not an attribute set, we're limited in the amount of information we can get + /// from it (though it's obviously not a derivation) + NonAttributeSet, + AttributeSet { + /// Whether the attribute is a derivation (`lib.isDerivation`) + is_derivation: bool, + /// The type of callPackage + definition_variant: DefinitionVariant, + }, +} + +#[derive(Deserialize)] +pub enum DefinitionVariant { + /// An automatic definition by the `pkgs/by-name` overlay + /// Though it's detected using the internal _internalCallByNamePackageFile attribute, + /// which can in theory also be used by other code + AutoDefinition, + /// A manual definition of the attribute, typically in `all-packages.nix` + ManualDefinition { + /// Whether the attribute is defined as `pkgs.callPackage ...` or something else. + is_semantic_call_package: bool, }, } @@ -165,9 +165,12 @@ pub fn check_values( nix_file_store, non_by_name_attribute, )?, - Attribute::ByName(by_name_attribute) => { - by_name(&attribute_name, by_name_attribute) - } + Attribute::ByName(by_name_attribute) => by_name( + nix_file_store, + nixpkgs_path, + &attribute_name, + by_name_attribute, + )?, }; Ok::<_, anyhow::Error>(check_result.map(|value| (attribute_name.clone(), value))) }) @@ -183,78 +186,168 @@ pub fn check_values( /// Handles the evaluation result for an attribute in `pkgs/by-name`, /// turning it into a validation result. fn by_name( + nix_file_store: &mut NixFileStore, + nixpkgs_path: &Path, attribute_name: &str, by_name_attribute: ByNameAttribute, -) -> validation::Validation<ratchet::Package> { +) -> validation::Result<ratchet::Package> { use ratchet::RatchetState::*; - use AttributeInfo::*; use ByNameAttribute::*; - use CallPackageVariant::*; let relative_package_file = structure::relative_file_for_package(attribute_name); + let absolute_package_file = nixpkgs_path.join(&relative_package_file); - match by_name_attribute { - Missing => NixpkgsProblem::UndefinedAttr { - relative_package_file: relative_package_file.to_owned(), - package_name: attribute_name.to_owned(), + // At this point we know that `pkgs/by-name/fo/foo/package.nix` has to exists. + // This match decides whether the attribute `foo` is defined accordingly + // and whether a legacy manual definition could be removed + let manual_definition_result = match by_name_attribute { + // The attribute is missing + Missing => { + // This indicates a bug in the `pkgs/by-name` overlay, because it's supposed to + // automatically defined attributes in `pkgs/by-name` + NixpkgsProblem::UndefinedAttr { + relative_package_file: relative_package_file.to_owned(), + package_name: attribute_name.to_owned(), + } + .into() } - .into(), - Existing(NonAttributeSet) => NixpkgsProblem::NonDerivation { - relative_package_file: relative_package_file.to_owned(), - package_name: attribute_name.to_owned(), + // The attribute exists + Existing(AttributeInfo { + // But it's not an attribute set, which limits the amount of information we can get + // about this attribute (see ./eval.nix) + attribute_variant: AttributeVariant::NonAttributeSet, + location: _location, + }) => { + // The only thing we know is that it's definitely not a derivation, since those are + // always attribute sets. + // + // We can't know whether the attribute is automatically or manually defined for sure, + // and while we could check the location, the error seems clear enough as is. + NixpkgsProblem::NonDerivation { + relative_package_file: relative_package_file.to_owned(), + package_name: attribute_name.to_owned(), + } + .into() } - .into(), - Existing(NonCallPackage) => NixpkgsProblem::WrongCallPackage { - relative_package_file: relative_package_file.to_owned(), - package_name: attribute_name.to_owned(), - } - .into(), - Existing(CallPackage(CallPackageInfo { - is_derivation, - call_package_variant, - .. - })) => { - let check_result = if !is_derivation { + // The attribute exists + Existing(AttributeInfo { + // And it's an attribute set, which allows us to get more information about it + attribute_variant: + AttributeVariant::AttributeSet { + is_derivation, + definition_variant, + }, + location, + }) => { + // Only derivations are allowed in `pkgs/by-name` + let is_derivation_result = if is_derivation { + Success(()) + } else { NixpkgsProblem::NonDerivation { relative_package_file: relative_package_file.to_owned(), package_name: attribute_name.to_owned(), } .into() - } else { - Success(()) }; - check_result.and(match &call_package_variant { - Auto => Success(ratchet::Package { - manual_definition: Tight, - uses_by_name: Tight, - }), - // TODO: Use the call_package_argument_info_at instead/additionally and - // simplify the eval.nix code - Manual { path, empty_arg } => { - let correct_file = if let Some(call_package_path) = path { - relative_package_file == *call_package_path + // If the definition looks correct + let variant_result = match definition_variant { + // An automatic `callPackage` by the `pkgs/by-name` overlay. + // Though this gets detected by checking whether the internal + // `_internalCallByNamePackageFile` was used + DefinitionVariant::AutoDefinition => { + if let Some(_location) = location { + // Such an automatic definition should definitely not have a location + // Having one indicates that somebody is using `_internalCallByNamePackageFile`, + NixpkgsProblem::InternalCallPackageUsed { + attr_name: attribute_name.to_owned(), + } + .into() } else { - false - }; + Success(Tight) + } + } + // The attribute is manually defined, e.g. in `all-packages.nix`. + // This means we need to enforce it to look like this: + // callPackage ../pkgs/by-name/fo/foo/package.nix { ... } + DefinitionVariant::ManualDefinition { + is_semantic_call_package, + } => { + // We should expect manual definitions to have a location, otherwise we can't + // enforce the expected format + if let Some(location) = location { + // Parse the Nix file in the location and figure out whether it's an + // attribute definition of the form `= callPackage <arg1> <arg2>`, + // returning the arguments if so. + let optional_syntactic_call_package = nix_file_store + .get(&location.file)? + .call_package_argument_info_at( + location.line, + location.column, + // We're passing `pkgs/by-name/fo/foo/package.nix` here, which causes + // the function to verify that `<arg1>` is the same path, + // making `syntactic_call_package.relative_path` end up as `""` + // TODO: This is confusing and should be improved + &absolute_package_file, + )?; - if correct_file { - Success(ratchet::Package { - // Empty arguments for non-auto-called packages are not allowed anymore. - manual_definition: if *empty_arg { Loose(()) } else { Tight }, - uses_by_name: Tight, - }) + // At this point, we completed two different checks for whether it's a + // `callPackage` + match (is_semantic_call_package, optional_syntactic_call_package) { + // Something like `<attr> = { ... }` + // or a `pkgs.callPackage` but with the wrong file + (false, None) + // Something like `<attr> = pythonPackages.callPackage ./pkgs/by-name/...` + | (false, Some(_)) + // Something like `<attr> = bar` where `bar = pkgs.callPackage ...` + // or a `callPackage` but with the wrong file + | (true, None) => { + // All of these are not of the expected form, so error out + // TODO: Make error more specific, don't lump everything together + NixpkgsProblem::WrongCallPackage { + relative_package_file: relative_package_file.to_owned(), + package_name: attribute_name.to_owned(), + }.into() + } + // Something like `<attr> = pkgs.callPackage ./pkgs/by-name/...`, + // with the correct file + (true, Some(syntactic_call_package)) => { + Success( + // Manual definitions with empty arguments are not allowed + // anymore + if syntactic_call_package.empty_arg { + Loose(()) + } else { + Tight + } + ) + } + } } else { - NixpkgsProblem::WrongCallPackage { - relative_package_file: relative_package_file.to_owned(), - package_name: attribute_name.to_owned(), + // If manual definitions don't have a location, it's likely `mapAttrs`'d + // over, e.g. if it's defined in aliases.nix. + // We can't verify whether its of the expected `callPackage`, so error out + NixpkgsProblem::CannotDetermineAttributeLocation { + attr_name: attribute_name.to_owned(), } .into() } } - }) + }; + + // Independently report problems about whether it's a derivation and the callPackage variant + is_derivation_result.and(variant_result) } - } + }; + Ok( + // Packages being checked in this function are _always_ already defined in `pkgs/by-name`, + // so instead of repeating ourselves all the time to define `uses_by_name`, just set it + // once at the end with a map + manual_definition_result.map(|manual_definition| ratchet::Package { + manual_definition, + uses_by_name: Tight, + }), + ) } /// Handles the evaluation result for an attribute _not_ in `pkgs/by-name`, @@ -265,113 +358,117 @@ fn handle_non_by_name_attribute( non_by_name_attribute: NonByNameAttribute, ) -> validation::Result<ratchet::Package> { use ratchet::RatchetState::*; - use AttributeInfo::*; - use CallPackageVariant::*; use NonByNameAttribute::*; - Ok(match non_by_name_attribute { - // The attribute succeeds evaluation and is NOT defined in pkgs/by-name - EvalSuccess(attribute_info) => { - let uses_by_name = match attribute_info { - // In these cases the package doesn't qualify for being in pkgs/by-name, - // so the UsesByName ratchet is already as tight as it can be - NonAttributeSet => Success(NonApplicable), - NonCallPackage => Success(NonApplicable), - // This is the case when the `pkgs/by-name`-internal _internalCallByNamePackageFile - // is used for a package outside `pkgs/by-name` - CallPackage(CallPackageInfo { - call_package_variant: Auto, - .. - }) => { - // With the current detection mechanism, this also triggers for aliases - // to pkgs/by-name packages, and there's no good method of - // distinguishing alias vs non-alias. - // Using `config.allowAliases = false` at least currently doesn't work - // because there's nothing preventing people from defining aliases that - // are present even with that disabled. - // In the future we could kind of abuse this behavior to have better - // enforcement of conditional aliases, but for now we just need to not - // give an error. - Success(NonApplicable) - } - // Only derivations can be in pkgs/by-name, - // so this attribute doesn't qualify - CallPackage(CallPackageInfo { - is_derivation: false, - .. - }) => Success(NonApplicable), - // A location of None indicates something weird, we can't really know where - // this attribute is defined, probably an alias - CallPackage(CallPackageInfo { location: None, .. }) => Success(Tight), - // The case of an attribute that qualifies: - // - Uses callPackage - // - Is a derivation - CallPackage(CallPackageInfo { - is_derivation: true, - call_package_variant: Manual { .. }, - location: Some(location), - }) => - // We'll use the attribute's location to parse the file that defines it - { - match nix_file_store - .get(&location.file)? - .call_package_argument_info_at( - location.line, - location.column, - nixpkgs_path, - )? { - // If the definition is not of the form `<attr> = callPackage <arg1> <arg2>;`, - // it's generally not possible to migrate to `pkgs/by-name` - None => Success(NonApplicable), - Some(call_package_argument_info) => { - if let Some(ref rel_path) = call_package_argument_info.relative_path { - if rel_path.starts_with(utils::BASE_SUBPATH) { - // Package variants of by-name packages are explicitly allowed according to RFC 140 - // https://github.com/NixOS/rfcs/blob/master/rfcs/0140-simple-package-paths.md#package-variants: - // - // foo-variant = callPackage ../by-name/fo/foo/package.nix { - // someFlag = true; - // } - // - // While such definitions could be moved to `pkgs/by-name` by using - // `.override { someFlag = true; }` instead, this changes the semantics in - // relation with overlays. - Success(NonApplicable) - } else { - Success(Loose(call_package_argument_info)) - } - } else { - Success(Loose(call_package_argument_info)) - } - } + // The ratchet state whether this attribute uses `pkgs/by-name`. + // This is never `Tight`, because we only either: + // - Know that the attribute _could_ be migrated to `pkgs/by-name`, which is `Loose` + // - Or we're unsure, in which case we use NonApplicable + let uses_by_name = + // This is a big ol' match on various properties of the attribute + + // First, it needs to succeed evaluation. We can't know whether an attribute could be + // migrated to `pkgs/by-name` if it doesn't evaluate, since we need to check that it's a + // derivation. + // + // This only has the minor negative effect that if a PR that breaks evaluation + // gets merged, fixing those failures won't force anything into `pkgs/by-name`. + // + // For now this isn't our problem, but in the future we + // might have another check to enforce that evaluation must not be broken. + // + // The alternative of assuming that failing attributes would have been fit for `pkgs/by-name` + // has the problem that if a package evaluation gets broken temporarily, + // fixing it requires a move to pkgs/by-name, which could happen more + // often and isn't really justified. + if let EvalSuccess(AttributeInfo { + // We're only interested in attributes that are attribute sets (which includes + // derivations). Anything else can't be in `pkgs/by-name`. + attribute_variant: AttributeVariant::AttributeSet { + // Indeed, we only care about derivations, non-derivation attribute sets can't be + // in `pkgs/by-name` + is_derivation: true, + // Of the two definition variants, really only the manual one makes sense here. + // Special cases are: + // - Manual aliases to auto-called packages are not treated as manual definitions, + // due to limitations in the semantic callPackage detection. So those should be + // ignored. + // - Manual definitions using the internal _internalCallByNamePackageFile are + // not treated as manual definitions, since _internalCallByNamePackageFile is + // used to detect automatic ones. We can't distinguish from the above case, so we + // just need to ignore this one too, even if that internal attribute should never + // be called manually. + definition_variant: DefinitionVariant::ManualDefinition { is_semantic_call_package } + }, + // We need the location of the manual definition, because otherwise + // we can't figure out whether it's a syntactic callPackage + location: Some(location), + }) = non_by_name_attribute { + + // Parse the Nix file in the location and figure out whether it's an + // attribute definition of the form `= callPackage <arg1> <arg2>`, + // returning the arguments if so. + let optional_syntactic_call_package = nix_file_store + .get(&location.file)? + .call_package_argument_info_at( + location.line, + location.column, + // Passing the Nixpkgs path here both checks that the <arg1> is within Nixpkgs, and + // strips the absolute Nixpkgs path from it, such that + // syntactic_call_package.relative_path is relative to Nixpkgs + nixpkgs_path + )?; + + // At this point, we completed two different checks for whether it's a + // `callPackage` + match (is_semantic_call_package, optional_syntactic_call_package) { + // Something like `<attr> = { }` + (false, None) + // Something like `<attr> = pythonPackages.callPackage ...` + | (false, Some(_)) + // Something like `<attr> = bar` where `bar = pkgs.callPackage ...` + | (true, None) => { + // In all of these cases, it's not possible to migrate the package to `pkgs/by-name` + NonApplicable + } + // Something like `<attr> = pkgs.callPackage ...` + (true, Some(syntactic_call_package)) => { + // It's only possible to migrate such a definitions if.. + match syntactic_call_package.relative_path { + Some(ref rel_path) if rel_path.starts_with(utils::BASE_SUBPATH) => { + // ..the path is not already within `pkgs/by-name` like + // + // foo-variant = callPackage ../by-name/fo/foo/package.nix { + // someFlag = true; + // } + // + // While such definitions could be moved to `pkgs/by-name` by using + // `.override { someFlag = true; }` instead, this changes the semantics in + // relation with overlays, so migration is generally not possible. + // + // See also "package variants" in RFC 140: + // https://github.com/NixOS/rfcs/blob/master/rfcs/0140-simple-package-paths.md#package-variants + NonApplicable + } + _ => { + // Otherwise, the path is outside `pkgs/by-name`, which means it can be + // migrated + Loose(syntactic_call_package) } } - }; - uses_by_name.map(|x| ratchet::Package { - manual_definition: Tight, - uses_by_name: x, - }) - } - EvalFailure => { - // We don't know anything about this attribute really - Success(ratchet::Package { - // We'll assume that we can't remove any manual definitions, which has the - // minimal drawback that if there was a manual definition that could've - // been removed, fixing the package requires removing the definition, no - // big deal, that's a minor edit. - manual_definition: Tight, - - // Regarding whether this attribute could `pkgs/by-name`, we don't really - // know, so return NonApplicable, which has the effect that if a - // package evaluation gets broken temporarily, the fix can remove it from - // pkgs/by-name again. For now this isn't our problem, but in the future we - // might have another check to enforce that evaluation must not be broken. - // The alternative of assuming that it's using `pkgs/by-name` already - // has the problem that if a package evaluation gets broken temporarily, - // fixing it requires a move to pkgs/by-name, which could happen more - // often and isn't really justified. - uses_by_name: NonApplicable, - }) + } } - }) + } else { + // This catches all the cases not matched by the above `if let`, falling back to not being + // able to migrate such attributes + NonApplicable + }; + Ok(Success(ratchet::Package { + // Packages being checked in this function _always_ need a manual definition, because + // they're not using `pkgs/by-name` which would allow avoiding it. + // so instead of repeating ourselves all the time to define `manual_definition`, + // just set it once at the end here + manual_definition: Tight, + uses_by_name, + })) } diff --git a/pkgs/test/nixpkgs-check-by-name/src/nixpkgs_problem.rs b/pkgs/test/nixpkgs-check-by-name/src/nixpkgs_problem.rs index 25e3ef4863e4..e13869adaa41 100644 --- a/pkgs/test/nixpkgs-check-by-name/src/nixpkgs_problem.rs +++ b/pkgs/test/nixpkgs-check-by-name/src/nixpkgs_problem.rs @@ -92,6 +92,12 @@ pub enum NixpkgsProblem { call_package_path: Option<PathBuf>, empty_arg: bool, }, + InternalCallPackageUsed { + attr_name: String, + }, + CannotDetermineAttributeLocation { + attr_name: String, + }, } impl fmt::Display for NixpkgsProblem { @@ -252,6 +258,16 @@ impl fmt::Display for NixpkgsProblem { structure::relative_file_for_package(package_name).display(), ) }, - } + NixpkgsProblem::InternalCallPackageUsed { attr_name } => + write!( + f, + "pkgs.{attr_name}: This attribute is defined using `_internalCallByNamePackageFile`, which is an internal function not intended for manual use.", + ), + NixpkgsProblem::CannotDetermineAttributeLocation { attr_name } => + write!( + f, + "pkgs.{attr_name}: Cannot determine the location of this attribute using `builtins.unsafeGetAttrPos`.", + ), + } } } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/all-packages.nix index 95478a87fb32..3fbe2d5e51dc 100644 --- a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/all-packages.nix +++ b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/all-packages.nix @@ -1,3 +1,4 @@ self: super: { foo = self._internalCallByNamePackageFile ./foo.nix; + bar = self._internalCallByNamePackageFile ./foo.nix; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/expected b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/expected new file mode 100644 index 000000000000..404795ee5c79 --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/expected @@ -0,0 +1 @@ +pkgs.foo: This attribute is defined using `_internalCallByNamePackageFile`, which is an internal function not intended for manual use. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/fo/foo/package.nix new file mode 100644 index 000000000000..a1b92efbbadb --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/internalCallPackage/pkgs/by-name/fo/foo/package.nix @@ -0,0 +1 @@ +{ someDrv }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/all-packages.nix new file mode 100644 index 000000000000..3e0ea20c2281 --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/all-packages.nix @@ -0,0 +1,6 @@ +self: super: { + + bar = (x: x) self.callPackage ./pkgs/by-name/fo/foo/package.nix { someFlag = true; }; + foo = self.bar; + +} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/default.nix new file mode 100644 index 000000000000..861260cdca4b --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/default.nix @@ -0,0 +1 @@ +import <test-nixpkgs> { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/expected b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/expected new file mode 100644 index 000000000000..9df788191ece --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/expected @@ -0,0 +1 @@ +pkgs.foo: This attribute is manually defined (most likely in pkgs/top-level/all-packages.nix), which is only allowed if the definition is of the form `pkgs.callPackage pkgs/by-name/fo/foo/package.nix { ... }` with a non-empty second argument. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/pkgs/by-name/fo/foo/package.nix new file mode 100644 index 000000000000..5ad6ea5e24d6 --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/non-syntactical-callPackage-by-name/pkgs/by-name/fo/foo/package.nix @@ -0,0 +1 @@ +{ someDrv, someFlag }: someDrv diff --git a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/all-packages.nix b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/all-packages.nix new file mode 100644 index 000000000000..3398e974cb6b --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/all-packages.nix @@ -0,0 +1,3 @@ +self: super: builtins.mapAttrs (name: value: value) { + foo = self.someDrv; +} diff --git a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/default.nix b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/default.nix new file mode 100644 index 000000000000..861260cdca4b --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/default.nix @@ -0,0 +1 @@ +import <test-nixpkgs> { root = ./.; } diff --git a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/expected b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/expected new file mode 100644 index 000000000000..2a248c23ab50 --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/expected @@ -0,0 +1 @@ +pkgs.foo: Cannot determine the location of this attribute using `builtins.unsafeGetAttrPos`. diff --git a/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/pkgs/by-name/fo/foo/package.nix b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/pkgs/by-name/fo/foo/package.nix new file mode 100644 index 000000000000..a1b92efbbadb --- /dev/null +++ b/pkgs/test/nixpkgs-check-by-name/tests/unknown-location/pkgs/by-name/fo/foo/package.nix @@ -0,0 +1 @@ +{ someDrv }: someDrv diff --git a/pkgs/tools/misc/gh-dash/default.nix b/pkgs/tools/misc/gh-dash/default.nix index a42d1d165b7f..487f219f6ecc 100644 --- a/pkgs/tools/misc/gh-dash/default.nix +++ b/pkgs/tools/misc/gh-dash/default.nix @@ -7,16 +7,16 @@ buildGoModule rec { pname = "gh-dash"; - version = "3.12.0"; + version = "3.13.0"; src = fetchFromGitHub { owner = "dlvhdr"; repo = "gh-dash"; rev = "v${version}"; - hash = "sha256-ijqEsjBNncrtg1DaVvwH2gxTgB3QOJCF1RxetnPBVII="; + hash = "sha256-JbKDzRpOaiieTPs8rbFUApcPvkYEF0Gq8AHboALCEcA="; }; - vendorHash = "sha256-ezxwUfI8FevfeRmXN4Og9Gfw1GX9noagzWIg6GSPOPc="; + vendorHash = "sha256-+H94d7OBYQ8vh302xyj3LeCuU78OBv7l0nxC9Cg07uk="; ldflags = [ "-s" diff --git a/pkgs/tools/misc/grass-sass/default.nix b/pkgs/tools/misc/grass-sass/default.nix index 83cb03f90c1c..457822052d01 100644 --- a/pkgs/tools/misc/grass-sass/default.nix +++ b/pkgs/tools/misc/grass-sass/default.nix @@ -5,14 +5,14 @@ rustPlatform.buildRustPackage rec { pname = "grass"; - version = "0.13.1"; + version = "0.13.2"; src = fetchCrate { inherit pname version; - hash = "sha256-IJ8kiSvuKR9f3I7TdE263cnQiARzDzfj30uL1PzdZ1s="; + hash = "sha256-JFfNj+IMwIZ+DkaCy3mobSAaq4YphhMpGkx/P33UdJE="; }; - cargoHash = "sha256-WRXoXB/HJkAnUKboCR9Gl2Au/1EivYQhF5rKr7PFe+s="; + cargoHash = "sha256-WzG+yOjxTX2ms2JMpZJYcaKZw0gc9g6/OUe/T7oyK20="; # tests require rust nightly doCheck = false; diff --git a/pkgs/tools/security/cdxgen/default.nix b/pkgs/tools/security/cdxgen/default.nix index b3db7d9fda4a..3b437a70633c 100644 --- a/pkgs/tools/security/cdxgen/default.nix +++ b/pkgs/tools/security/cdxgen/default.nix @@ -5,16 +5,16 @@ buildNpmPackage rec { pname = "cdxgen"; - version = "10.0.4"; + version = "10.0.5"; src = fetchFromGitHub { owner = "AppThreat"; repo = pname; rev = "v${version}"; - sha256 = "sha256-P4F1nCMWvzy65iOYVs7AkC93cftN1Z/BSFsJxOEcQp4="; + sha256 = "sha256-0cRJdhP0OtzaV2NqRfoYz+Gkl+N3/REbPiOh0jQySK8="; }; - npmDepsHash = "sha256-9T6Dm8IxL8LB8Qx1wRaog6ZDRF6xYO+GteTrhjjxtns="; + npmDepsHash = "sha256-AlO3AC03JVTbgqdFSJb2L/QYuMQxjqzGGZYapte0uxc="; dontNpmBuild = true; diff --git a/pkgs/tools/security/grype/default.nix b/pkgs/tools/security/grype/default.nix index dc48dd521506..eceffd9bdecd 100644 --- a/pkgs/tools/security/grype/default.nix +++ b/pkgs/tools/security/grype/default.nix @@ -7,13 +7,13 @@ buildGoModule rec { pname = "grype"; - version = "0.74.4"; + version = "0.74.5"; src = fetchFromGitHub { owner = "anchore"; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-jBBiwsmQDbzay2C6uLM2uzPvTbD+3t8+jyBkEfHwohQ="; + hash = "sha256-h68LfKQG5xgFIFkyuK9Z6tw8+xoimnF2d2QgTjwU74U="; # 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; @@ -28,7 +28,7 @@ buildGoModule rec { proxyVendor = true; - vendorHash = "sha256-w0dqgyJvn7UZYoUII9jxTuiBOq+HENaQlxfP+rZdpS0="; + vendorHash = "sha256-lnOF3Xvjc20aFPOf9of3n+aBHvPrLTTlH7aPPlYA/RA="; nativeBuildInputs = [ installShellFiles diff --git a/pkgs/tools/security/mokutil/default.nix b/pkgs/tools/security/mokutil/default.nix index 5a597b73a7ce..bc38be4cd3e6 100644 --- a/pkgs/tools/security/mokutil/default.nix +++ b/pkgs/tools/security/mokutil/default.nix @@ -11,13 +11,13 @@ stdenv.mkDerivation rec { pname = "mokutil"; - version = "0.6.0"; + version = "0.7.0"; src = fetchFromGitHub { owner = "lcp"; repo = pname; rev = version; - sha256 = "sha256-qwSEv14mMpaKmm6RM882JzEnBQG3loqsoglg4qTFWUg="; + sha256 = "sha256-PB/VwOJD0DxAioPDYfk2ZDzcN+pSXfUC86hGq2kYhts="; }; nativeBuildInputs = [ diff --git a/pkgs/tools/security/trufflehog/default.nix b/pkgs/tools/security/trufflehog/default.nix index 4a99b84264c0..0e064ae788ce 100644 --- a/pkgs/tools/security/trufflehog/default.nix +++ b/pkgs/tools/security/trufflehog/default.nix @@ -7,13 +7,13 @@ buildGoModule rec { pname = "trufflehog"; - version = "3.67.2"; + version = "3.67.4"; src = fetchFromGitHub { owner = "trufflesecurity"; repo = "trufflehog"; rev = "refs/tags/v${version}"; - hash = "sha256-LEwrYzbUHyiLLfOu76zuQA5QwCRv2qV0Pf6pjpM/q0c="; + hash = "sha256-SdOXHsd10nKD8Am5v3WUrptsHbUOe07i1bNwrHhWKpM="; }; vendorHash = "sha256-tYW6MP1ayF6ExM1XQVA6AeRzXNdqzQLeYIqo85jKLz4="; diff --git a/pkgs/tools/text/riffdiff/default.nix b/pkgs/tools/text/riffdiff/default.nix index f8568bdce5e1..ebd4a7dc0a7a 100644 --- a/pkgs/tools/text/riffdiff/default.nix +++ b/pkgs/tools/text/riffdiff/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "riffdiff"; - version = "2.30.0"; + version = "2.30.1"; src = fetchFromGitHub { owner = "walles"; repo = "riff"; rev = version; - hash = "sha256-P+Q0KrJSXc26LcIHFzzypMwjWsJvYGYFZ/6RsB+ELTA="; + hash = "sha256-+bYQrZBbMnlDRZBM252i3dvSpLfW/ys4bBe9mDCvHuU="; }; - cargoHash = "sha256-fhJZMvxGjNfhHP3vMVYUYpA4i5r7w0B0TXaxDZ5Z2YY="; + cargoHash = "sha256-aJc3OcnSE4xo8FdSVt4YYX3i5NZT9GaczlFrbCw+iRo="; meta = with lib; { description = "A diff filter highlighting which line parts have changed"; diff --git a/pkgs/tools/typesetting/sile/default.nix b/pkgs/tools/typesetting/sile/default.nix index 79e2db12b063..61329037c961 100644 --- a/pkgs/tools/typesetting/sile/default.nix +++ b/pkgs/tools/typesetting/sile/default.nix @@ -46,11 +46,11 @@ in stdenv.mkDerivation (finalAttrs: { pname = "sile"; - version = "0.14.16"; + version = "0.14.17"; src = fetchurl { url = "https://github.com/sile-typesetter/sile/releases/download/v${finalAttrs.version}/sile-${finalAttrs.version}.tar.xz"; - sha256 = "sha256-z5dYW33Pd9meMo9s3OcaQHAyT+AB94dvcw+gTGySOFc="; + sha256 = "sha256-f4m+3s7au1FoJQrZ3YDAntKJyOiMPQ11bS0dku4GXgQ="; }; configureFlags = [ diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 375cd5ccdff3..b6ed0ead0424 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -25928,12 +25928,12 @@ with pkgs; # Steel Bank Common Lisp sbcl_2_4_0 = wrapLisp { - pkg = callPackage ../by-name/sb/sbcl/package.nix { version = "2.4.0"; }; + pkg = callPackage ../development/compilers/sbcl { version = "2.4.0"; }; faslExt = "fasl"; flags = [ "--dynamic-space-size" "3000" ]; }; sbcl_2_4_1 = wrapLisp { - pkg = callPackage ../by-name/sb/sbcl/package.nix { version = "2.4.1"; }; + pkg = callPackage ../development/compilers/sbcl { version = "2.4.1"; }; faslExt = "fasl"; flags = [ "--dynamic-space-size" "3000" ]; }; |