diff options
Diffstat (limited to 'pkgs/development')
65 files changed, 1072 insertions, 372 deletions
diff --git a/pkgs/development/compilers/zig/0.10.nix b/pkgs/development/compilers/zig/0.10.nix deleted file mode 100644 index d02b9ff1c976b..0000000000000 --- a/pkgs/development/compilers/zig/0.10.nix +++ /dev/null @@ -1,43 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, cmake -, llvmPackages -, libxml2 -, zlib -, coreutils -, callPackage -}@args: - -import ./generic.nix args { - version = "0.10.1"; - - hash = "sha256-69QIkkKzApOGfrBdgtmxFMDytRkSh+0YiaJQPbXsBeo="; - - outputs = [ "out" "doc" ]; - - patches = [ - # Backport alignment related panics from zig-master to 0.10. - # Upstream issue: https://github.com/ziglang/zig/issues/14559 - ./002-0.10-macho-fixes.patch - ]; - - cmakeFlags = [ - # file RPATH_CHANGE could not write new RPATH - "-DCMAKE_SKIP_BUILD_RPATH=ON" - - # always link against static build of LLVM - "-DZIG_STATIC_LLVM=ON" - - # ensure determinism in the compiler build - "-DZIG_TARGET_MCPU=baseline" - ]; - - postBuild = '' - ./zig2 run ../doc/docgen.zig -- ./zig2 ../doc/langref.html.in langref.html - ''; - - postInstall = '' - install -Dm644 -t $doc/share/doc/zig-$version/html ./langref.html - ''; -} diff --git a/pkgs/development/compilers/zig/002-0.10-macho-fixes.patch b/pkgs/development/compilers/zig/0.10/001-0.10-macho-fixes.patch index 95f0bdf701e29..95f0bdf701e29 100644 --- a/pkgs/development/compilers/zig/002-0.10-macho-fixes.patch +++ b/pkgs/development/compilers/zig/0.10/001-0.10-macho-fixes.patch diff --git a/pkgs/development/compilers/zig/0.10/default.nix b/pkgs/development/compilers/zig/0.10/default.nix new file mode 100644 index 0000000000000..170edafa819cf --- /dev/null +++ b/pkgs/development/compilers/zig/0.10/default.nix @@ -0,0 +1,109 @@ +{ + lib, + callPackage, + cmake, + coreutils, + fetchFromGitHub, + libxml2, + llvmPackages, + stdenv, + testers, + zlib, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "zig"; + version = "0.10.1"; + + src = fetchFromGitHub { + owner = "ziglang"; + repo = "zig"; + rev = finalAttrs.version; + hash = "sha256-69QIkkKzApOGfrBdgtmxFMDytRkSh+0YiaJQPbXsBeo="; + }; + + patches = [ + # Backport alignment related panics from zig-master to 0.10. + # Upstream issue: https://github.com/ziglang/zig/issues/14559 + ./001-0.10-macho-fixes.patch + ]; + + nativeBuildInputs = [ + cmake + (lib.getDev llvmPackages.llvm) + ]; + + buildInputs = + [ + libxml2 + zlib + ] + ++ (with llvmPackages; [ + libclang + lld + llvm + ]); + + outputs = [ + "out" + "doc" + ]; + + cmakeFlags = [ + # file RPATH_CHANGE could not write new RPATH + (lib.cmakeBool "CMAKE_SKIP_BUILD_RPATH" true) + # always link against static build of LLVM + (lib.cmakeBool "ZIG_STATIC_LLVM" true) + # ensure determinism in the compiler build + (lib.cmakeFeature "ZIG_TARGET_MCPU" "baseline") + ]; + + env.ZIG_GLOBAL_CACHE_DIR = "$TMPDIR/zig-cache"; + + doInstallCheck = true; + + strictDeps = true; + + # Zig's build looks at /usr/bin/env to find dynamic linking info. This doesn't + # work in Nix's sandbox. Use env from our coreutils instead. + postPatch = '' + substituteInPlace lib/std/zig/system/NativeTargetInfo.zig \ + --replace "/usr/bin/env" "${lib.getExe' coreutils "env"}" + ''; + + postBuild = '' + ./zig2 run ../doc/docgen.zig -- ./zig2 ../doc/langref.html.in langref.html + ''; + + postInstall = '' + install -Dm644 -t $doc/share/doc/zig-$version/html ./langref.html + ''; + + installCheckPhase = '' + runHook preInstallCheck + + $out/bin/zig test --cache-dir "$TMPDIR/zig-test-cache" -I $src/test $src/test/behavior.zig + + runHook postInstallCheck + ''; + + passthru = { + hook = callPackage ./hook.nix { zig = finalAttrs.finalPackage; }; + tests = { + version = testers.testVersion { + package = finalAttrs.finalPackage; + command = "zig version"; + }; + }; + }; + + meta = { + description = "General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software"; + homepage = "https://ziglang.org/"; + changelog = "https://ziglang.org/download/${finalAttrs.version}/release-notes.html"; + license = lib.licenses.mit; + mainProgram = "zig"; + maintainers = with lib.maintainers; [ andrewrk ] ++ lib.teams.zig.members; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/development/compilers/zig/0.10/hook.nix b/pkgs/development/compilers/zig/0.10/hook.nix new file mode 100644 index 0000000000000..298d50d9e5f9d --- /dev/null +++ b/pkgs/development/compilers/zig/0.10/hook.nix @@ -0,0 +1,47 @@ +{ + lib, + makeSetupHook, + zig, +}: + +makeSetupHook { + name = "zig-hook"; + + propagatedBuildInputs = [ zig ]; + + substitutions = { + # This zig_default_flags below is meant to avoid CPU feature impurity in + # Nixpkgs. However, this flagset is "unstable": it is specifically meant to + # be controlled by the upstream development team - being up to that team + # exposing or not that flags to the outside (especially the package manager + # teams). + + # Because of this hurdle, @andrewrk from Zig Software Foundation proposed + # some solutions for this issue. Hopefully they will be implemented in + # future releases of Zig. When this happens, this flagset should be + # revisited accordingly. + + # Below are some useful links describing the discovery process of this 'bug' + # in Nixpkgs: + + # https://github.com/NixOS/nixpkgs/issues/169461 + # https://github.com/NixOS/nixpkgs/issues/185644 + # https://github.com/NixOS/nixpkgs/pull/197046 + # https://github.com/NixOS/nixpkgs/pull/241741#issuecomment-1624227485 + # https://github.com/ziglang/zig/issues/14281#issuecomment-1624220653 + + zig_default_flags = [ + "-Dcpu=baseline" + "-Drelease-safe=true" + ]; + }; + + passthru = { + inherit zig; + }; + + meta = { + description = "A setup hook for using the Zig compiler in Nixpkgs"; + inherit (zig.meta) maintainers platforms broken; + }; +} ./setup-hook.sh diff --git a/pkgs/development/compilers/zig/0.10/setup-hook.sh b/pkgs/development/compilers/zig/0.10/setup-hook.sh new file mode 100644 index 0000000000000..689ebec8a3077 --- /dev/null +++ b/pkgs/development/compilers/zig/0.10/setup-hook.sh @@ -0,0 +1,70 @@ +# shellcheck shell=bash disable=SC2154,SC2086 + +readonly zigDefaultFlagsArray=(@zig_default_flags@) + +function zigSetGlobalCacheDir { + ZIG_GLOBAL_CACHE_DIR=$(mktemp -d) + export ZIG_GLOBAL_CACHE_DIR +} + +function zigBuildPhase { + runHook preBuild + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigBuildFlags "${zigBuildFlagsArray[@]}" + ) + + echoCmd 'zig build flags' "${flagsArray[@]}" + zig build "${flagsArray[@]}" + + runHook postBuild +} + +function zigCheckPhase { + runHook preCheck + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigCheckFlags "${zigCheckFlagsArray[@]}" + ) + + echoCmd 'zig check flags' "${flagsArray[@]}" + zig build test "${flagsArray[@]}" + + runHook postCheck +} + +function zigInstallPhase { + runHook preInstall + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigBuildFlags "${zigBuildFlagsArray[@]}" + $zigInstallFlags "${zigInstallFlagsArray[@]}" + ) + + if [ -z "${dontAddPrefix-}" ]; then + # Zig does not recognize `--prefix=/dir/`, only `--prefix /dir/` + flagsArray+=("${prefixKey:---prefix}" "$prefix") + fi + + echoCmd 'zig install flags' "${flagsArray[@]}" + zig build install "${flagsArray[@]}" + + runHook postInstall +} + +addEnvHooks "$targetOffset" zigSetGlobalCacheDir + +if [ -z "${dontUseZigBuild-}" ] && [ -z "${buildPhase-}" ]; then + buildPhase=zigBuildPhase +fi + +if [ -z "${dontUseZigCheck-}" ] && [ -z "${checkPhase-}" ]; then + checkPhase=zigCheckPhase +fi + +if [ -z "${dontUseZigInstall-}" ] && [ -z "${installPhase-}" ]; then + installPhase=zigInstallPhase +fi diff --git a/pkgs/development/compilers/zig/0.11.nix b/pkgs/development/compilers/zig/0.11.nix deleted file mode 100644 index b393f42c65136..0000000000000 --- a/pkgs/development/compilers/zig/0.11.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, cmake -, llvmPackages -, libxml2 -, zlib -, coreutils -, callPackage -}@args: - -import ./generic.nix args { - version = "0.11.0"; - - hash = "sha256-iuU1fzkbJxI+0N1PiLQM013Pd1bzrgqkbIyTxo5gB2I="; - - outputs = [ "out" "doc" ]; - - cmakeFlags = [ - # file RPATH_CHANGE could not write new RPATH - "-DCMAKE_SKIP_BUILD_RPATH=ON" - - # always link against static build of LLVM - "-DZIG_STATIC_LLVM=ON" - - # ensure determinism in the compiler build - "-DZIG_TARGET_MCPU=baseline" - ]; - - postBuild = '' - stage3/bin/zig run ../tools/docgen.zig -- ../doc/langref.html.in langref.html --zig $PWD/stage3/bin/zig - ''; - - postInstall = '' - install -Dm444 -t $doc/share/doc/zig-$version/html langref.html - ''; -} diff --git a/pkgs/development/compilers/zig/0.11/default.nix b/pkgs/development/compilers/zig/0.11/default.nix new file mode 100644 index 0000000000000..0f19f455cbb0f --- /dev/null +++ b/pkgs/development/compilers/zig/0.11/default.nix @@ -0,0 +1,103 @@ +{ + lib, + callPackage, + cmake, + coreutils, + fetchFromGitHub, + libxml2, + llvmPackages, + stdenv, + testers, + zlib, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "zig"; + version = "0.11.0"; + + src = fetchFromGitHub { + owner = "ziglang"; + repo = "zig"; + rev = finalAttrs.version; + hash = "sha256-iuU1fzkbJxI+0N1PiLQM013Pd1bzrgqkbIyTxo5gB2I="; + }; + + nativeBuildInputs = [ + cmake + (lib.getDev llvmPackages.llvm) + ]; + + buildInputs = + [ + libxml2 + zlib + ] + ++ (with llvmPackages; [ + libclang + lld + llvm + ]); + + outputs = [ + "out" + "doc" + ]; + + cmakeFlags = [ + # file RPATH_CHANGE could not write new RPATH + (lib.cmakeBool "CMAKE_SKIP_BUILD_RPATH" true) + # ensure determinism in the compiler build + (lib.cmakeFeature "ZIG_TARGET_MCPU" "baseline") + # always link against static build of LLVM + (lib.cmakeBool "ZIG_STATIC_LLVM" true) + ]; + + env.ZIG_GLOBAL_CACHE_DIR = "$TMPDIR/zig-cache"; + + doInstallCheck = true; + + strictDeps = true; + + # Zig's build looks at /usr/bin/env to find dynamic linking info. This doesn't + # work in Nix's sandbox. Use env from our coreutils instead. + postPatch = '' + substituteInPlace lib/std/zig/system/NativeTargetInfo.zig \ + --replace "/usr/bin/env" "${lib.getExe' coreutils "env"}" + ''; + + postBuild = '' + stage3/bin/zig run ../tools/docgen.zig -- ../doc/langref.html.in langref.html --zig $PWD/stage3/bin/zig + ''; + + postInstall = '' + install -Dm444 -t $doc/share/doc/zig-$version/html langref.html + ''; + + installCheckPhase = '' + runHook preInstallCheck + + $out/bin/zig test --cache-dir "$TMPDIR/zig-test-cache" -I $src/test $src/test/behavior.zig + + runHook postInstallCheck + ''; + + passthru = { + hook = callPackage ./hook.nix { zig = finalAttrs.finalPackage; }; + tests = { + version = testers.testVersion { + package = finalAttrs.finalPackage; + command = "zig version"; + }; + }; + }; + + meta = { + description = "General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software"; + homepage = "https://ziglang.org/"; + changelog = "https://ziglang.org/download/${finalAttrs.version}/release-notes.html"; + license = lib.licenses.mit; + mainProgram = "zig"; + maintainers = with lib.maintainers; [ andrewrk ] ++ lib.teams.zig.members; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/development/compilers/zig/0.11/hook.nix b/pkgs/development/compilers/zig/0.11/hook.nix new file mode 100644 index 0000000000000..391140d4a7ff3 --- /dev/null +++ b/pkgs/development/compilers/zig/0.11/hook.nix @@ -0,0 +1,47 @@ +{ + lib, + makeSetupHook, + zig, +}: + +makeSetupHook { + name = "zig-hook"; + + propagatedBuildInputs = [ zig ]; + + substitutions = { + # This zig_default_flags below is meant to avoid CPU feature impurity in + # Nixpkgs. However, this flagset is "unstable": it is specifically meant to + # be controlled by the upstream development team - being up to that team + # exposing or not that flags to the outside (especially the package manager + # teams). + + # Because of this hurdle, @andrewrk from Zig Software Foundation proposed + # some solutions for this issue. Hopefully they will be implemented in + # future releases of Zig. When this happens, this flagset should be + # revisited accordingly. + + # Below are some useful links describing the discovery process of this 'bug' + # in Nixpkgs: + + # https://github.com/NixOS/nixpkgs/issues/169461 + # https://github.com/NixOS/nixpkgs/issues/185644 + # https://github.com/NixOS/nixpkgs/pull/197046 + # https://github.com/NixOS/nixpkgs/pull/241741#issuecomment-1624227485 + # https://github.com/ziglang/zig/issues/14281#issuecomment-1624220653 + + zig_default_flags = [ + "-Dcpu=baseline" + "-Doptimize=ReleaseSafe" + ]; + }; + + passthru = { + inherit zig; + }; + + meta = { + description = "A setup hook for using the Zig compiler in Nixpkgs"; + inherit (zig.meta) maintainers platforms broken; + }; +} ./setup-hook.sh diff --git a/pkgs/development/compilers/zig/0.11/setup-hook.sh b/pkgs/development/compilers/zig/0.11/setup-hook.sh new file mode 100644 index 0000000000000..689ebec8a3077 --- /dev/null +++ b/pkgs/development/compilers/zig/0.11/setup-hook.sh @@ -0,0 +1,70 @@ +# shellcheck shell=bash disable=SC2154,SC2086 + +readonly zigDefaultFlagsArray=(@zig_default_flags@) + +function zigSetGlobalCacheDir { + ZIG_GLOBAL_CACHE_DIR=$(mktemp -d) + export ZIG_GLOBAL_CACHE_DIR +} + +function zigBuildPhase { + runHook preBuild + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigBuildFlags "${zigBuildFlagsArray[@]}" + ) + + echoCmd 'zig build flags' "${flagsArray[@]}" + zig build "${flagsArray[@]}" + + runHook postBuild +} + +function zigCheckPhase { + runHook preCheck + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigCheckFlags "${zigCheckFlagsArray[@]}" + ) + + echoCmd 'zig check flags' "${flagsArray[@]}" + zig build test "${flagsArray[@]}" + + runHook postCheck +} + +function zigInstallPhase { + runHook preInstall + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigBuildFlags "${zigBuildFlagsArray[@]}" + $zigInstallFlags "${zigInstallFlagsArray[@]}" + ) + + if [ -z "${dontAddPrefix-}" ]; then + # Zig does not recognize `--prefix=/dir/`, only `--prefix /dir/` + flagsArray+=("${prefixKey:---prefix}" "$prefix") + fi + + echoCmd 'zig install flags' "${flagsArray[@]}" + zig build install "${flagsArray[@]}" + + runHook postInstall +} + +addEnvHooks "$targetOffset" zigSetGlobalCacheDir + +if [ -z "${dontUseZigBuild-}" ] && [ -z "${buildPhase-}" ]; then + buildPhase=zigBuildPhase +fi + +if [ -z "${dontUseZigCheck-}" ] && [ -z "${checkPhase-}" ]; then + checkPhase=zigCheckPhase +fi + +if [ -z "${dontUseZigInstall-}" ] && [ -z "${installPhase-}" ]; then + installPhase=zigInstallPhase +fi diff --git a/pkgs/development/compilers/zig/0.12.nix b/pkgs/development/compilers/zig/0.12.nix deleted file mode 100644 index e234b600bc227..0000000000000 --- a/pkgs/development/compilers/zig/0.12.nix +++ /dev/null @@ -1,37 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, cmake -, llvmPackages -, libxml2 -, zlib -, coreutils -, callPackage -}@args: - -import ./generic.nix args { - version = "0.12.0"; - - hash = "sha256-RNZiUZtaKXoab5kFrDij6YCAospeVvlLWheTc3FGMks="; - - outputs = [ "out" "doc" ]; - - cmakeFlags = [ - # file RPATH_CHANGE could not write new RPATH - (lib.cmakeBool "CMAKE_SKIP_BUILD_RPATH" true) - - # always link against static build of LLVM - (lib.cmakeBool "ZIG_STATIC_LLVM" true) - - # ensure determinism in the compiler build - (lib.cmakeFeature "ZIG_TARGET_MCPU" "baseline") - ]; - - postBuild = '' - stage3/bin/zig run ../tools/docgen.zig -- ../doc/langref.html.in langref.html --zig $PWD/stage3/bin/zig - ''; - - postInstall = '' - install -Dm444 langref.html -t $doc/share/doc/zig-$version/html - ''; -} diff --git a/pkgs/development/compilers/zig/0.12/default.nix b/pkgs/development/compilers/zig/0.12/default.nix new file mode 100644 index 0000000000000..831366419a934 --- /dev/null +++ b/pkgs/development/compilers/zig/0.12/default.nix @@ -0,0 +1,103 @@ +{ + lib, + callPackage, + cmake, + coreutils, + fetchFromGitHub, + libxml2, + llvmPackages, + stdenv, + testers, + zlib, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "zig"; + version = "0.12.0"; + + src = fetchFromGitHub { + owner = "ziglang"; + repo = "zig"; + rev = finalAttrs.version; + hash = "sha256-RNZiUZtaKXoab5kFrDij6YCAospeVvlLWheTc3FGMks="; + }; + + nativeBuildInputs = [ + cmake + (lib.getDev llvmPackages.llvm) + ]; + + buildInputs = + [ + libxml2 + zlib + ] + ++ (with llvmPackages; [ + libclang + lld + llvm + ]); + + outputs = [ + "out" + "doc" + ]; + + cmakeFlags = [ + # file RPATH_CHANGE could not write new RPATH + (lib.cmakeBool "CMAKE_SKIP_BUILD_RPATH" true) + # ensure determinism in the compiler build + (lib.cmakeFeature "ZIG_TARGET_MCPU" "baseline") + # always link against static build of LLVM + (lib.cmakeBool "ZIG_STATIC_LLVM" true) + ]; + + env.ZIG_GLOBAL_CACHE_DIR = "$TMPDIR/zig-cache"; + + doInstallCheck = true; + + strictDeps = true; + + # Zig's build looks at /usr/bin/env to find dynamic linking info. This doesn't + # work in Nix's sandbox. Use env from our coreutils instead. + postPatch = '' + substituteInPlace lib/std/zig/system.zig \ + --replace "/usr/bin/env" "${lib.getExe' coreutils "env"}" + ''; + + postBuild = '' + stage3/bin/zig run ../tools/docgen.zig -- ../doc/langref.html.in langref.html --zig $PWD/stage3/bin/zig + ''; + + postInstall = '' + install -Dm444 langref.html -t $doc/share/doc/zig-${finalAttrs.version}/html + ''; + + installCheckPhase = '' + runHook preInstallCheck + + $out/bin/zig test --cache-dir "$TMPDIR/zig-test-cache" -I $src/test $src/test/behavior.zig + + runHook postInstallCheck + ''; + + passthru = { + hook = callPackage ./hook.nix { zig = finalAttrs.finalPackage; }; + tests = { + version = testers.testVersion { + package = finalAttrs.finalPackage; + command = "zig version"; + }; + }; + }; + + meta = { + description = "General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software"; + changelog = "https://ziglang.org/download/${finalAttrs.version}/release-notes.html"; + homepage = "https://ziglang.org/"; + license = lib.licenses.mit; + mainProgram = "zig"; + maintainers = with lib.maintainers; [ andrewrk ] ++ lib.teams.zig.members; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/development/compilers/zig/0.12/hook.nix b/pkgs/development/compilers/zig/0.12/hook.nix new file mode 100644 index 0000000000000..294aa851ce0d3 --- /dev/null +++ b/pkgs/development/compilers/zig/0.12/hook.nix @@ -0,0 +1,47 @@ +{ + lib, + makeSetupHook, + zig, +}: + +makeSetupHook { + name = "zig-hook"; + + propagatedBuildInputs = [ zig ]; + + substitutions = { + # This zig_default_flags below is meant to avoid CPU feature impurity in + # Nixpkgs. However, this flagset is "unstable": it is specifically meant to + # be controlled by the upstream development team - being up to that team + # exposing or not that flags to the outside (especially the package manager + # teams). + + # Because of this hurdle, @andrewrk from Zig Software Foundation proposed + # some solutions for this issue. Hopefully they will be implemented in + # future releases of Zig. When this happens, this flagset should be + # revisited accordingly. + + # Below are some useful links describing the discovery process of this 'bug' + # in Nixpkgs: + + # https://github.com/NixOS/nixpkgs/issues/169461 + # https://github.com/NixOS/nixpkgs/issues/185644 + # https://github.com/NixOS/nixpkgs/pull/197046 + # https://github.com/NixOS/nixpkgs/pull/241741#issuecomment-1624227485 + # https://github.com/ziglang/zig/issues/14281#issuecomment-1624220653 + + zig_default_flags = [ + "-Dcpu=baseline" + "--release=safe" + ]; + }; + + passthru = { + inherit zig; + }; + + meta = { + description = "A setup hook for using the Zig compiler in Nixpkgs"; + inherit (zig.meta) maintainers platforms broken; + }; +} ./setup-hook.sh diff --git a/pkgs/development/compilers/zig/0.12/setup-hook.sh b/pkgs/development/compilers/zig/0.12/setup-hook.sh new file mode 100644 index 0000000000000..689ebec8a3077 --- /dev/null +++ b/pkgs/development/compilers/zig/0.12/setup-hook.sh @@ -0,0 +1,70 @@ +# shellcheck shell=bash disable=SC2154,SC2086 + +readonly zigDefaultFlagsArray=(@zig_default_flags@) + +function zigSetGlobalCacheDir { + ZIG_GLOBAL_CACHE_DIR=$(mktemp -d) + export ZIG_GLOBAL_CACHE_DIR +} + +function zigBuildPhase { + runHook preBuild + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigBuildFlags "${zigBuildFlagsArray[@]}" + ) + + echoCmd 'zig build flags' "${flagsArray[@]}" + zig build "${flagsArray[@]}" + + runHook postBuild +} + +function zigCheckPhase { + runHook preCheck + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigCheckFlags "${zigCheckFlagsArray[@]}" + ) + + echoCmd 'zig check flags' "${flagsArray[@]}" + zig build test "${flagsArray[@]}" + + runHook postCheck +} + +function zigInstallPhase { + runHook preInstall + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigBuildFlags "${zigBuildFlagsArray[@]}" + $zigInstallFlags "${zigInstallFlagsArray[@]}" + ) + + if [ -z "${dontAddPrefix-}" ]; then + # Zig does not recognize `--prefix=/dir/`, only `--prefix /dir/` + flagsArray+=("${prefixKey:---prefix}" "$prefix") + fi + + echoCmd 'zig install flags' "${flagsArray[@]}" + zig build install "${flagsArray[@]}" + + runHook postInstall +} + +addEnvHooks "$targetOffset" zigSetGlobalCacheDir + +if [ -z "${dontUseZigBuild-}" ] && [ -z "${buildPhase-}" ]; then + buildPhase=zigBuildPhase +fi + +if [ -z "${dontUseZigCheck-}" ] && [ -z "${checkPhase-}" ]; then + checkPhase=zigCheckPhase +fi + +if [ -z "${dontUseZigInstall-}" ] && [ -z "${installPhase-}" ]; then + installPhase=zigInstallPhase +fi diff --git a/pkgs/development/compilers/zig/0.9.nix b/pkgs/development/compilers/zig/0.9.nix deleted file mode 100644 index d648c9c2eb642..0000000000000 --- a/pkgs/development/compilers/zig/0.9.nix +++ /dev/null @@ -1,47 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, cmake -, llvmPackages -, libxml2 -, zlib -, coreutils -, callPackage -}@args: - -import ./generic.nix args { - version = "0.9.1"; - - hash = "sha256-x2c4c9RSrNWGqEngio4ArW7dJjW0gg+8nqBwPcR721k="; - - patches = [ - # Fix index out of bounds reading RPATH (cherry-picked from 0.10-dev) - ./000-0.9-read-dynstr-at-rpath-offset.patch - # Fix build on macOS 13 (cherry-picked from 0.10-dev) - ./001-0.9-bump-macos-supported-version.patch - ]; - - prePatch = - let - zig_0_10_0 = fetchFromGitHub { - owner = "ziglang"; - repo = "zig"; - rev = "0.10.0"; - hash = "sha256-DNs937N7PLQimuM2anya4npYXcj6cyH+dRS7AiOX7tw="; - }; - in - '' - cp -R ${zig_0_10_0}/lib/libc/include/any-macos.13-any lib/libc/include/any-macos.13-any - cp -R ${zig_0_10_0}/lib/libc/include/aarch64-macos.13-none lib/libc/include/aarch64-macos.13-gnu - cp -R ${zig_0_10_0}/lib/libc/include/x86_64-macos.13-none lib/libc/include/x86_64-macos.13-gnu - cp ${zig_0_10_0}/lib/libc/darwin/libSystem.13.tbd lib/libc/darwin/ - ''; - - cmakeFlags = [ - # file RPATH_CHANGE could not write new RPATH - "-DCMAKE_SKIP_BUILD_RPATH=ON" - - # ensure determinism in the compiler build - "-DZIG_TARGET_MCPU=baseline" - ]; -} diff --git a/pkgs/development/compilers/zig/000-0.9-read-dynstr-at-rpath-offset.patch b/pkgs/development/compilers/zig/0.9/000-0.9-read-dynstr-at-rpath-offset.patch index 70633193f944d..70633193f944d 100644 --- a/pkgs/development/compilers/zig/000-0.9-read-dynstr-at-rpath-offset.patch +++ b/pkgs/development/compilers/zig/0.9/000-0.9-read-dynstr-at-rpath-offset.patch diff --git a/pkgs/development/compilers/zig/001-0.9-bump-macos-supported-version.patch b/pkgs/development/compilers/zig/0.9/001-0.9-bump-macos-supported-version.patch index 07b90e223553b..07b90e223553b 100644 --- a/pkgs/development/compilers/zig/001-0.9-bump-macos-supported-version.patch +++ b/pkgs/development/compilers/zig/0.9/001-0.9-bump-macos-supported-version.patch diff --git a/pkgs/development/compilers/zig/0.9/default.nix b/pkgs/development/compilers/zig/0.9/default.nix new file mode 100644 index 0000000000000..079773f00e88c --- /dev/null +++ b/pkgs/development/compilers/zig/0.9/default.nix @@ -0,0 +1,111 @@ +{ + lib, + callPackage, + cmake, + coreutils, + fetchFromGitHub, + libxml2, + llvmPackages, + stdenv, + testers, + zlib, +}: + +stdenv.mkDerivation (finalAttrs: { + pname = "zig"; + version = "0.9.1"; + + src = fetchFromGitHub { + owner = "ziglang"; + repo = "zig"; + rev = finalAttrs.version; + hash = "sha256-x2c4c9RSrNWGqEngio4ArW7dJjW0gg+8nqBwPcR721k="; + }; + + patches = [ + # Fix index out of bounds reading RPATH (cherry-picked from 0.10-dev) + ./000-0.9-read-dynstr-at-rpath-offset.patch + # Fix build on macOS 13 (cherry-picked from 0.10-dev) + ./001-0.9-bump-macos-supported-version.patch + ]; + + nativeBuildInputs = [ + cmake + (lib.getDev llvmPackages.llvm) + ]; + + buildInputs = + [ + libxml2 + zlib + ] + ++ (with llvmPackages; [ + libclang + lld + llvm + ]); + + cmakeFlags = [ + # file RPATH_CHANGE could not write new RPATH + (lib.cmakeBool "CMAKE_SKIP_BUILD_RPATH" true) + # ensure determinism in the compiler build + (lib.cmakeFeature "ZIG_TARGET_MCPU" "baseline") + ]; + + env.ZIG_GLOBAL_CACHE_DIR = "$TMPDIR/zig-cache"; + + doInstallCheck = true; + + strictDeps = true; + + prePatch = + let + zig_0_10_0 = fetchFromGitHub { + owner = "ziglang"; + repo = "zig"; + rev = "0.10.0"; + hash = "sha256-DNs937N7PLQimuM2anya4npYXcj6cyH+dRS7AiOX7tw="; + }; + in + '' + cp -R ${zig_0_10_0}/lib/libc/include/any-macos.13-any lib/libc/include/any-macos.13-any + cp -R ${zig_0_10_0}/lib/libc/include/aarch64-macos.13-none lib/libc/include/aarch64-macos.13-gnu + cp -R ${zig_0_10_0}/lib/libc/include/x86_64-macos.13-none lib/libc/include/x86_64-macos.13-gnu + cp ${zig_0_10_0}/lib/libc/darwin/libSystem.13.tbd lib/libc/darwin/ + ''; + + # Zig's build looks at /usr/bin/env to find dynamic linking info. This doesn't + # work in Nix's sandbox. Use env from our coreutils instead. + postPatch = '' + substituteInPlace lib/std/zig/system/NativeTargetInfo.zig \ + --replace "/usr/bin/env" "${lib.getExe' coreutils "env"}" + ''; + + installCheckPhase = '' + runHook preInstallCheck + + $out/bin/zig test --cache-dir "$TMPDIR/zig-test-cache" -I $src/test $src/test/behavior.zig + + runHook postInstallCheck + ''; + + passthru = { + hook = callPackage ./hook.nix { zig = finalAttrs.finalPackage; }; + tests = { + version = testers.testVersion { + package = finalAttrs.finalPackage; + command = "zig version"; + }; + }; + }; + + meta = { + description = "General-purpose programming language and toolchain for maintaining robust, optimal, and reusable software"; + homepage = "https://ziglang.org/"; + changelog = "https://ziglang.org/download/${finalAttrs.version}/release-notes.html"; + license = lib.licenses.mit; + mainProgram = "zig"; + maintainers = with lib.maintainers; [ andrewrk ] ++ lib.teams.zig.members; + platforms = lib.platforms.unix; + }; +}) diff --git a/pkgs/development/compilers/zig/0.9/hook.nix b/pkgs/development/compilers/zig/0.9/hook.nix new file mode 100644 index 0000000000000..298d50d9e5f9d --- /dev/null +++ b/pkgs/development/compilers/zig/0.9/hook.nix @@ -0,0 +1,47 @@ +{ + lib, + makeSetupHook, + zig, +}: + +makeSetupHook { + name = "zig-hook"; + + propagatedBuildInputs = [ zig ]; + + substitutions = { + # This zig_default_flags below is meant to avoid CPU feature impurity in + # Nixpkgs. However, this flagset is "unstable": it is specifically meant to + # be controlled by the upstream development team - being up to that team + # exposing or not that flags to the outside (especially the package manager + # teams). + + # Because of this hurdle, @andrewrk from Zig Software Foundation proposed + # some solutions for this issue. Hopefully they will be implemented in + # future releases of Zig. When this happens, this flagset should be + # revisited accordingly. + + # Below are some useful links describing the discovery process of this 'bug' + # in Nixpkgs: + + # https://github.com/NixOS/nixpkgs/issues/169461 + # https://github.com/NixOS/nixpkgs/issues/185644 + # https://github.com/NixOS/nixpkgs/pull/197046 + # https://github.com/NixOS/nixpkgs/pull/241741#issuecomment-1624227485 + # https://github.com/ziglang/zig/issues/14281#issuecomment-1624220653 + + zig_default_flags = [ + "-Dcpu=baseline" + "-Drelease-safe=true" + ]; + }; + + passthru = { + inherit zig; + }; + + meta = { + description = "A setup hook for using the Zig compiler in Nixpkgs"; + inherit (zig.meta) maintainers platforms broken; + }; +} ./setup-hook.sh diff --git a/pkgs/development/compilers/zig/0.9/setup-hook.sh b/pkgs/development/compilers/zig/0.9/setup-hook.sh new file mode 100644 index 0000000000000..689ebec8a3077 --- /dev/null +++ b/pkgs/development/compilers/zig/0.9/setup-hook.sh @@ -0,0 +1,70 @@ +# shellcheck shell=bash disable=SC2154,SC2086 + +readonly zigDefaultFlagsArray=(@zig_default_flags@) + +function zigSetGlobalCacheDir { + ZIG_GLOBAL_CACHE_DIR=$(mktemp -d) + export ZIG_GLOBAL_CACHE_DIR +} + +function zigBuildPhase { + runHook preBuild + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigBuildFlags "${zigBuildFlagsArray[@]}" + ) + + echoCmd 'zig build flags' "${flagsArray[@]}" + zig build "${flagsArray[@]}" + + runHook postBuild +} + +function zigCheckPhase { + runHook preCheck + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigCheckFlags "${zigCheckFlagsArray[@]}" + ) + + echoCmd 'zig check flags' "${flagsArray[@]}" + zig build test "${flagsArray[@]}" + + runHook postCheck +} + +function zigInstallPhase { + runHook preInstall + + local flagsArray=( + "${zigDefaultFlagsArray[@]}" + $zigBuildFlags "${zigBuildFlagsArray[@]}" + $zigInstallFlags "${zigInstallFlagsArray[@]}" + ) + + if [ -z "${dontAddPrefix-}" ]; then + # Zig does not recognize `--prefix=/dir/`, only `--prefix /dir/` + flagsArray+=("${prefixKey:---prefix}" "$prefix") + fi + + echoCmd 'zig install flags' "${flagsArray[@]}" + zig build install "${flagsArray[@]}" + + runHook postInstall +} + +addEnvHooks "$targetOffset" zigSetGlobalCacheDir + +if [ -z "${dontUseZigBuild-}" ] && [ -z "${buildPhase-}" ]; then + buildPhase=zigBuildPhase +fi + +if [ -z "${dontUseZigCheck-}" ] && [ -z "${checkPhase-}" ]; then + checkPhase=zigCheckPhase +fi + +if [ -z "${dontUseZigInstall-}" ] && [ -z "${installPhase-}" ]; then + installPhase=zigInstallPhase +fi diff --git a/pkgs/development/compilers/zig/shell-completions.nix b/pkgs/development/compilers/zig/shell-completions.nix deleted file mode 100644 index 44773cf9a553e..0000000000000 --- a/pkgs/development/compilers/zig/shell-completions.nix +++ /dev/null @@ -1,42 +0,0 @@ -{ lib -, stdenv -, fetchFromGitHub -, installShellFiles -, unstableGitUpdater -}: - -stdenv.mkDerivation (finalAttrs: { - pname = "zig-shell-completions"; - version = "0-unstable-2023-11-18"; - - src = fetchFromGitHub { - owner = "ziglang"; - repo = "shell-completions"; - rev = "31d3ad12890371bf467ef7143f5c2f31cfa7b7c1"; - hash = "sha256-ID/K0vdg7BTKGgozISk/X4RBxCVfhSkVD6GSZUoP9Ls="; - }; - - nativeBuildInputs = [ installShellFiles ]; - - dontConfigure = true; - dontBuild = true; - - installPhase = '' - runHook preInstall - - installShellCompletion --bash --name zig.bash _zig.bash - installShellCompletion --zsh --name _zig _zig - - runHook postInstall - ''; - - passthru.updateScript = unstableGitUpdater { }; - - meta = { - homepage = "https://github.com/ziglang/shell-completions"; - description = "Shell completions for the Zig compiler"; - license = lib.licenses.mit; - maintainers = with lib.maintainers; [ aaronjheng ]; - platforms = lib.platforms.all; - }; -}) diff --git a/pkgs/development/coq-modules/mathcomp-word/default.nix b/pkgs/development/coq-modules/mathcomp-word/default.nix index 0183de9812269..98fdefa6d1176 100644 --- a/pkgs/development/coq-modules/mathcomp-word/default.nix +++ b/pkgs/development/coq-modules/mathcomp-word/default.nix @@ -18,8 +18,10 @@ mkCoqDerivation { releaseRev = v: "v${v}"; + release."3.2".sha256 = "sha256-4HOFFQzKbHIq+ktjJaS5b2Qr8WL1eQ26YxF4vt1FdWM="; release."3.1".sha256 = "sha256-qQHis6554sG7NpCpWhT2wvelnxsrbEPVNv3fpxwxHMU="; release."3.0".sha256 = "sha256-xEgx5HHDOimOJbNMtIVf/KG3XBemOS9XwoCoW6btyJ4="; + release."2.4".sha256 = "sha256-OG99PfjhtKikxM9aBKRsej1gTo1O/llAdXdiiyjZf2Q="; release."2.3".sha256 = "sha256-whU1yvFFuxpwQutW41B/WBg5DrVZJW/Do/GuHtzuI3U="; release."2.2".sha256 = "sha256-8BB6SToCrMZTtU78t2K+aExuxk9O1lCqVQaa8wabSm8="; release."2.1".sha256 = "sha256-895gZzwwX8hN9UUQRhcgRlphHANka9R0PRotfmSEelA="; @@ -27,8 +29,8 @@ mkCoqDerivation { inherit version; defaultVersion = with lib.versions; lib.switch [ coq.version mathcomp.version ] [ - { cases = [ (range "8.16" "8.19") (isGe "2.0") ]; out = "3.1"; } - { cases = [ (range "8.12" "8.19") (range "1.12" "1.19") ]; out = "2.3"; } + { cases = [ (range "8.16" "8.19") (isGe "2.0") ]; out = "3.2"; } + { cases = [ (range "8.12" "8.19") (range "1.12" "1.19") ]; out = "2.4"; } ] null; propagatedBuildInputs = [ mathcomp.algebra mathcomp.ssreflect mathcomp.fingroup ]; diff --git a/pkgs/development/interpreters/micropython/default.nix b/pkgs/development/interpreters/micropython/default.nix index 6437e942ae344..c28d09ede3a60 100644 --- a/pkgs/development/interpreters/micropython/default.nix +++ b/pkgs/development/interpreters/micropython/default.nix @@ -9,13 +9,13 @@ stdenv.mkDerivation rec { pname = "micropython"; - version = "1.22.2"; + version = "1.23.0"; src = fetchFromGitHub { owner = "micropython"; repo = "micropython"; rev = "v${version}"; - sha256 = "sha256-sdok17HvKub/sI+8cAIIDaLD/3mu8yXXqrTOej8/UfU="; + sha256 = "sha256-sfJohmsqq5FumUoVE8x3yWv12DiCJJXae62br0j+190="; fetchSubmodules = true; }; diff --git a/pkgs/development/julia-modules/depot.nix b/pkgs/development/julia-modules/depot.nix index 5614f1427aa5e..c2189ebaf94c0 100644 --- a/pkgs/development/julia-modules/depot.nix +++ b/pkgs/development/julia-modules/depot.nix @@ -52,7 +52,10 @@ runCommand "julia-depot" { # for finding the extra packages we need to add python ${./python}/find_package_implications.py "${closureYaml}" '${lib.generators.toJSON {} packageImplications}' extra_package_names.txt - # git config --global --add safe.directory '/nix' + # Work around new git security features added in git 2.44.1 + # See https://github.com/NixOS/nixpkgs/issues/315890 + git config --global --add safe.directory '*' + export JULIA_PKG_USE_CLI_GIT="true" # At time of writing, this appears to be the only way to turn precompiling's diff --git a/pkgs/development/julia-modules/tests/julia-top-n/app/Main.hs b/pkgs/development/julia-modules/tests/julia-top-n/app/Main.hs index ed9f8d405b12c..55f5fd3cfeef8 100644 --- a/pkgs/development/julia-modules/tests/julia-top-n/app/Main.hs +++ b/pkgs/development/julia-modules/tests/julia-top-n/app/Main.hs @@ -4,6 +4,7 @@ {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE LambdaCase #-} {-# LANGUAGE OverloadedStrings #-} +{-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE RecordWildCards #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE ViewPatterns #-} @@ -17,6 +18,7 @@ import qualified Data.Aeson.Key as A import qualified Data.Aeson.KeyMap as HM import qualified Data.ByteString.Lazy.Char8 as BL8 import qualified Data.List as L +import Data.String.Interpolate import Data.Text as T import qualified Data.Vector as V import qualified Data.Yaml as Yaml @@ -33,6 +35,7 @@ data Args = Args { countFilePath :: FilePath , topN :: Int , parallelism :: Int + , juliaAttr :: Text } argsParser :: Parser Args @@ -40,6 +43,7 @@ argsParser = Args <$> strOption (long "count-file" <> short 'c' <> help "YAML file containing package names and counts") <*> option auto (long "top-n" <> short 'n' <> help "How many of the top packages to build" <> showDefault <> value 100 <> metavar "INT") <*> option auto (long "parallelism" <> short 'p' <> help "How many builds to run at once" <> showDefault <> value 10 <> metavar "INT") + <*> strOption (long "julia-attr" <> short 'a' <> help "Which Julia attr to build with" <> showDefault <> value "julia" <> metavar "STRING") data NameAndCount = NameAndCount { name :: Text @@ -69,7 +73,7 @@ main = do introduce' (defaultNodeOptions { nodeOptionsVisibilityThreshold = 0 }) (T.unpack name) julia (newMVar Nothing) (const $ return ()) $ do it "Builds" $ do let cp = proc "nix" ["build", "--impure", "--no-link", "--json", "--expr" - , "with import ../../../../. {}; julia.withPackages [\"" <> T.unpack name <> "\"]" + , [i|with import ../../../../. {}; #{juliaAttr}.withPackages ["#{name}"]|] ] output <- readCreateProcessWithLogging cp "" juliaPath <- case A.eitherDecode (BL8.pack output) of diff --git a/pkgs/development/julia-modules/tests/julia-top-n/julia-top-n.cabal b/pkgs/development/julia-modules/tests/julia-top-n/julia-top-n.cabal index 834adac33f16a..e3a319702f7a7 100644 --- a/pkgs/development/julia-modules/tests/julia-top-n/julia-top-n.cabal +++ b/pkgs/development/julia-modules/tests/julia-top-n/julia-top-n.cabal @@ -27,6 +27,7 @@ executable julia-top-n-exe , filepath , optparse-applicative , sandwich + , string-interpolate , text , unliftio , vector diff --git a/pkgs/development/julia-modules/tests/julia-top-n/package.yaml b/pkgs/development/julia-modules/tests/julia-top-n/package.yaml index ffb9ab1d12ea4..404ebc72dd674 100644 --- a/pkgs/development/julia-modules/tests/julia-top-n/package.yaml +++ b/pkgs/development/julia-modules/tests/julia-top-n/package.yaml @@ -11,6 +11,7 @@ dependencies: - filepath - optparse-applicative - sandwich +- string-interpolate - text - unliftio - vector diff --git a/pkgs/development/libraries/gamin/default.nix b/pkgs/development/libraries/gamin/default.nix index a2d6078024d58..4f831775716ea 100644 --- a/pkgs/development/libraries/gamin/default.nix +++ b/pkgs/development/libraries/gamin/default.nix @@ -25,6 +25,10 @@ stdenv.mkDerivation rec { sed -i 's/,--version-script=.*$/\\/' libgamin/Makefile ''; + env = lib.optionalAttrs stdenv.cc.isClang { + NIX_CFLAGS_COMPILE = "-Wno-error=implicit-function-declaration"; + }; + patches = [ ./deadlock.patch ] ++ map fetchurl (import ./debian-patches.nix) ++ lib.optional stdenv.cc.isClang ./returnval.patch diff --git a/pkgs/development/libraries/simdjson/default.nix b/pkgs/development/libraries/simdjson/default.nix index 410ef47b1bc3d..979eb92aa4637 100644 --- a/pkgs/development/libraries/simdjson/default.nix +++ b/pkgs/development/libraries/simdjson/default.nix @@ -2,13 +2,13 @@ stdenv.mkDerivation rec { pname = "simdjson"; - version = "3.9.2"; + version = "3.9.3"; src = fetchFromGitHub { owner = "simdjson"; repo = "simdjson"; rev = "v${version}"; - sha256 = "sha256-7YW0ylYQMi6D7YyRQGWRv980skjZ2t//QoZb8rRDHGk="; + sha256 = "sha256-TbCfAtP/mOgSWjG1eUE4atDU0gPXS7rkhsTWE3g1Z2U="; }; nativeBuildInputs = [ cmake ]; diff --git a/pkgs/development/libraries/spdk/0001-fix-setuptools-installation.patch b/pkgs/development/libraries/spdk/0001-fix-setuptools-installation.patch deleted file mode 100644 index 3c3fb50fc1525..0000000000000 --- a/pkgs/development/libraries/spdk/0001-fix-setuptools-installation.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 3f718fc1873c9c138684ea019e9bd42c9b24506c Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= <joerg@thalheim.io> -Date: Tue, 28 Nov 2023 11:28:11 +0100 -Subject: [PATCH] fix setuptools installation -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Jörg Thalheim <joerg@thalheim.io> ---- - python/Makefile | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/python/Makefile b/python/Makefile -index f835daa..b41995a 100644 ---- a/python/Makefile -+++ b/python/Makefile -@@ -12,7 +12,7 @@ setup_cmd += --root $(DESTDIR) - endif - - ifneq ($(CONFIG_PYDIR),) --setup_cmd += --install-purelib $(CONFIG_PYDIR) -+setup_cmd += --root / --prefix $(CONFIG_PYDIR) - purelibdir := $(CONFIG_PYDIR) - else - purelibdir := $(shell python3 -c "import sysconfig; print(sysconfig.get_paths()['purelib'])") --- -2.42.0 - diff --git a/pkgs/development/libraries/spdk/default.nix b/pkgs/development/libraries/spdk/default.nix index 46ee5600a4daf..3c3bf275d709d 100644 --- a/pkgs/development/libraries/spdk/default.nix +++ b/pkgs/development/libraries/spdk/default.nix @@ -4,6 +4,7 @@ , python3 , cunit , dpdk +, fuse3 , libaio , libbsd , libuuid @@ -22,19 +23,22 @@ stdenv.mkDerivation rec { pname = "spdk"; - version = "23.09"; + version = "24.01"; src = fetchFromGitHub { owner = "spdk"; repo = "spdk"; rev = "v${version}"; - sha256 = "sha256-P10NDa+MIEY8B3bu34Dq2keyuv2a24XV5Wf+Ah701b8="; + sha256 = "sha256-5znYELR6WvVXbfFKAcRtJnSwAE5WHmA8v1rvZUtszS4="; fetchSubmodules = true; }; nativeBuildInputs = [ python3 + python3.pkgs.pip python3.pkgs.setuptools + python3.pkgs.wheel + python3.pkgs.wrapPython pkg-config ensureNewerSourcesForZipFilesHook ]; @@ -42,6 +46,7 @@ stdenv.mkDerivation rec { buildInputs = [ cunit dpdk + fuse3 jansson libaio libbsd @@ -56,10 +61,8 @@ stdenv.mkDerivation rec { zstd ]; - patches = [ - # https://review.spdk.io/gerrit/c/spdk/spdk/+/20394 - ./setuptools.patch - ./0001-fix-setuptools-installation.patch + propagatedBuildInputs = [ + python3.pkgs.configshell ]; postPatch = '' @@ -70,13 +73,16 @@ stdenv.mkDerivation rec { configureFlags = [ "--with-dpdk=${dpdk}" - "--pydir=${placeholder "out"}" ]; postCheck = '' python3 -m spdk ''; + postFixup = '' + wrapPythonPrograms + ''; + env.NIX_CFLAGS_COMPILE = "-mssse3"; # Necessary to compile. # otherwise does not find strncpy when compiling env.NIX_LDFLAGS = "-lbsd"; diff --git a/pkgs/development/libraries/spdk/setuptools.patch b/pkgs/development/libraries/spdk/setuptools.patch deleted file mode 100644 index b3e7644c0076b..0000000000000 --- a/pkgs/development/libraries/spdk/setuptools.patch +++ /dev/null @@ -1,25 +0,0 @@ -From 3a72290ba7e2d71ca887225fc0eb8792ca863be2 Mon Sep 17 00:00:00 2001 -From: Jörg Thalheim <joerg@thalheim.io> -Date: Tue, 24 Oct 2023 14:30:53 +0200 -Subject: [PATCH] python: drop deprecated distutils - -This is scheduled for removal in python 3.12: https://docs.python.org/3/whatsnew/3.12.html - -Change-Id: I728dc0cf4ed20f22016d3d58cca8aee3af2bcd8b -Signed-off-by: Jörg Thalheim <joerg@thalheim.io> ---- - -diff --git a/python/setup.py b/python/setup.py -index 47e2104..ae4dff7 100755 ---- a/python/setup.py -+++ b/python/setup.py -@@ -2,8 +2,7 @@ - # SPDX-License-Identifier: BSD-3-Clause - # Copyright (C) 2023 Intel Corporation. All rights reserved. - --from distutils.core import setup --from setuptools import find_packages -+from setuptools import setup, find_packages - from spdk import __version__ - - diff --git a/pkgs/development/libraries/toml-f/default.nix b/pkgs/development/libraries/toml-f/default.nix index e24ceec58c075..3f95d5682f9e0 100644 --- a/pkgs/development/libraries/toml-f/default.nix +++ b/pkgs/development/libraries/toml-f/default.nix @@ -25,7 +25,8 @@ stdenv.mkDerivation rec { outputs = [ "out" "dev" ]; - doCheck = true; + # tftest-build fails on aarch64-linux + doCheck = !stdenv.isAarch64; meta = with lib; { description = "TOML parser implementation for data serialization and deserialization in Fortran"; diff --git a/pkgs/development/ocaml-modules/yojson/default.nix b/pkgs/development/ocaml-modules/yojson/default.nix index c8600cf52b168..a6f30ab86694e 100644 --- a/pkgs/development/ocaml-modules/yojson/default.nix +++ b/pkgs/development/ocaml-modules/yojson/default.nix @@ -1,15 +1,14 @@ -{ lib, fetchurl, buildDunePackage, cppo, seq }: +{ lib, fetchurl, buildDunePackage, seq }: buildDunePackage rec { pname = "yojson"; - version = "2.1.2"; + version = "2.2.0"; src = fetchurl { url = "https://github.com/ocaml-community/yojson/releases/download/${version}/yojson-${version}.tbz"; - hash = "sha256-WfLxq7/Ip8y9v2CIlOXHXop2AG40iZJURG+D4gDftPk="; + hash = "sha256-v9wzvvMUG7qaj6ZqiFtUsp9r+rRQBAiE3Yz3zex4RRk="; }; - nativeBuildInputs = [ cppo ]; propagatedBuildInputs = [ seq ]; meta = with lib; { diff --git a/pkgs/development/python-modules/ailment/default.nix b/pkgs/development/python-modules/ailment/default.nix index c64eece601c5e..bf6b4d5ba034a 100644 --- a/pkgs/development/python-modules/ailment/default.nix +++ b/pkgs/development/python-modules/ailment/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "ailment"; - version = "9.2.102"; + version = "9.2.103"; pyproject = true; disabled = pythonOlder "3.11"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "angr"; repo = "ailment"; rev = "refs/tags/v${version}"; - hash = "sha256-xHxWP16XbVcsT+UIyouqyhbnxPBNx7oH1unBhJU44fI="; + hash = "sha256-yjLbgv6uUXQhJJZGd62ZlA3fbBbCS3JbbVWbz950dWY="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/angr/default.nix b/pkgs/development/python-modules/angr/default.nix index b7f04cace7290..71629259ec073 100644 --- a/pkgs/development/python-modules/angr/default.nix +++ b/pkgs/development/python-modules/angr/default.nix @@ -37,7 +37,7 @@ buildPythonPackage rec { pname = "angr"; - version = "9.2.102"; + version = "9.2.103"; pyproject = true; disabled = pythonOlder "3.11"; @@ -46,7 +46,7 @@ buildPythonPackage rec { owner = "angr"; repo = "angr"; rev = "refs/tags/v${version}"; - hash = "sha256-NZO4aQQfp+P9nbVr+cFd5Z2Ziz9cYzuLUi6nVY+Czr0="; + hash = "sha256-U1XO6MlXJzEBskp2pMZmIeRNKNQV3kWGMLbmlXS+zos="; }; pythonRelaxDeps = [ "capstone" ]; diff --git a/pkgs/development/python-modules/archinfo/default.nix b/pkgs/development/python-modules/archinfo/default.nix index 47eef407bcb7c..476965442494c 100644 --- a/pkgs/development/python-modules/archinfo/default.nix +++ b/pkgs/development/python-modules/archinfo/default.nix @@ -10,7 +10,7 @@ buildPythonPackage rec { pname = "archinfo"; - version = "9.2.102"; + version = "9.2.103"; pyproject = true; disabled = pythonOlder "3.8"; @@ -19,7 +19,7 @@ buildPythonPackage rec { owner = "angr"; repo = "archinfo"; rev = "refs/tags/v${version}"; - hash = "sha256-aZwU/i1tBT6M5+PNR77vYzPKklWERXhvG1kknwC0RQQ="; + hash = "sha256-0tL0YNyKtX5Njq2yAWbcSll3YQEVYGM3+Xx9TwqhKaw="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/claripy/default.nix b/pkgs/development/python-modules/claripy/default.nix index d7e3079efdc30..520154c5bcaae 100644 --- a/pkgs/development/python-modules/claripy/default.nix +++ b/pkgs/development/python-modules/claripy/default.nix @@ -14,7 +14,7 @@ buildPythonPackage rec { pname = "claripy"; - version = "9.2.102"; + version = "9.2.103"; pyproject = true; disabled = pythonOlder "3.11"; @@ -23,7 +23,7 @@ buildPythonPackage rec { owner = "angr"; repo = "claripy"; rev = "refs/tags/v${version}"; - hash = "sha256-U7aN6MOptGjW61HDfZDM7Vit5G+rm1LujgHoo6oRX3s="; + hash = "sha256-Eh+P6/yKTn+zymfh6MU6zL36wt+roRPbtAfiJ/e8tjI="; }; # z3 does not provide a dist-info, so python-runtime-deps-check will fail diff --git a/pkgs/development/python-modules/cle/default.nix b/pkgs/development/python-modules/cle/default.nix index d1d719e370f87..33a4bd5147785 100644 --- a/pkgs/development/python-modules/cle/default.nix +++ b/pkgs/development/python-modules/cle/default.nix @@ -18,14 +18,14 @@ let # The binaries are following the argr projects release cycle - version = "9.2.102"; + version = "9.2.103"; # Binary files from https://github.com/angr/binaries (only used for testing and only here) binaries = fetchFromGitHub { owner = "angr"; repo = "binaries"; rev = "refs/tags/v${version}"; - hash = "sha256-6FVxlQ1MiJP2mtu4V/mPAyaeCRdBp/sk+u4fdFqxTyA="; + hash = "sha256-SPBco+1UKe9ra8eauBmsyS/0F9wxb8r/xhPWP9N1Nck="; }; in buildPythonPackage rec { @@ -39,7 +39,7 @@ buildPythonPackage rec { owner = "angr"; repo = "cle"; rev = "refs/tags/v${version}"; - hash = "sha256-BPKNrFBEKV8UuSdrl+HIgBqFClHTvRsGidz+X81bBLI="; + hash = "sha256-fUE0hfrIQrYCMH7txKvq8tsGhJIAXc+66JmcqQHg4J4="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/fyta-cli/default.nix b/pkgs/development/python-modules/fyta-cli/default.nix index 79189827c7e93..6251d39ac2d0f 100644 --- a/pkgs/development/python-modules/fyta-cli/default.nix +++ b/pkgs/development/python-modules/fyta-cli/default.nix @@ -9,7 +9,7 @@ buildPythonPackage rec { pname = "fyta-cli"; - version = "0.4.1"; + version = "0.5.0"; pyproject = true; disabled = pythonOlder "3.8"; @@ -18,7 +18,7 @@ buildPythonPackage rec { owner = "dontinelli"; repo = "fyta_cli"; rev = "refs/tags/v${version}"; - hash = "sha256-eWuuHIq79n1oFsvBfVySfGCtHz+MlFRR3j8uqtVR+V0="; + hash = "sha256-v89rgchfrPa0gOCBLOUK+BalnfpXD1Yt877WuBbkH3Y="; }; build-system = [ hatchling ]; diff --git a/pkgs/development/python-modules/httpauth/default.nix b/pkgs/development/python-modules/httpauth/default.nix index 7ff2ef6d2e1ea..e99a7eaea0f5c 100644 --- a/pkgs/development/python-modules/httpauth/default.nix +++ b/pkgs/development/python-modules/httpauth/default.nix @@ -5,13 +5,13 @@ }: buildPythonPackage rec { - version = "0.4"; + version = "0.4.1"; format = "setuptools"; pname = "httpauth"; src = fetchPypi { inherit pname version; - sha256 = "sha256-lehPEuxYV4SQsdL1RWBqTNFIGz2pSoTs+nlkQ5fPX8M="; + sha256 = "sha256-C6rnFroAd5vOULBMwsLSyeSK5zPXOEgGHDSYt+Pm2dQ="; }; doCheck = false; diff --git a/pkgs/development/python-modules/islpy/default.nix b/pkgs/development/python-modules/islpy/default.nix index 83f0b26c0047b..d111e6b523d27 100644 --- a/pkgs/development/python-modules/islpy/default.nix +++ b/pkgs/development/python-modules/islpy/default.nix @@ -17,7 +17,7 @@ buildPythonPackage rec { pname = "islpy"; - version = "2023.2.5"; + version = "2024.1"; pyproject = true; disabled = pythonOlder "3.8"; @@ -25,8 +25,8 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "inducer"; repo = "islpy"; - rev = "v${version}"; - hash = "sha256-0m41G5HlPrgt4rDY3Y9cKBJGHSnLg/R+IywBO1anRpQ="; + rev = "refs/tags/v${version}"; + hash = "sha256-N5XI6V3BvNobCh7NAvtzVejtDMnlcb31S5gseyab1T0="; }; postPatch = '' diff --git a/pkgs/development/python-modules/langsmith/default.nix b/pkgs/development/python-modules/langsmith/default.nix index c02aae4844a30..c81ff1cc538c3 100644 --- a/pkgs/development/python-modules/langsmith/default.nix +++ b/pkgs/development/python-modules/langsmith/default.nix @@ -22,7 +22,7 @@ buildPythonPackage rec { pname = "langsmith"; - version = "0.1.63"; + version = "0.1.64"; pyproject = true; disabled = pythonOlder "3.8"; @@ -31,7 +31,7 @@ buildPythonPackage rec { owner = "langchain-ai"; repo = "langsmith-sdk"; rev = "refs/tags/v${version}"; - hash = "sha256-zIrSQubYB5AuwAF0hktT/wY5/ktwQJ4Z/3F6po2wC3o="; + hash = "sha256-oAAbki0Mo4qmjIFpD4girpRuSKr9eLPU6Da6muG0NNk="; }; sourceRoot = "${src.name}/python"; diff --git a/pkgs/development/python-modules/marimo/default.nix b/pkgs/development/python-modules/marimo/default.nix index bbe15353e09c6..b8bc348c2012e 100644 --- a/pkgs/development/python-modules/marimo/default.nix +++ b/pkgs/development/python-modules/marimo/default.nix @@ -23,14 +23,14 @@ buildPythonPackage rec { pname = "marimo"; - version = "0.6.2"; + version = "0.6.11"; pyproject = true; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-sp3lQPLpU5qvHKQ02c/Ga1M8IsbmOX5nz2XPBMbGj30="; + hash = "sha256-gkt21YAxZuoLxvPLYh+1PKQL8AIZGpPtcwIHlSpshkU="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/meeko/default.nix b/pkgs/development/python-modules/meeko/default.nix index a1e49a19b9463..c422b962925c2 100644 --- a/pkgs/development/python-modules/meeko/default.nix +++ b/pkgs/development/python-modules/meeko/default.nix @@ -12,7 +12,7 @@ buildPythonPackage rec { pname = "meeko"; - version = "0.5.0"; + version = "0.5.1"; format = "setuptools"; disabled = pythonOlder "3.5"; @@ -21,7 +21,7 @@ buildPythonPackage rec { owner = "forlilab"; repo = "Meeko"; rev = "refs/tags/v${version}"; - hash = "sha256-pngFu6M63W26P7wd6FUNLuf0NikxtRtVR/pnR5PR6Wo="; + hash = "sha256-I/kAO0a6DbDqmzjS36ETuoH/Z1gR2eNpyE3herHDKMs="; }; patches = [ diff --git a/pkgs/development/python-modules/nanobind/default.nix b/pkgs/development/python-modules/nanobind/default.nix index 9e632ff0f1b2a..b02f229ec136f 100644 --- a/pkgs/development/python-modules/nanobind/default.nix +++ b/pkgs/development/python-modules/nanobind/default.nix @@ -18,25 +18,26 @@ }: buildPythonPackage rec { pname = "nanobind"; - version = "1.9.2"; + version = "2.0.0"; pyproject = true; src = fetchFromGitHub { owner = "wjakob"; - repo = pname; - rev = "v${version}"; - hash = "sha256-6swDqw7sEYOawQbNWD8VfSQoi+9wjhOhOOwPPkahDas="; + repo = "nanobind"; + rev = "refs/tags/v${version}"; + hash = "sha256-yDFrhSIWywWw7ri5aHRPigi9ujDeazpJa4AVrkLx5BI="; fetchSubmodules = true; }; disabled = pythonOlder "3.8"; - nativeBuildInputs = [ + build-system = [ cmake ninja scikit-build setuptools ]; + buildInputs = [ eigen ]; dontUseCmakeBuildDir = true; @@ -51,13 +52,11 @@ buildPythonPackage rec { scipy torch tensorflow - # Uncomment at next release (1.9.3) - # See https://github.com/wjakob/nanobind/issues/578 - # jax - # jaxlib + jax + jaxlib ]; - meta = with lib; { + meta = { homepage = "https://github.com/wjakob/nanobind"; changelog = "https://github.com/wjakob/nanobind/blob/${src.rev}/docs/changelog.rst"; description = "Tiny and efficient C++/Python bindings"; @@ -68,7 +67,7 @@ buildPythonPackage rec { more efficient: bindings compile in a shorter amount of time, produce smaller binaries, and have better runtime performance. ''; - license = licenses.bsd3; - maintainers = with maintainers; [ parras ]; + license = lib.licenses.bsd3; + maintainers = with lib.maintainers; [ parras ]; }; } diff --git a/pkgs/development/python-modules/pyathena/default.nix b/pkgs/development/python-modules/pyathena/default.nix index 38a4956c9a6db..8a81fa5b34f4c 100644 --- a/pkgs/development/python-modules/pyathena/default.nix +++ b/pkgs/development/python-modules/pyathena/default.nix @@ -16,14 +16,14 @@ buildPythonPackage rec { pname = "pyathena"; - version = "3.8.2"; + version = "3.8.3"; pyproject = true; disabled = pythonOlder "3.8"; src = fetchPypi { inherit pname version; - hash = "sha256-uVYnhxQJy6BvSZ/7JbKZPtE+uJkOtEZrd3uTokfZ3f8="; + hash = "sha256-mcYIYOgww4UM0CAcdtOD12pp53clPdDqN85bLRHGDag="; }; nativeBuildInputs = [ hatchling ]; diff --git a/pkgs/development/python-modules/python-musicpd/default.nix b/pkgs/development/python-modules/python-musicpd/default.nix index 45846d2995172..0807494dce91a 100644 --- a/pkgs/development/python-modules/python-musicpd/default.nix +++ b/pkgs/development/python-modules/python-musicpd/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchPypi, + setuptools, }: buildPythonPackage rec { @@ -14,7 +15,9 @@ buildPythonPackage rec { sha256 = "sha256-/FdM0UolVqhJNpS60Q/nra1hSHKL/LiSMX7/Hcipwco="; }; - format = "setuptools"; + pyproject = true; + + build-system = [ setuptools ]; doCheck = true; diff --git a/pkgs/development/python-modules/pytun/default.nix b/pkgs/development/python-modules/pytun/default.nix index ab11320ec4369..166afc4544339 100644 --- a/pkgs/development/python-modules/pytun/default.nix +++ b/pkgs/development/python-modules/pytun/default.nix @@ -6,14 +6,14 @@ buildPythonPackage rec { pname = "pytun"; - version = "2.3.0"; + version = "2.4.1"; format = "setuptools"; src = fetchFromGitHub { rev = "v${version}"; owner = "montag451"; repo = "pytun"; - sha256 = "1cqq8aci38058fjh4a0xf21wac177fw576p2yjl2b8jd9rnsqbl5"; + sha256 = "sha256-DZ7CoLi6LPhuc55HF9dtek+/N4A29ecnZn7bk7jweuI="; }; # Test directory contains examples, not tests. diff --git a/pkgs/development/python-modules/pyvex/default.nix b/pkgs/development/python-modules/pyvex/default.nix index 8537a3240814a..536bf986df978 100644 --- a/pkgs/development/python-modules/pyvex/default.nix +++ b/pkgs/development/python-modules/pyvex/default.nix @@ -12,14 +12,14 @@ buildPythonPackage rec { pname = "pyvex"; - version = "9.2.102"; + version = "9.2.103"; pyproject = true; disabled = pythonOlder "3.11"; src = fetchPypi { inherit pname version; - hash = "sha256-P16jsBmFkuzMHcVTvGEK7/SzIkVpFJsUlxFeHCHivig="; + hash = "sha256-pmvdAdp/2uAsRMoDnp1naPVh47a0m8NNothbIFcptGI="; }; build-system = [ setuptools ]; diff --git a/pkgs/development/python-modules/qutip/default.nix b/pkgs/development/python-modules/qutip/default.nix index 6884ca0fe925c..8cc5ccba6c306 100644 --- a/pkgs/development/python-modules/qutip/default.nix +++ b/pkgs/development/python-modules/qutip/default.nix @@ -1,6 +1,5 @@ { lib, - stdenv, buildPythonPackage, cvxopt, cvxpy, @@ -9,18 +8,20 @@ ipython, matplotlib, numpy, + oldest-supported-numpy, packaging, pytest-rerunfailures, pytestCheckHook, python, pythonOlder, scipy, + setuptools, }: buildPythonPackage rec { pname = "qutip"; - version = "4.7.5"; - format = "setuptools"; + version = "5.0.2"; + pyproject = true; disabled = pythonOlder "3.7"; @@ -28,10 +29,14 @@ buildPythonPackage rec { owner = pname; repo = pname; rev = "refs/tags/v${version}"; - hash = "sha256-4nXZPZFu9L+Okha3qvPil1KvLGO1EbrzotQjqQ8r9l8="; + hash = "sha256-lMPzgmUaoEQB5TzmqEJFiFTuS3AGpyMMjPHlPUKTLvk="; }; - nativeBuildInputs = [ cython_0 ]; + nativeBuildInputs = [ + cython_0 + setuptools + oldest-supported-numpy + ]; propagatedBuildInputs = [ numpy @@ -44,9 +49,6 @@ buildPythonPackage rec { pytest-rerunfailures ] ++ lib.flatten (builtins.attrValues passthru.optional-dependencies); - # Disabling OpenMP support on Darwin. - setupPyGlobalFlags = lib.optionals (!stdenv.isDarwin) [ "--with-openmp" ]; - # QuTiP tries to access the home directory to create an rc file for us. # We need to go to another directory to run the tests from there. # This is due to the Cython-compiled modules not being in the correct location diff --git a/pkgs/development/python-modules/rapidfuzz/default.nix b/pkgs/development/python-modules/rapidfuzz/default.nix index 747611f2b17b0..0708cc6c3d64a 100644 --- a/pkgs/development/python-modules/rapidfuzz/default.nix +++ b/pkgs/development/python-modules/rapidfuzz/default.nix @@ -19,7 +19,7 @@ buildPythonPackage rec { pname = "rapidfuzz"; - version = "3.9.1"; + version = "3.9.2"; pyproject = true; disabled = pythonOlder "3.8"; @@ -28,7 +28,7 @@ buildPythonPackage rec { owner = "maxbachmann"; repo = "RapidFuzz"; rev = "refs/tags/v${version}"; - hash = "sha256-HwTVaPFVktdt1/MfNYajRqVr9uSg6oc++yVvY0WC9AQ="; + hash = "sha256-mPfS/p/Gwc/aobTZMJqbUkpEq60PC7DSiAXBanlNt+8="; }; postPatch = '' diff --git a/pkgs/development/python-modules/sphinxawesome-theme/default.nix b/pkgs/development/python-modules/sphinxawesome-theme/default.nix new file mode 100644 index 0000000000000..ed68975765adf --- /dev/null +++ b/pkgs/development/python-modules/sphinxawesome-theme/default.nix @@ -0,0 +1,36 @@ +{ + buildPythonPackage, + fetchPypi, + lib, + poetry-core, + sphinx, + beautifulsoup4, + pythonRelaxDepsHook +}: + +buildPythonPackage rec { + pname = "sphinxawesome-theme"; + version = "5.1.4"; + pyproject = true; + + src = fetchPypi { + inherit version; + pname = "sphinxawesome_theme"; + hash = "sha256-OwikuKJrPo4vNaud/9JToYYJePV6Kew8izYbr/qKTtQ="; + }; + + build-system = [ poetry-core pythonRelaxDepsHook ]; + dependencies = [ + sphinx + beautifulsoup4 + ]; + + pythonRelaxDeps = [ "sphinx" ]; + + meta = { + description = "Awesome Sphinx Theme"; + homepage = "https://sphinxawesome.xyz/"; + license = lib.licenses.mit; + maintainers = with lib.maintainers; [sigmanificient]; + }; +} diff --git a/pkgs/development/python-modules/stringly/default.nix b/pkgs/development/python-modules/stringly/default.nix index 7d830ff2f839a..c7637bb082c7c 100644 --- a/pkgs/development/python-modules/stringly/default.nix +++ b/pkgs/development/python-modules/stringly/default.nix @@ -1,6 +1,5 @@ { lib, - python, buildPythonPackage, fetchPypi, typing-extensions, @@ -20,10 +19,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ typing-extensions ]; - checkPhase = '' - ${python.interpreter} -m unittest - ''; - meta = with lib; { description = "Stringly: Human Readable Object Serialization"; homepage = "https://github.com/evalf/stringly"; diff --git a/pkgs/development/python-modules/testcontainers/default.nix b/pkgs/development/python-modules/testcontainers/default.nix index 561f2bcfeb725..362a4f36b94ed 100644 --- a/pkgs/development/python-modules/testcontainers/default.nix +++ b/pkgs/development/python-modules/testcontainers/default.nix @@ -12,16 +12,16 @@ buildPythonPackage rec { pname = "testcontainers"; - version = "4.5.0"; - disabled = pythonOlder "3.9"; - + version = "4.5.1"; pyproject = true; + disabled = pythonOlder "3.9"; + src = fetchFromGitHub { owner = "testcontainers"; repo = "testcontainers-python"; rev = "refs/tags/testcontainers-v${version}"; - hash = "sha256-+kMKxitRRjNGVqMJuDdJA0QnYpLicJ6qdD8tzplEbT8="; + hash = "sha256-7QlT3ibSUDeC+aWi2MCagLkomXG3/VU1xHQ7Xgoh/Pw="; }; postPatch = '' diff --git a/pkgs/development/python-modules/treelog/default.nix b/pkgs/development/python-modules/treelog/default.nix index 87ef2eca9f147..7739b8253bb42 100644 --- a/pkgs/development/python-modules/treelog/default.nix +++ b/pkgs/development/python-modules/treelog/default.nix @@ -1,6 +1,5 @@ { lib, - python, buildPythonPackage, fetchPypi, typing-extensions, @@ -20,10 +19,6 @@ buildPythonPackage rec { propagatedBuildInputs = [ typing-extensions ]; - checkPhase = '' - ${python.interpreter} -m unittest - ''; - meta = with lib; { description = "Logging framework that organizes messages in a tree structure"; homepage = "https://github.com/evalf/treelog"; diff --git a/pkgs/development/python-modules/wasserstein/default.nix b/pkgs/development/python-modules/wasserstein/default.nix index c4534dcdf5d03..c9a9495b42ef3 100644 --- a/pkgs/development/python-modules/wasserstein/default.nix +++ b/pkgs/development/python-modules/wasserstein/default.nix @@ -2,6 +2,7 @@ lib, buildPythonPackage, fetchFromGitHub, + fetchpatch, numpy, llvmPackages, wurlitzer, @@ -16,10 +17,17 @@ buildPythonPackage rec { src = fetchFromGitHub { owner = "pkomiske"; repo = "Wasserstein"; - rev = "89c2d6279a7e0aa3b56bcc8fb7b6009420f2563e"; # https://github.com/pkomiske/Wasserstein/issues/1 + rev = "v${version}"; hash = "sha256-s9en6XwvO/WPsF7/+SEmGePHZQgl7zLgu5sEn4nD9YE="; }; + patches = [ + (fetchpatch { + url = "https://github.com/thaler-lab/Wasserstein/commit/8667d59dfdf89eabf01f3ae93b23a30a27c21c58.patch"; + hash = "sha256-jp5updB3E1MYgLhBJwmBMTwBiFXtABMwTxt0G6xhoyA="; + }) + ]; + buildInputs = [ llvmPackages.openmp ]; propagatedBuildInputs = [ numpy diff --git a/pkgs/development/tools/air/default.nix b/pkgs/development/tools/air/default.nix index 467f05150622c..edddbe3fe194a 100644 --- a/pkgs/development/tools/air/default.nix +++ b/pkgs/development/tools/air/default.nix @@ -2,13 +2,13 @@ buildGoModule rec { pname = "air"; - version = "1.52.0"; + version = "1.52.1"; src = fetchFromGitHub { owner = "cosmtrek"; repo = "air"; rev = "v${version}"; - hash = "sha256-7iqS8p53Pyk2WQVkbTVA7eJNnD2KvO41S+JJBTFOToQ="; + hash = "sha256-KTutLvcLH1dOsJFDaEU2c4wGbQyRE7qUHah4mEXCL08="; }; vendorHash = "sha256-dSu00NAq6hEOdJxXp+12UaUq32z53Wzla3/u+2nxqPw="; diff --git a/pkgs/development/tools/analysis/stylelint/default.nix b/pkgs/development/tools/analysis/stylelint/default.nix index f60751bc33b15..c2a216afea9a9 100644 --- a/pkgs/development/tools/analysis/stylelint/default.nix +++ b/pkgs/development/tools/analysis/stylelint/default.nix @@ -2,16 +2,16 @@ buildNpmPackage rec { pname = "stylelint"; - version = "16.6.0"; + version = "16.6.1"; src = fetchFromGitHub { owner = "stylelint"; repo = "stylelint"; rev = version; - hash = "sha256-yNEXtuemNzpy7gIlVUWM5crP0LpLHmiVYznomC5eGYs="; + hash = "sha256-wt9EVE3AAnOVJsDHG+qIXSqZ1I2MSITHjGpEGLPWOBY="; }; - npmDepsHash = "sha256-e9helwaAiW3KtPHOWN7S0VxG87nKj6X4lTHTEdXoRZc="; + npmDepsHash = "sha256-+74oklREFCDEa8E0QDBlIzfW943AStJxfXkQDqRGFyo="; dontNpmBuild = true; diff --git a/pkgs/development/tools/backblaze-b2/default.nix b/pkgs/development/tools/backblaze-b2/default.nix index 2021604637a19..99ce90cc77455 100644 --- a/pkgs/development/tools/backblaze-b2/default.nix +++ b/pkgs/development/tools/backblaze-b2/default.nix @@ -20,8 +20,9 @@ python3Packages.buildPythonApplication rec { hash = "sha256-/P1cgAC+a2YCcvbsysYdD+fEwibo+GyE0XY4A0+gMh4="; }; - nativeBuildInputs = [ + nativeBuildInputs = with python3Packages; [ installShellFiles + argcomplete ]; build-system = with python3Packages; [ @@ -77,8 +78,8 @@ python3Packages.buildPythonApplication rec { '' + '' installShellCompletion --cmd ${execName} \ - --bash <(${python3Packages.argcomplete}/bin/register-python-argcomplete ${execName}) \ - --zsh <(${python3Packages.argcomplete}/bin/register-python-argcomplete ${execName}) + --bash <(register-python-argcomplete ${execName}) \ + --zsh <(register-python-argcomplete ${execName}) ''; passthru.tests.version = (testers.testVersion { diff --git a/pkgs/development/tools/cmake-format/default.nix b/pkgs/development/tools/cmake-format/default.nix index 85efc5f19ccfd..281f36dfe0070 100644 --- a/pkgs/development/tools/cmake-format/default.nix +++ b/pkgs/development/tools/cmake-format/default.nix @@ -31,6 +31,7 @@ buildPythonApplication rec { homepage = "https://github.com/cheshirekow/cmake_format"; license = licenses.gpl3; maintainers = [ maintainers.tobim ]; + mainProgram = "cmake-format"; platforms = platforms.all; }; } diff --git a/pkgs/development/tools/doctl/default.nix b/pkgs/development/tools/doctl/default.nix index f12baca266756..ea74f5eae4cb1 100644 --- a/pkgs/development/tools/doctl/default.nix +++ b/pkgs/development/tools/doctl/default.nix @@ -2,7 +2,7 @@ buildGoModule rec { pname = "doctl"; - version = "1.106.0"; + version = "1.107.0"; vendorHash = null; @@ -31,7 +31,7 @@ buildGoModule rec { owner = "digitalocean"; repo = "doctl"; rev = "v${version}"; - sha256 = "sha256-Un1qBQbrgdudAfnviP8d6A7nNwi1ZGAFPN33NLKXNwI="; + sha256 = "sha256-svwFIM1lJI60bdmzZS/QZSzy30HtOf498GgnqLFGKAQ="; }; meta = with lib; { diff --git a/pkgs/development/tools/language-servers/jq-lsp/default.nix b/pkgs/development/tools/language-servers/jq-lsp/default.nix index 6952bea00d63e..ad43af981e394 100644 --- a/pkgs/development/tools/language-servers/jq-lsp/default.nix +++ b/pkgs/development/tools/language-servers/jq-lsp/default.nix @@ -5,16 +5,16 @@ buildGoModule rec { pname = "jq-lsp"; - version = "0.1.2"; + version = "0.1.3"; src = fetchFromGitHub { owner = "wader"; repo = "jq-lsp"; rev = "refs/tags/v${version}"; - hash = "sha256-a3ZqVWG7kjWQzL1efrKc4s4D14qD/+6JM26vaduxhWg="; + hash = "sha256-c7uK8WPM/h2PLVLFGeN66SztvzjBCgJje7L14+oErVU="; }; - vendorHash = "sha256-bIe006I1ryvIJ4hC94Ux2YVdlmDIM4oZaK/qXafYYe0="; + vendorHash = "sha256-8sZGnoP7l09ZzLJqq8TUCquTOPF0qiwZcFhojUnnEIY="; # based on https://github.com/wader/jq-lsp/blob/master/.goreleaser.yml CGO_ENABLED = 0; diff --git a/pkgs/development/tools/misc/premake/5.nix b/pkgs/development/tools/misc/premake/5.nix index 841e8480da1ab..d33a9c73c9c7f 100644 --- a/pkgs/development/tools/misc/premake/5.nix +++ b/pkgs/development/tools/misc/premake/5.nix @@ -19,7 +19,9 @@ stdenv.mkDerivation rec { --replace "ca = nil" "ca = '${cacert}/etc/ssl/certs/ca-bundle.crt'" '' + lib.optionalString stdenv.isDarwin '' substituteInPlace premake5.lua \ - --replace -mmacosx-version-min=10.4 -mmacosx-version-min=10.5 + --replace -mmacosx-version-min=10.4 -mmacosx-version-min=10.5 \ + --replace-fail '"-arch arm64"' '""' \ + --replace-fail '"-arch x86_64"' '""' '' + lib.optionalString stdenv.hostPlatform.isStatic '' substituteInPlace \ binmodules/example/premake5.lua \ @@ -34,6 +36,10 @@ stdenv.mkDerivation rec { make -f Bootstrap.mak linux ''; + env.NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.cc.isClang [ + "-Wno-error=implicit-function-declaration" + ]); + installPhase = '' install -Dm755 bin/release/premake5 $out/bin/premake5 ''; @@ -47,6 +53,5 @@ stdenv.mkDerivation rec { mainProgram = "premake5"; license = lib.licenses.bsd3; platforms = lib.platforms.darwin ++ lib.platforms.linux; - broken = stdenv.isDarwin && stdenv.isAarch64; }; } diff --git a/pkgs/development/tools/misc/seer/default.nix b/pkgs/development/tools/misc/seer/default.nix index b797287a02dc2..abc718b15893b 100644 --- a/pkgs/development/tools/misc/seer/default.nix +++ b/pkgs/development/tools/misc/seer/default.nix @@ -1,14 +1,14 @@ -{ lib, stdenv, fetchFromGitHub, cmake, gdb, qtcharts, qtbase, wrapQtAppsHook }: +{ lib, stdenv, fetchFromGitHub, cmake, gdb, kdePackages, wrapQtAppsHook }: stdenv.mkDerivation rec { pname = "seer"; - version = "1.17"; + version = "2.4"; src = fetchFromGitHub { owner = "epasveer"; repo = "seer"; rev = "v${version}"; - sha256 = "sha256-lM6w+QwIRYP/2JDx4yynJxhVXt8SouOWgsLGXSwolIw="; + sha256 = "sha256-ZvoRC34496fUldL3jOdxcO/TVmfPNmmr2GkJG4gJXzk="; }; preConfigure = '' @@ -17,11 +17,11 @@ stdenv.mkDerivation rec { patchPhase = '' substituteInPlace src/{SeerGdbConfigPage,SeerMainWindow,SeerGdbWidget}.cpp \ - --replace "/usr/bin/gdb" "${gdb}/bin/gdb" + --replace-fail "/usr/bin/gdb" "${gdb}/bin/gdb" ''; - buildInputs = [ qtbase qtcharts ]; - nativeBuildInputs = [ cmake wrapQtAppsHook ]; + buildInputs = with kdePackages; [ qtbase qtcharts qtsvg ]; + nativeBuildInputs = [ cmake kdePackages.wrapQtAppsHook ]; meta = with lib; { description = "A Qt gui frontend for GDB"; diff --git a/pkgs/development/tools/squawk/default.nix b/pkgs/development/tools/squawk/default.nix index 7a70c6378d60d..c4cb979b909dd 100644 --- a/pkgs/development/tools/squawk/default.nix +++ b/pkgs/development/tools/squawk/default.nix @@ -11,16 +11,16 @@ rustPlatform.buildRustPackage rec { pname = "squawk"; - version = "0.28.0"; + version = "0.29.0"; src = fetchFromGitHub { owner = "sbdchd"; repo = pname; rev = "v${version}"; - hash = "sha256-RnY41G0ombqJewv+kxvg8AwQeRaVb+frZjmU/Cd28Jo="; + hash = "sha256-YKwoMZkr+UWri4WLm+a44DA8sygy67UkSm160OqDGus="; }; - cargoHash = "sha256-YR2ZSwrCkX8eyHTj1Dtk9f01/y9fDtknouige68kS8I="; + cargoHash = "sha256-pX87ccAyMkR7qA/k3zLgqYEIhNLFa5yrrVZVtWUKfyc="; nativeBuildInputs = [ pkg-config |