Merge #248496: staging-next 2023-08-11

This commit is contained in:
Vladimír Čunát 2023-08-20 23:43:11 +02:00
commit c86e0ee17d
No known key found for this signature in database
GPG Key ID: E747DF1F9575A3AA
201 changed files with 2610 additions and 1523 deletions

View File

@ -211,6 +211,18 @@ The module update takes care of the new config syntax and the data itself (user
- The use of `sourceRoot = "source";`, `sourceRoot = "source/subdir";`, and similar lines in package derivations using the default `unpackPhase` is deprecated as it requires `unpackPhase` to always produce a directory named "source". Use `sourceRoot = src.name`, `sourceRoot = "${src.name}/subdir";`, or `setSourceRoot = "sourceRoot=$(echo */subdir)";` or similar instead.
- The `django` alias in the python package set was upgraded to Django 4.x.
Applications that consume Django should always pin their python environment
to a compatible major version, so they can move at their own pace.
```nix
python = python3.override {
packageOverrides = self: super: {
django = super.django_3;
};
};
```
- The `qemu-vm.nix` module by default now identifies block devices via
persistent names available in `/dev/disk/by-*`. Because the rootDevice is
identfied by its filesystem label, it needs to be formatted before the VM is

View File

@ -236,8 +236,8 @@ in
};
assertions = [
{ assertion = cfg.enableNvidia -> config.hardware.opengl.driSupport32Bit or false;
message = "Option enableNvidia requires 32bit support libraries";
{ assertion = cfg.enableNvidia && pkgs.stdenv.isx86_64 -> config.hardware.opengl.driSupport32Bit or false;
message = "Option enableNvidia on x86_64 requires 32bit support libraries";
}];
virtualisation.docker.daemon.settings = {

View File

@ -1,42 +1,14 @@
{ lib, stdenv, fetchurl, lzip }:
{ lib, pkgs }:
# Note: this package is used for bootstrapping fetchurl, and thus
# cannot use fetchpatch! All mutable patches (generated by GitHub or
# cgit) that are needed here should be included directly in Nixpkgs as
# files.
lib.makeScope pkgs.newScope (self:
let
inherit (self) callPackage;
in {
sources = import ./sources.nix {
inherit lib;
inherit (pkgs) fetchurl;
};
stdenv.mkDerivation rec {
pname = "ed";
version = "1.19";
src = fetchurl {
url = "mirror://gnu/ed/${pname}-${version}.tar.lz";
hash = "sha256-zi8uXEJHkKqW0J2suT2bv9wLfrYknJy3U4RS6Ox3zUg=";
};
nativeBuildInputs = [ lzip ];
configureFlags = [
"CC=${stdenv.cc.targetPrefix}cc"
];
doCheck = true;
meta = {
description = "An implementation of the standard Unix editor";
longDescription = ''
GNU ed is a line-oriented text editor. It is used to create,
display, modify and otherwise manipulate text files, both
interactively and via shell scripts. A restricted version of ed,
red, can only edit files in the current directory and cannot
execute shell commands. Ed is the "standard" text editor in the
sense that it is the original editor for Unix, and thus widely
available. For most purposes, however, it is superseded by
full-screen editors such as GNU Emacs or GNU Moe.
'';
license = lib.licenses.gpl3Plus;
homepage = "https://www.gnu.org/software/ed/";
maintainers = [ ];
platforms = lib.platforms.unix;
};
}
ed = callPackage (self.sources.ed) { };
edUnstable = callPackage (self.sources.edUnstable) { };
})

View File

@ -0,0 +1,30 @@
{ pname
, version
, src
, patches ? [ ]
, meta
}:
# Note: this package is used for bootstrapping fetchurl, and thus cannot use
# fetchpatch! All mutable patches (generated by GitHub or cgit) that are needed
# here should be included directly in Nixpkgs as files.
{ lib
, stdenv
, fetchurl
, lzip
}:
stdenv.mkDerivation {
inherit pname version src patches;
nativeBuildInputs = [ lzip ];
configureFlags = [
"CC=${stdenv.cc.targetPrefix}cc"
];
doCheck = true;
inherit meta;
}

View File

@ -0,0 +1,45 @@
{ lib
, fetchurl
}:
let
meta = {
description = "The GNU implementation of the standard Unix editor";
longDescription = ''
GNU ed is a line-oriented text editor. It is used to create, display,
modify and otherwise manipulate text files, both interactively and via
shell scripts. A restricted version of ed, red, can only edit files in the
current directory and cannot execute shell commands. Ed is the 'standard'
text editor in the sense that it is the original editor for Unix, and thus
widely available. For most purposes, however, it is superseded by
full-screen editors such as GNU Emacs or GNU Moe.
'';
license = lib.licenses.gpl3Plus;
homepage = "https://www.gnu.org/software/ed/";
maintainers = with lib.maintainers; [ AndersonTorres ];
platforms = lib.platforms.unix;
};
in
{
ed = let
pname = "ed";
version = "1.19";
src = fetchurl {
url = "mirror://gnu/ed/ed-${version}.tar.lz";
hash = "sha256-zi8uXEJHkKqW0J2suT2bv9wLfrYknJy3U4RS6Ox3zUg=";
};
in import ./generic.nix {
inherit pname version src meta;
};
edUnstable = let
pname = "ed";
version = "1.20-pre2";
src = fetchurl {
url = "http://download.savannah.gnu.org/releases/ed/ed-${version}.tar.lz";
hash = "sha256-bHTDeMhVNNo3qqDNoBNaBA+DHDa4WJpfQNcTvAUPgsY=";
};
in import ./generic.nix {
inherit pname version src meta;
};
}

View File

@ -2,7 +2,7 @@
, extra-cmake-modules, kdoctools
, qtscript, qtsvg, qtquickcontrols, qtwebengine
, krunner, shared-mime-info, kparts, knewstuff
, gpsd, perl
, gpsd, perl, protobuf3_21
}:
mkDerivation {
@ -15,7 +15,7 @@ mkDerivation {
outputs = [ "out" "dev" ];
nativeBuildInputs = [ extra-cmake-modules kdoctools perl ];
propagatedBuildInputs = [
qtscript qtsvg qtquickcontrols qtwebengine shared-mime-info krunner kparts
protobuf3_21 qtscript qtsvg qtquickcontrols qtwebengine shared-mime-info krunner kparts
knewstuff gpsd
];
preConfigure = ''

View File

@ -0,0 +1,21 @@
diff -ur a/libdjvu/GBitmap.h b/libdjvu/GBitmap.h
--- a/libdjvu/GBitmap.h 2020-11-20 09:57:32.000000000 -0700
+++ b/libdjvu/GBitmap.h 2023-07-07 07:07:45.519912414 -0600
@@ -620,7 +620,7 @@
inline int
GBitmap::read_run(unsigned char *&data)
{
- register int z=*data++;
+ int z=*data++;
return (z>=RUNOVERFLOWVALUE)?
((z&~RUNOVERFLOWVALUE)<<8)|(*data++):z;
}
@@ -628,7 +628,7 @@
inline int
GBitmap::read_run(const unsigned char *&data)
{
- register int z=*data++;
+ int z=*data++;
return (z>=RUNOVERFLOWVALUE)?
((z&~RUNOVERFLOWVALUE)<<8)|(*data++):z;
}

View File

@ -30,6 +30,10 @@ stdenv.mkDerivation rec {
bash
];
# Remove uses of the `register` storage class specifier, which was removed in C++17.
# Fixes compilation with clang 16, which defaults to C++17.
patches = [ ./c++17-register-class.patch ];
enableParallelBuilding = true;
meta = with lib; {

View File

@ -39,7 +39,7 @@ stdenv.mkDerivation rec {
python3
];
propagatedBuildInputs = [
python3.pkgs.protobuf
(python3.pkgs.protobuf.override { protobuf = protobuf; })
python3.pkgs.numpy
];

View File

@ -9,6 +9,8 @@ let
python3' = python310.override {
packageOverrides = self: super: {
django = super.django_3;
sqlalchemy = super.sqlalchemy.overridePythonAttrs (oldAttrs: rec {
version = "1.3.24";
src = fetchPypi {

View File

@ -7,7 +7,6 @@
, flac
, libogg
, libvorbis
, grpcSupport ? false, grpc, which
, iceSupport ? true, zeroc-ice
, jackSupport ? false, libjack2
, pipewireSupport ? true, pipewire
@ -100,12 +99,10 @@ let
"-D Ice_HOME=${lib.getDev zeroc-ice};${lib.getLib zeroc-ice}"
"-D CMAKE_PREFIX_PATH=${lib.getDev zeroc-ice};${lib.getLib zeroc-ice}"
"-D Ice_SLICE_DIR=${lib.getDev zeroc-ice}/share/ice/slice"
]
++ lib.optional grpcSupport "-D grpc=ON";
];
buildInputs = [ libcap ]
++ lib.optional iceSupport zeroc-ice
++ lib.optionals grpcSupport [ grpc which ];
++ lib.optional iceSupport zeroc-ice;
} source;
source = rec {

View File

@ -21,11 +21,11 @@ let
self = python3Packages.buildPythonApplication rec {
pname = "mercurial${lib.optionalString fullBuild "-full"}";
version = "6.5";
version = "6.5.1";
src = fetchurl {
url = "https://mercurial-scm.org/release/mercurial-${version}.tar.gz";
sha256 = "sha256-pWA9DTlev2f+XSeruzvTf8wBhx7POUx5NnLSweaL5+c=";
sha256 = "sha256-M/fejYs2B/orQIzeS4cl4RfrCtQZJqeH6qtAnKik/C8=";
};
format = "other";
@ -35,7 +35,7 @@ let
cargoDeps = if rustSupport then rustPlatform.fetchCargoTarball {
inherit src;
name = "mercurial-${version}";
sha256 = "sha256-umjOU3OmTdPmLS4IWncqmKxSa6J4KXwTlGhylFt6TQo=";
sha256 = "sha256-tPv0UeZOsHDGKzXWeA/fFio7d3EN+KGioDu/1WH1drc=";
sourceRoot = "mercurial-${version}/rust";
} else null;
cargoRoot = if rustSupport then "rust" else null;

View File

@ -246,10 +246,13 @@ if [[ -e @out@/nix-support/cc-wrapper-hook ]]; then
fi
if (( "${NIX_CC_USE_RESPONSE_FILE:-@use_response_file_by_default@}" >= 1 )); then
exec @prog@ @<(printf "%q\n" \
responseFile=$(mktemp --tmpdir cc-params.XXXXXX)
trap 'rm -f -- "$responseFile"' EXIT
printf "%q\n" \
${extraBefore+"${extraBefore[@]}"} \
${params+"${params[@]}"} \
${extraAfter+"${extraAfter[@]}"})
${extraAfter+"${extraAfter[@]}"} > "$responseFile"
@prog@ "@$responseFile"
else
exec @prog@ \
${extraBefore+"${extraBefore[@]}"} \

View File

@ -51,6 +51,8 @@
# the derivation at which the `-B` and `-L` flags added by `useCcForLibs` will point
, gccForLibs ? if useCcForLibs then cc else null
, fortify-headers ? null
, includeFortifyHeaders ? null
}:
with lib;
@ -65,6 +67,10 @@ let
stdenv = stdenvNoCC;
inherit (stdenv) hostPlatform targetPlatform;
includeFortifyHeaders' = if includeFortifyHeaders != null
then includeFortifyHeaders
else targetPlatform.libc == "musl";
# Prefix for binaries. Customarily ends with a dash separator.
#
# TODO(@Ericson2314) Make unconditional, or optional but always true by
@ -165,6 +171,8 @@ let
stdenv.targetPlatform.darwinMinVersionVariable;
in
assert includeFortifyHeaders' -> fortify-headers != null;
# Ensure bintools matches
assert libc_bin == bintools.libc_bin;
assert libc_dev == bintools.libc_dev;
@ -414,6 +422,16 @@ stdenv.mkDerivation {
echo "${libc_lib}" > $out/nix-support/orig-libc
echo "${libc_dev}" > $out/nix-support/orig-libc-dev
''
# fortify-headers is a set of wrapper headers that augment libc
# and use #include_next to pass through to libc's true
# implementations, so must appear before them in search order.
# in theory a correctly placed -idirafter could be used, but in
# practice the compiler may have been built with a --with-headers
# like option that forces the libc headers before all -idirafter,
# hence -isystem here.
+ optionalString includeFortifyHeaders' ''
echo "-isystem ${fortify-headers}/include" >> $out/nix-support/libc-cflags
'')
##

View File

@ -52,6 +52,9 @@ assert (args' ? vendorHash && args' ? vendorSha256) -> throw "both `vendorHash`
let
args = removeAttrs args' [ "overrideModAttrs" "vendorSha256" "vendorHash" ];
GO111MODULE = "on";
GOTOOLCHAIN = "local";
goModules = if (vendorHash == null) then "" else
(stdenv.mkDerivation {
name = "${name}-go-modules";
@ -60,6 +63,7 @@ let
inherit (args) src;
inherit (go) GOOS GOARCH;
inherit GO111MODULE GOTOOLCHAIN;
# The following inheritence behavior is not trivial to expect, and some may
# argue it's not ideal. Changing it may break vendor hashes in Nixpkgs and
@ -73,8 +77,6 @@ let
postBuild = args.modPostBuild or "";
sourceRoot = args.sourceRoot or "";
GO111MODULE = "on";
impureEnvVars = lib.fetchers.proxyImpureEnvVars ++ [
"GIT_PROXY_COMMAND"
"SOCKS_SERVER"
@ -85,6 +87,9 @@ let
runHook preConfigure
export GOCACHE=$TMPDIR/go-cache
export GOPATH="$TMPDIR/go"
# fixes 'GOPROXY list is not the empty string, but contains no entries'
# "https://proxy.golang.org,direct" is the go default
export GOPROXY="''${GOPROXY:-"https://proxy.golang.org,direct"}" # respect impureEnvVars
cd "${modRoot}"
runHook postConfigure
'';
@ -149,9 +154,8 @@ let
inherit (go) GOOS GOARCH;
GO111MODULE = "on";
GOFLAGS = lib.optionals (!proxyVendor) [ "-mod=vendor" ] ++ lib.optionals (!allowGoReference) [ "-trimpath" ];
inherit CGO_ENABLED enableParallelBuilding;
inherit CGO_ENABLED enableParallelBuilding GO111MODULE GOTOOLCHAIN;
configurePhase = args.configurePhase or (''
runHook preConfigure

View File

@ -86,6 +86,7 @@ let
inherit CGO_ENABLED enableParallelBuilding;
GO111MODULE = "off";
GOTOOLCHAIN = "local";
GOFLAGS = lib.optionals (!allowGoReference) [ "-trimpath" ];
GOARM = toString (lib.intersectLists [(stdenv.hostPlatform.parsed.cpu.version or "")] ["5" "6" "7"]);

View File

@ -1,5 +1,4 @@
{ stdenv
, targetPackages
{ targetPackages
, lib
, makeSetupHook
, dieHook
@ -11,9 +10,7 @@
makeSetupHook {
name = "make-binary-wrapper-hook";
propagatedBuildInputs = [ dieHook ]
# https://github.com/NixOS/nixpkgs/issues/148189
++ lib.optional (stdenv.isDarwin && stdenv.isAarch64) cc;
propagatedBuildInputs = [ dieHook ];
substitutions = {
cc = "${cc}/bin/${cc.targetPrefix}cc ${lib.escapeShellArgs (map (s: "-fsanitize=${s}") sanitizers)}";

View File

@ -11,11 +11,12 @@ fixupOutputHooks+=(patchShebangsAuto)
# Run patch shebangs on a directory or file.
# Can take multiple paths as arguments.
# patchShebangs [--build | --host] PATH...
# patchShebangs [--build | --host | --update] [--] PATH...
# Flags:
# --build : Lookup commands available at build-time
# --host : Lookup commands available at runtime
# --update : Update shebang paths that are in Nix store
# Example use cases,
# $ patchShebangs --host /nix/store/...-hello-1.0/bin
@ -23,14 +24,35 @@ fixupOutputHooks+=(patchShebangsAuto)
patchShebangs() {
local pathName
local update
if [[ "$1" == "--host" ]]; then
pathName=HOST_PATH
shift
elif [[ "$1" == "--build" ]]; then
pathName=PATH
shift
fi
while [[ $# -gt 0 ]]; do
case "$1" in
--host)
pathName=HOST_PATH
shift
;;
--build)
pathName=PATH
shift
;;
--update)
update=true
shift
;;
--)
shift
break
;;
-*|--*)
echo "Unknown option $1 supplied to patchShebangs" >&2
return 1
;;
*)
break
;;
esac
done
echo "patching script interpreter paths in $@"
local f
@ -93,7 +115,7 @@ patchShebangs() {
newInterpreterLine="$newPath $args"
newInterpreterLine=${newInterpreterLine%${newInterpreterLine##*[![:space:]]}}
if [[ -n "$oldPath" && "${oldPath:0:${#NIX_STORE}}" != "$NIX_STORE" ]]; then
if [[ -n "$oldPath" && ( "$update" == true || "${oldPath:0:${#NIX_STORE}}" != "$NIX_STORE" ) ]]; then
if [[ -n "$newPath" && "$newPath" != "$oldPath" ]]; then
echo "$f: interpreter directive changed from \"$oldInterpreterLine\" to \"$newInterpreterLine\""
# escape the escape chars so that sed doesn't interpret them

View File

@ -1,90 +0,0 @@
# This setup hook strips libraries and executables in the fixup phase.
fixupOutputHooks+=(_doStrip)
_doStrip() {
# We don't bother to strip build platform code because it shouldn't make it
# to $out anyways---if it does, that's a bigger problem that a lack of
# stripping will help catch.
local -ra flags=(dontStripHost dontStripTarget)
local -ra debugDirs=(stripDebugList stripDebugListTarget)
local -ra allDirs=(stripAllList stripAllListTarget)
local -ra stripCmds=(STRIP STRIP_FOR_TARGET)
local -ra ranlibCmds=(RANLIB RANLIB_FOR_TARGET)
# TODO(structured-attrs): This doesn't work correctly if one of
# the items in strip*List or strip*Flags contains a space,
# even with structured attrs enabled. This is OK for now
# because very few packages set any of these, and it doesn't
# affect any of them.
#
# After __structuredAttrs = true is universal, come back and
# push arrays all the way through this logic.
# Strip only host paths by default. Leave targets as is.
stripDebugList=${stripDebugList[*]:-lib lib32 lib64 libexec bin sbin}
stripDebugListTarget=${stripDebugListTarget[*]:-}
stripAllList=${stripAllList[*]:-}
stripAllListTarget=${stripAllListTarget[*]:-}
local i
for i in ${!stripCmds[@]}; do
local -n flag="${flags[$i]}"
local -n debugDirList="${debugDirs[$i]}"
local -n allDirList="${allDirs[$i]}"
local -n stripCmd="${stripCmds[$i]}"
local -n ranlibCmd="${ranlibCmds[$i]}"
# `dontStrip` disables them all
if [[ "${dontStrip-}" || "${flag-}" ]] || ! type -f "${stripCmd-}" 2>/dev/null 1>&2
then continue; fi
stripDirs "$stripCmd" "$ranlibCmd" "$debugDirList" "${stripDebugFlags[*]:--S -p}"
stripDirs "$stripCmd" "$ranlibCmd" "$allDirList" "${stripAllFlags[*]:--s -p}"
done
}
stripDirs() {
local cmd="$1"
local ranlibCmd="$2"
local paths="$3"
local stripFlags="$4"
local pathsNew=
[ -z "$cmd" ] && echo "stripDirs: Strip command is empty" 1>&2 && exit 1
[ -z "$ranlibCmd" ] && echo "stripDirs: Ranlib command is empty" 1>&2 && exit 1
local p
for p in ${paths}; do
if [ -e "$prefix/$p" ]; then
pathsNew="${pathsNew} $prefix/$p"
fi
done
paths=${pathsNew}
if [ -n "${paths}" ]; then
echo "stripping (with command $cmd and flags $stripFlags) in $paths"
local striperr
striperr="$(mktemp 'striperr.XXXXXX')"
# Do not strip lib/debug. This is a directory used by setup-hooks/separate-debug-info.sh.
find $paths -type f -a '!' -path "$prefix/lib/debug/*" -print0 |
# Make sure we process files under symlinks only once. Otherwise
# 'strip` can corrupt files when writes to them in parallel:
# https://github.com/NixOS/nixpkgs/issues/246147#issuecomment-1657072039
xargs -r -0 -n1 -- realpath -z | sort -u -z |
xargs -r -0 -n1 -P "$NIX_BUILD_CORES" -- $cmd $stripFlags 2>"$striperr" || exit_code=$?
# xargs exits with status code 123 if some but not all of the
# processes fail. We don't care if some of the files couldn't
# be stripped, so ignore specifically this code.
[[ "$exit_code" = 123 || -z "$exit_code" ]] || (cat "$striperr" 1>&2 && exit 1)
rm "$striperr"
# 'strip' does not normally preserve archive index in .a files.
# This usually causes linking failures against static libs like:
# ld: ...-i686-w64-mingw32-stage-final-gcc-13.0.0-lib/i686-w64-mingw32/lib/libstdc++.dll.a:
# error adding symbols: archive has no index; run ranlib to add one
# Restore the index by running 'ranlib'.
find $paths -name '*.a' -type f -exec $ranlibCmd '{}' \; 2>/dev/null
fi
}

View File

@ -65,9 +65,14 @@ stripDirs() {
if [ -n "${paths}" ]; then
echo "stripping (with command $cmd and flags $stripFlags) in $paths"
local striperr
striperr="$(mktemp 'striperr.XXXXXX')"
striperr="$(mktemp --tmpdir="$TMPDIR" 'striperr.XXXXXX')"
# Do not strip lib/debug. This is a directory used by setup-hooks/separate-debug-info.sh.
find $paths -type f -a '!' -path "$prefix/lib/debug/*" -print0 |
# Make sure we process files under symlinks only once. Otherwise
# 'strip` can corrupt files when writes to them in parallel:
# https://github.com/NixOS/nixpkgs/issues/246147#issuecomment-1657072039
xargs -r -0 -n1 -- realpath -z | sort -u -z |
xargs -r -0 -n1 -P "$NIX_BUILD_CORES" -- $cmd $stripFlags 2>"$striperr" || exit_code=$?
# xargs exits with status code 123 if some but not all of the
# processes fail. We don't care if some of the files couldn't

View File

@ -92,12 +92,7 @@ rec {
passAsFile = [ "content" ];
} else {
contentPath = content;
}) // lib.optionalAttrs (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isAarch64) {
# post-link-hook expects codesign_allocate to be in PATH
# https://github.com/NixOS/nixpkgs/issues/154203
# https://github.com/NixOS/nixpkgs/issues/148189
nativeBuildInputs = [ stdenv.cc.bintools ];
} // lib.optionalAttrs (nameOrPath == "/bin/${name}") {
}) // lib.optionalAttrs (nameOrPath == "/bin/${name}") {
meta.mainProgram = name;
}) ''
${compileScript}

View File

@ -48,17 +48,16 @@ with lib;
with builtins;
let majorVersion = "10";
version = "${majorVersion}.4.0";
version = "${majorVersion}.5.0";
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
patches = [
# Fix https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80431
../fix-bug-80431.patch
../11/fix-struct-redefinition-on-glibc-2.36.patch
] ++ optional (targetPlatform != hostPlatform) ../libstdc++-target.patch
++ optional noSysDirs ../no-sys-dirs.patch
++ optional (noSysDirs && hostPlatform.isRiscV) ../no-sys-dirs-riscv.patch
++ optional noSysDirs ../no-sys-dirs-riscv.patch
/* ++ optional (hostPlatform != buildPlatform) (fetchpatch { # XXX: Refine when this should be applied
url = "https://git.busybox.net/buildroot/plain/package/gcc/${version}/0900-remove-selftests.patch?id=11271540bfe6adafbc133caf6b5b902a816f5f02";
sha256 = ""; # TODO: uncomment and check hash when available.
@ -150,7 +149,7 @@ lib.pipe ((callFile ../common/builder.nix {}) ({
src = fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-${version}.tar.xz";
sha256 = "1wg4xdizkksmwi66mvv2v4pk3ja8x64m7v9gzhykzd3wrmdpsaf9";
hash = "sha256-JRCVQ/30bzl8NHtdi3osflaUpaUczkucbh6opxyjB8E=";
};
inherit patches;

View File

@ -1,41 +0,0 @@
From d2356ebb0084a0d80dbfe33040c9afe938c15d19 Mon Sep 17 00:00:00 2001
From: Martin Liska <mliska@suse.cz>
Date: Mon, 11 Jul 2022 22:03:14 +0200
Subject: [PATCH] libsanitizer: cherry-pick 9cf13067cb5088626ba7 from upstream
9cf13067cb5088626ba7ee1ec4c42ec59c7995a0 [sanitizer] Remove #include <linux/fs.h> to resolve fsconfig_command/mount_attr conflict with glibc 2.36
(cherry picked from commit 2701442d0cf6292f6624443c15813d6d1a3562fe)
---
.../sanitizer_platform_limits_posix.cpp | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
index 025e575b5bc7..5743516c0460 100644
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
@@ -72,7 +72,9 @@
#include <sys/vt.h>
#include <linux/cdrom.h>
#include <linux/fd.h>
+#if SANITIZER_ANDROID
#include <linux/fs.h>
+#endif
#include <linux/hdreg.h>
#include <linux/input.h>
#include <linux/ioctl.h>
@@ -828,10 +830,10 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr);
unsigned IOCTL_EVIOCGPROP = IOCTL_NOT_PRESENT;
unsigned IOCTL_EVIOCSKEYCODE_V2 = IOCTL_NOT_PRESENT;
#endif
- unsigned IOCTL_FS_IOC_GETFLAGS = FS_IOC_GETFLAGS;
- unsigned IOCTL_FS_IOC_GETVERSION = FS_IOC_GETVERSION;
- unsigned IOCTL_FS_IOC_SETFLAGS = FS_IOC_SETFLAGS;
- unsigned IOCTL_FS_IOC_SETVERSION = FS_IOC_SETVERSION;
+ unsigned IOCTL_FS_IOC_GETFLAGS = _IOR('f', 1, long);
+ unsigned IOCTL_FS_IOC_GETVERSION = _IOR('v', 1, long);
+ unsigned IOCTL_FS_IOC_SETFLAGS = _IOW('f', 2, long);
+ unsigned IOCTL_FS_IOC_SETVERSION = _IOW('v', 2, long);
unsigned IOCTL_GIO_CMAP = GIO_CMAP;
unsigned IOCTL_GIO_FONT = GIO_FONT;
unsigned IOCTL_GIO_UNIMAP = GIO_UNIMAP;

View File

@ -55,7 +55,7 @@ with lib;
with builtins;
let majorVersion = "13";
version = "${majorVersion}.1.0";
version = "${majorVersion}.2.0";
disableBootstrap = !stdenv.hostPlatform.isDarwin && !profiledCompiler;
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
@ -63,7 +63,7 @@ let majorVersion = "13";
patches =
optional (targetPlatform != hostPlatform) ../libstdc++-target.patch
++ optional noSysDirs ../gcc-12-no-sys-dirs.patch
++ optional noSysDirs ../no-sys-dirs-riscv.patch
++ optional noSysDirs ./no-sys-dirs-riscv.patch
++ [
../gnat-cflags-11.patch
../gcc-12-gfortran-driving.patch
@ -73,8 +73,8 @@ let majorVersion = "13";
# a foreign one: https://github.com/iains/gcc-12-branch/issues/18
++ optional (stdenv.isDarwin && stdenv.isAarch64 && buildPlatform == hostPlatform && hostPlatform == targetPlatform) (fetchpatch {
name = "gcc-13-darwin-aarch64-support.patch";
url = "https://github.com/Homebrew/formula-patches/raw/5c206c47e2a08d522ec9795bb314346fff5fc4c5/gcc/gcc-13.1.0.diff";
sha256 = "sha256-sMgA7nwE2ULa54t5g6VE6eJQYa69XvQrefi9U9f2t4g=";
url = "https://raw.githubusercontent.com/Homebrew/formula-patches/3c5cbc8e9cf444a1967786af48e430588e1eb481/gcc/gcc-13.2.0.diff";
sha256 = "sha256-Y5r3U3dwAFG6+b0TNCFd18PNxYu2+W/5zDbZ5cHvv+U=";
})
++ optional langD ../libphobos.patch
@ -201,7 +201,7 @@ lib.pipe ((callFile ../common/builder.nix {}) ({
src = fetchurl {
url = "mirror://gcc/releases/gcc-${version}/gcc-${version}.tar.xz";
sha256 = "sha256-YdaE8Kpedqxlha2ImKJCeq3ol57V5/hUkihsTfwT7oY=";
hash = "sha256-4nXnZEKmBnNBon8Exca4PYYTFEAEwEE1KIY9xrXHQ9o=";
};
inherit patches;

View File

@ -0,0 +1,13 @@
--- a/gcc/config/riscv/linux.h
+++ b/gcc/config/riscv/linux.h
@@ -69,9 +69,5 @@
#define TARGET_ASM_FILE_END file_end_indicate_exec_stack
-#define STARTFILE_PREFIX_SPEC \
- "/lib" XLEN_SPEC "/" ABI_SPEC "/ " \
- "/usr/lib" XLEN_SPEC "/" ABI_SPEC "/ " \
- "/lib/ " \
- "/usr/lib/ "
+#define STARTFILE_PREFIX_SPEC ""

View File

@ -166,7 +166,8 @@ stdenv.mkDerivation rec {
runHook preInstall
mkdir -p $GOROOT_FINAL
cp -a bin pkg src lib misc api doc $GOROOT_FINAL
ln -s $GOROOT_FINAL/bin $out/bin
mkdir -p $out/bin
ln -s $GOROOT_FINAL/bin/* $out/bin
runHook postInstall
'';

View File

@ -166,7 +166,8 @@ stdenv.mkDerivation rec {
runHook preInstall
mkdir -p $GOROOT_FINAL
cp -a bin pkg src lib misc api doc $GOROOT_FINAL
ln -s $GOROOT_FINAL/bin $out/bin
mkdir -p $out/bin
ln -s $GOROOT_FINAL/bin/* $out/bin
runHook postInstall
'';

View File

@ -46,11 +46,11 @@ let
in
stdenv.mkDerivation rec {
pname = "go";
version = "1.20.6";
version = "1.20.7";
src = fetchurl {
url = "https://go.dev/dl/go${version}.src.tar.gz";
hash = "sha256-Yu5bxvtVuLro9wXgy434bWRTYmtOz5MnnihnCS4Lf3A=";
hash = "sha256-LF7pyeweczsNu8K9/tP2IwblHYFyvzj09OVCsnUg9Zc=";
};
strictDeps = true;
@ -158,7 +158,8 @@ stdenv.mkDerivation rec {
runHook preInstall
mkdir -p $GOROOT_FINAL
cp -a bin pkg src lib misc api doc $GOROOT_FINAL
ln -s $GOROOT_FINAL/bin $out/bin
mkdir -p $out/bin
ln -s $GOROOT_FINAL/bin/* $out/bin
runHook postInstall
'';

View File

@ -0,0 +1,183 @@
{ lib
, stdenv
, fetchurl
, tzdata
, substituteAll
, iana-etc
, Security
, Foundation
, xcbuild
, mailcap
, buildPackages
, pkgsBuildTarget
, threadsCross
, testers
, skopeo
, buildGo121Module
}:
let
useGccGoBootstrap = stdenv.buildPlatform.isMusl || stdenv.buildPlatform.isRiscV;
goBootstrap = if useGccGoBootstrap then buildPackages.gccgo12 else buildPackages.callPackage ./bootstrap117.nix { };
skopeoTest = skopeo.override { buildGoModule = buildGo121Module; };
goarch = platform: {
"aarch64" = "arm64";
"arm" = "arm";
"armv5tel" = "arm";
"armv6l" = "arm";
"armv7l" = "arm";
"i686" = "386";
"mips" = "mips";
"mips64el" = "mips64le";
"mipsel" = "mipsle";
"powerpc64le" = "ppc64le";
"riscv64" = "riscv64";
"s390x" = "s390x";
"x86_64" = "amd64";
}.${platform.parsed.cpu.name} or (throw "Unsupported system: ${platform.parsed.cpu.name}");
# We need a target compiler which is still runnable at build time,
# to handle the cross-building case where build != host == target
targetCC = pkgsBuildTarget.targetPackages.stdenv.cc;
isCross = stdenv.buildPlatform != stdenv.targetPlatform;
in
stdenv.mkDerivation rec {
pname = "go";
version = "1.21rc4";
src = fetchurl {
url = "https://go.dev/dl/go${version}.src.tar.gz";
hash = "sha256-IyTyDxERKuw+XV5CjQRoYaNOT5neCrgqjZFNJrj7Af0=";
};
strictDeps = true;
buildInputs = [ ]
++ lib.optionals stdenv.isLinux [ stdenv.cc.libc.out ]
++ lib.optionals (stdenv.hostPlatform.libc == "glibc") [ stdenv.cc.libc.static ];
depsTargetTargetPropagated = lib.optionals stdenv.targetPlatform.isDarwin [ Foundation Security xcbuild ];
depsBuildTarget = lib.optional isCross targetCC;
depsTargetTarget = lib.optional stdenv.targetPlatform.isWindows threadsCross.package;
postPatch = ''
patchShebangs .
'';
patches = [
(substituteAll {
src = ./iana-etc-1.17.patch;
iana = iana-etc;
})
# Patch the mimetype database location which is missing on NixOS.
# but also allow static binaries built with NixOS to run outside nix
(substituteAll {
src = ./mailcap-1.17.patch;
inherit mailcap;
})
# prepend the nix path to the zoneinfo files but also leave the original value for static binaries
# that run outside a nix server
(substituteAll {
src = ./tzdata-1.19.patch;
inherit tzdata;
})
./remove-tools-1.11.patch
./go_no_vendor_checks-1.21.patch
];
GOOS = stdenv.targetPlatform.parsed.kernel.name;
GOARCH = goarch stdenv.targetPlatform;
# GOHOSTOS/GOHOSTARCH must match the building system, not the host system.
# Go will nevertheless build a for host system that we will copy over in
# the install phase.
GOHOSTOS = stdenv.buildPlatform.parsed.kernel.name;
GOHOSTARCH = goarch stdenv.buildPlatform;
# {CC,CXX}_FOR_TARGET must be only set for cross compilation case as go expect those
# to be different from CC/CXX
CC_FOR_TARGET =
if isCross then
"${targetCC}/bin/${targetCC.targetPrefix}cc"
else
null;
CXX_FOR_TARGET =
if isCross then
"${targetCC}/bin/${targetCC.targetPrefix}c++"
else
null;
GOARM = toString (lib.intersectLists [ (stdenv.hostPlatform.parsed.cpu.version or "") ] [ "5" "6" "7" ]);
GO386 = "softfloat"; # from Arch: don't assume sse2 on i686
CGO_ENABLED = 1;
GOROOT_BOOTSTRAP = if useGccGoBootstrap then goBootstrap else "${goBootstrap}/share/go";
buildPhase = ''
runHook preBuild
export GOCACHE=$TMPDIR/go-cache
# this is compiled into the binary
export GOROOT_FINAL=$out/share/go
export PATH=$(pwd)/bin:$PATH
${lib.optionalString isCross ''
# Independent from host/target, CC should produce code for the building system.
# We only set it when cross-compiling.
export CC=${buildPackages.stdenv.cc}/bin/cc
''}
ulimit -a
pushd src
./make.bash
popd
runHook postBuild
'';
preInstall = ''
# Contains the wrong perl shebang when cross compiling,
# since it is not used for anything we can deleted as well.
rm src/regexp/syntax/make_perl_groups.pl
'' + (if (stdenv.buildPlatform.system != stdenv.hostPlatform.system) then ''
mv bin/*_*/* bin
rmdir bin/*_*
${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
rm -rf pkg/${GOHOSTOS}_${GOHOSTARCH} pkg/tool/${GOHOSTOS}_${GOHOSTARCH}
''}
'' else lib.optionalString (stdenv.hostPlatform.system != stdenv.targetPlatform.system) ''
rm -rf bin/*_*
${lib.optionalString (!(GOHOSTARCH == GOARCH && GOOS == GOHOSTOS)) ''
rm -rf pkg/${GOOS}_${GOARCH} pkg/tool/${GOOS}_${GOARCH}
''}
'');
installPhase = ''
runHook preInstall
mkdir -p $GOROOT_FINAL
cp -a bin pkg src lib misc api doc $GOROOT_FINAL
mkdir -p $out/bin
ln -s $GOROOT_FINAL/bin/* $out/bin
runHook postInstall
'';
disallowedReferences = [ goBootstrap ];
passthru = {
inherit goBootstrap skopeoTest;
tests = {
skopeo = testers.testVersion { package = skopeoTest; };
};
};
meta = with lib; {
changelog = "https://go.dev/doc/devel/release#go${lib.versions.majorMinor version}";
description = "The Go Programming language";
homepage = "https://go.dev/";
license = licenses.bsd3;
maintainers = teams.golang.members;
platforms = platforms.darwin ++ platforms.linux;
};
}

View File

@ -0,0 +1,23 @@
Starting from go1.14, go verifes that vendor/modules.txt matches the requirements
and replacements listed in the main module go.mod file, and it is a hard failure if
vendor/modules.txt is missing.
Relax module consistency checks and switch back to pre go1.14 behaviour if
vendor/modules.txt is missing regardless of go version requirement in go.mod.
This has been ported from FreeBSD: https://reviews.freebsd.org/D24122
See https://github.com/golang/go/issues/37948 for discussion.
diff --git a/src/cmd/go/internal/modload/vendor.go b/src/cmd/go/internal/modload/vendor.go
index ffc79bb93f..2d0311975d 100644
--- a/src/cmd/go/internal/modload/vendor.go
+++ b/src/cmd/go/internal/modload/vendor.go
@@ -144,7 +144,7 @@ func checkVendorConsistency(index *modFileIndex, modFile *modfile.File) {
readVendorList(MainModules.mustGetSingleMainModule())
pre114 := false
- if gover.Compare(index.goVersion, "1.14") < 0 {
+ if gover.Compare(index.goVersion, "1.14") < 0 || (os.Getenv("GO_NO_VENDOR_CHECKS") == "1" && len(vendorMeta) == 0) {
// Go versions before 1.14 did not include enough information in
// vendor/modules.txt to check for consistency.
// If we know that we're on an earlier version, relax the consistency check.

View File

@ -11,26 +11,26 @@ let
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "11.48.21";
jdkVersion = "11.0.11";
sha256 =
if enableJavaFX then "18bd9cd66d6abc6f8c627bc70278dc8fd4860e138e1dc9e170eddb89727ccc7b"
else "0v0n7h7i04pvna41wpdq2k9qiy70sbbqzqzvazfdvgm3gb22asw6";
zuluVersion = "11.66.15";
jdkVersion = "11.0.20";
hash =
if enableJavaFX then "sha256-pVgCJkgYTlFeL7nkkMWLeJ/J8ELhgvWb7gzf3erZP7Y="
else "sha256-vKqxHP5Yb651g8bZ0xHGQ4Q1T7JjjrmgEuykw/Gh2f0=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "11.48.21";
jdkVersion = "11.0.11";
sha256 =
if enableJavaFX then "ef0de2705c6c2d586812f7f3736b70e22b069545b38034816016f9f264ad43f9"
else "066whglrxx81c95grv2kxdbvyh32728ixhml2v44ildh549n4lhc";
zuluVersion = "11.66.15";
jdkVersion = "11.0.20";
hash =
if enableJavaFX then "sha256-VoZo34SCUU+HHnTl6iLe0QBC+4VDkPP14N98oqSg9EQ="
else "sha256-djK8Kfikt9SSuT87x1p7YWMIlNuF0TZFYDWrKiTTiIU=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
@ -41,7 +41,7 @@ let
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) sha256;
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};

View File

@ -11,26 +11,26 @@ let
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "16.30.15";
jdkVersion = "16.0.1";
sha256 =
if enableJavaFX then "cbb3b96d80a0675893f21dc51ba3f532049c501bd7dc4c8d1ee930e63032c745"
else "1jihn125dmxr9y5h9jq89zywm3z6rbwv5q7msfzsf2wzrr13jh0z";
zuluVersion = "16.32.15";
jdkVersion = "16.0.2";
hash =
if enableJavaFX then "sha256-6URaSBNHQWLauO//kCuKXb4Z7AqyshWnoeJEyVRKgaY="
else "sha256-NXgBj/KixTknaCYbo3B+rOo11NImH5CDUIU0LhTCtMo=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "16.30.19";
jdkVersion = "16.0.1";
sha256 =
if enableJavaFX then "a49b23abfd83784d2ac935fc24e25ab7cb09b8ffc8e47c32ed446e05b8a21396"
else "1i0bcjx3acb5dhslf6cabdcnd6mrz9728vxw9hb4al5y3f5fll4w";
zuluVersion = "16.32.15";
jdkVersion = "16.0.2";
hash =
if enableJavaFX then "sha256-QuyhIAxUY3Vv1adGihW+LIsXtpDX2taCmFsMFj9o5vs="
else "sha256-3bUfDcLLyahLeURFAgLAVapBZHvqtam8GHbWTA6MQog=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
@ -41,7 +41,7 @@ let
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) sha256;
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};

View File

@ -1,36 +1,47 @@
{ lib, stdenv, fetchurl, unzip, setJavaClassPath }:
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-17-lts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "17.34.19";
jdkVersion = "17.0.3";
sha256 = "sha256-qImyxVC2y2QhxuVZwamKPyo46+n+7ytIFXpYI0e6w2c=";
zuluVersion = "17.44.15";
jdkVersion = "17.0.8";
hash =
if enableJavaFX then "sha256-gmDku/AkWzO+eDRitezM9wCtTYDrUMtXyMulxqi9tNI="
else "sha256-Ci18gBkAv/UUIQw9KlnfibcQMXwQRGx6K7L/NBB7b7Q=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "17.34.19";
jdkVersion = "17.0.3";
sha256 = "sha256-eaRX8Qa/Mqr9JhpHSEcf0Q9c4qmqLMgWqRhkEEwAjf8=";
zuluVersion = "17.44.15";
jdkVersion = "17.0.8";
hash =
if enableJavaFX then "sha256-mvyfqpnAoA05HJB9EBewW2MDuhQBOvp6svzyayV1irI="
else "sha256-8b81QY6DGXVOsTKM8QDzJnYjXV0ipCbYWaaz6oF2A6k=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
# Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK!
url = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-ca-jdk";
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-ca-jdk${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) sha256;
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};

View File

@ -1,36 +1,47 @@
{ lib, stdenv, fetchurl, unzip, setJavaClassPath }:
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-18-sts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "18.28.13";
jdkVersion = "18.0.0";
sha256 = "0hc5m3d4q3n7sighq3pxkdg93vsrgj1kzla1py9nfnm9pnj9l2kq";
zuluVersion = "18.32.13";
jdkVersion = "18.0.2.1";
hash =
if enableJavaFX then "sha256-ZVZ1gbpJwxTduq2PPOCKqbSl+shq2NTFgqG++OXvFcg="
else "sha256-uHPcyOgxUdTgzmIVRp/awtwve9zSt+1TZNef7DUuoRg=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "18.28.13";
jdkVersion = "18.0.0";
sha256 = "0ch4jp2d4pjvxbmbswvjwf7w2flajrvjg5f16ggiy80y8l0y15cm";
zuluVersion = "18.32.13";
jdkVersion = "18.0.2.1";
hash =
if enableJavaFX then "sha256-tNx0a1u9iamcN9VFOJ3eqDEA6C204dtIBJZvuAH2Vjk="
else "sha256-jAZDgxtWMq/74yKAxA69oOU0C9nXvKG5MjmZLsK04iM=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
# Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK!
url = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-ca-jdk";
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-ca-jdk${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) sha256;
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};

View File

@ -1,36 +1,47 @@
{ lib, stdenv, fetchurl, unzip, setJavaClassPath }:
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-19-sts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "19.30.11";
jdkVersion = "19.0.1";
sha256 = "1h0qj0xgpxjy506ikbgdn74pi4860lsnh5n3q3bayfmn0pxc5ksn";
zuluVersion = if enableJavaFX then "19.32.15" else "19.32.13";
jdkVersion = "19.0.2";
hash =
if enableJavaFX then "sha256-AwLcIId0gH5D6DUU8CgJ3qnKVQm28LXYirBeXBHwPYE="
else "sha256-KARXWumsY+OcqpEOV2EL9SsPni1nGSipjRji/Mn2KsE=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "19.30.11";
jdkVersion = "19.0.1";
sha256 = "0g8i371h5fv686xhiff0431sgvdk80lbp2lkz86jpfdv9lgg0qnk";
zuluVersion = if enableJavaFX then "19.32.15" else "19.32.13";
jdkVersion = "19.0.2";
hash =
if enableJavaFX then "sha256-/R2rrcBr64qPGEtvhruXBhPwnvurt/hiR1ICzZAdYxE="
else "sha256-F30FjZaLL756X/Xs6xjNwW9jds4pEATxoxOeeLL7Y5E=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
# Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK!
url = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-ca-jdk";
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-ca-jdk${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) sha256;
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};

View File

@ -1,36 +1,47 @@
{ lib, stdenv, fetchurl, unzip, setJavaClassPath }:
{ lib
, stdenv
, fetchurl
, unzip
, setJavaClassPath
, enableJavaFX ? false
}:
let
# Details from https://www.azul.com/downloads/?version=java-19-sts&os=macos&package=jdk
# Note that the latest build may differ by platform
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "20.30.11";
jdkVersion = "20.0.1";
sha256 = "0hg2n2mdbpxsgpw3c58w8y1f3im6schvfqahji352p9ljbdykzmy";
zuluVersion = "20.32.11";
jdkVersion = "20.0.2";
hash =
if enableJavaFX then "sha256-hyxQAivZAXtqMebe30L+EYa7p+TdSdKNYj7Rl/ZwRNQ="
else "sha256-Ev9KG6DvuBnsZrOguLsO1KQzudHCBcJNwKh45Inpnfo=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "20.30.11";
jdkVersion = "20.0.1";
sha256 = "0bc9h1y0b2azyfl3f5sqj19sh02xs995d1kdn55m4lfhc00rzr81";
zuluVersion = "20.32.11";
jdkVersion = "20.0.2";
hash =
if enableJavaFX then "sha256-iPQzZS4CwaoqT8cSzg4kWCT1OyGBSJLq+NETcbucLo4="
else "sha256-15uNZ6uMfSASV3QU2q2oA/jBk2PCHOfSjn1GY7/7qIY=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
# Ugh, unversioned URLs... I hope this doesn't change often enough to cause pain before we move to a Darwin source build of OpenJDK!
url = "http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
jdk = stdenv.mkDerivation rec {
pname = "zulu${dist.zuluVersion}-ca-jdk";
pname = "zulu${dist.zuluVersion}-${javaPackage}";
version = dist.jdkVersion;
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-ca-jdk${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) sha256;
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};

View File

@ -11,26 +11,26 @@ let
dist = {
x86_64-darwin = {
arch = "x64";
zuluVersion = "8.54.0.21";
jdkVersion = "8.0.292";
sha256 =
if enableJavaFX then "e671f8990229b1ca2a76faabb21ba2f1a9e1f7211392e0f657225559be9b05c8"
else "1pgl0bir4r5v349gkxk54k6v62w241q7vw4gjxhv2g6pfq6hv7in";
zuluVersion = "8.72.0.17";
jdkVersion = "8.0.382";
hash =
if enableJavaFX then "sha256-/x8FqygivzddXsOwIV8aj/u+LPXMmokgu97vLAVEv80="
else "sha256-3dTPIPGUeT6nb3gncNvEa4VTRyQIBJpp8oZadrT2ToE=";
};
aarch64-darwin = {
arch = "aarch64";
zuluVersion = "8.54.0.21";
jdkVersion = "8.0.292";
sha256 =
if enableJavaFX then "8e901075cde2c31f531a34e8321ea4201970936abf54240a232e9389952afe84"
else "05w89wfjlfbpqfjnv6wisxmaf13qb28b2223f9264jyx30qszw1c";
zuluVersion = "8.72.0.17";
jdkVersion = "8.0.382";
hash =
if enableJavaFX then "sha256-FkQ+0MzSZWUzc/HmiDVZEHGOrdKAVCdK5pm9wXXzzaU="
else "sha256-rN5AI4xAWppE4kJlzMod0JmGyHdHjTXYtx8/wOW6CFk=";
};
}."${stdenv.hostPlatform.system}";
jce-policies = fetchurl {
url = "https://web.archive.org/web/20211126120343/http://cdn.azul.com/zcek/bin/ZuluJCEPolicies.zip";
sha256 = "0nk7m0lgcbsvldq2wbfni2pzq8h818523z912i7v8hdcij5s48c0";
hash = "sha256-gCGii4ysQbRPFCH9IQoKCCL8r4jWLS5wo1sv9iioZ1o=";
};
javaPackage = if enableJavaFX then "ca-fx-jdk" else "ca-jdk";
@ -44,7 +44,7 @@ let
src = fetchurl {
url = "https://cdn.azul.com/zulu/bin/zulu${dist.zuluVersion}-${javaPackage}${dist.jdkVersion}-macosx_${dist.arch}.tar.gz";
inherit (dist) sha256;
inherit (dist) hash;
curlOpts = "-H Referer:https://www.azul.com/downloads/zulu/";
};

View File

@ -2,6 +2,7 @@
, stdenv
, callPackage
, cmake
, bash
, coreutils
, gnugrep
, perl
@ -133,7 +134,8 @@ let
sed < '${clang}/bin/clang' > "$targetFile" \
-e 's|^\s*exec|exec -a "$0"|g' \
-e 's|^\[\[ "${clang.cc}/bin/clang" = \*++ ]]|[[ "$0" = *++ ]]|' \
-e "s|${clang.cc}/bin/clang|$unwrappedClang|g"
-e "s|${clang.cc}/bin/clang|$unwrappedClang|g" \
-e "s|^\(\s*\)\($unwrappedClang\) \"@\\\$responseFile\"|\1argv0=\$0\n\1${bash}/bin/bash -c \"exec -a '\$argv0' \2 '@\$responseFile'\"|"
chmod a+x "$targetFile"
'';

View File

@ -1,6 +1,6 @@
addGuileLibPath () {
if test -d "$1/share/guile/site"; then
export GUILE_LOAD_PATH="${GUILE_LOAD_PATH-}${GUILE_LOAD_PATH:+:}$1/share/guile/site"
addToSearchPath GUILE_LOAD_PATH "$1/share/guile/site"
fi
}

View File

@ -1,18 +1,18 @@
addGuileLibPath () {
if test -d "$1/share/guile/site/2.0"; then
export GUILE_LOAD_PATH="${GUILE_LOAD_PATH-}${GUILE_LOAD_PATH:+:}$1/share/guile/site/2.0"
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site/2.0"
addToSearchPath GUILE_LOAD_PATH "$1/share/guile/site/2.0"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/share/guile/site/2.0"
elif test -d "$1/share/guile/site"; then
export GUILE_LOAD_PATH="${GUILE_LOAD_PATH-}${GUILE_LOAD_PATH:+:}$1/share/guile/site"
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site"
addToSearchPath GUILE_LOAD_PATH "$1/share/guile/site"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/share/guile/site"
fi
if test -d "$1/lib/guile/2.0/ccache"; then
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/lib/guile/2.0/ccache"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/lib/guile/2.0/ccache"
fi
if test -d "$1/lib/guile/2.0/site-ccache"; then
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/lib/guile/2.0/site-ccache"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/lib/guile/2.0/site-ccache"
fi
}

View File

@ -1,18 +1,18 @@
addGuileLibPath () {
if test -d "$1/share/guile/site/2.2"; then
export GUILE_LOAD_PATH="${GUILE_LOAD_PATH-}${GUILE_LOAD_PATH:+:}$1/share/guile/site/2.2"
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site/2.2"
addToSearchPath GUILE_LOAD_PATH "$1/share/guile/site/2.2"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/share/guile/site/2.2"
elif test -d "$1/share/guile/site"; then
export GUILE_LOAD_PATH="${GUILE_LOAD_PATH-}${GUILE_LOAD_PATH:+:}$1/share/guile/site"
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site"
addToSearchPath GUILE_LOAD_PATH "$1/share/guile/site"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/share/guile/site"
fi
if test -d "$1/lib/guile/2.2/ccache"; then
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/lib/guile/2.2/ccache"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/lib/guile/2.2/ccache"
fi
if test -d "$1/lib/guile/2.2/site-ccache"; then
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/lib/guile/2.2/site-ccache"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/lib/guile/2.2/site-ccache"
fi
}

View File

@ -1,24 +1,24 @@
addGuileLibPath () {
if test -d "$1/share/guile/site/3.0"; then
export GUILE_LOAD_PATH="${GUILE_LOAD_PATH-}${GUILE_LOAD_PATH:+:}$1/share/guile/site/3.0"
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site/3.0"
export GUILE_EXTENSIONS_PATH="${GUILE_EXTENSIONS_PATH-}${GUILE_EXTENSIONS_PATH:+:}$1/share/guile/site/3.0"
addToSearchPath GUILE_LOAD_PATH "$1/share/guile/site/3.0"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/share/guile/site/3.0"
addToSearchPath GUILE_EXTENSIONS_PATH "$1/share/guile/site/3.0"
elif test -d "$1/share/guile/site"; then
export GUILE_LOAD_PATH="${GUILE_LOAD_PATH-}${GUILE_LOAD_PATH:+:}$1/share/guile/site"
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/share/guile/site"
export GUILE_EXTENSIONS_PATH="${GUILE_EXTENSIONS_PATH-}${GUILE_EXTENSIONS_PATH:+:}$1/share/guile/site"
addToSearchPath GUILE_LOAD_PATH "$1/share/guile/site"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/share/guile/site"
addToSearchPath GUILE_EXTENSIONS_PATH "$1/share/guile/site"
fi
if test -d "$1/lib/guile/3.0/ccache"; then
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/lib/guile/3.0/ccache"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/lib/guile/3.0/ccache"
fi
if test -d "$1/lib/guile/3.0/site-ccache"; then
export GUILE_LOAD_COMPILED_PATH="${GUILE_LOAD_COMPILED_PATH-}${GUILE_LOAD_COMPILED_PATH:+:}$1/lib/guile/3.0/site-ccache"
addToSearchPath GUILE_LOAD_COMPILED_PATH "$1/lib/guile/3.0/site-ccache"
fi
if test -d "$1/lib/guile/3.0/extensions"; then
export GUILE_EXTENSIONS_PATH="${GUILE_EXTENSIONS_PATH-}${GUILE_EXTENSIONS_PATH:+:}$1/lib/guile/3.0/extensions"
addToSearchPath GUILE_EXTENSIONS_PATH "$1/lib/guile/3.0/extensions"
fi
}

View File

@ -1,9 +1,9 @@
self: super: with self;
self: dontUse: with self;
let
pythonInterpreter = super.python.pythonForBuild.interpreter;
pythonSitePackages = super.python.sitePackages;
pythonCheckInterpreter = super.python.interpreter;
pythonInterpreter = python.pythonForBuild.interpreter;
pythonSitePackages = python.sitePackages;
pythonCheckInterpreter = python.interpreter;
setuppy = ../run_setup.py;
in {
makePythonHook = args: pkgs.makeSetupHook ({passthru.provides.setupHook = true; } // args);

View File

@ -47,11 +47,12 @@
selfTargetTarget = pythonOnTargetForTarget.pkgs or {}; # There is no Python TargetTarget.
};
hooks = import ./hooks/default.nix;
keep = lib.extends hooks pythonPackagesFun;
keep = self: hooks self {};
optionalExtensions = cond: as: lib.optionals cond as;
pythonExtension = import ../../../top-level/python-packages.nix;
python2Extension = import ../../../top-level/python2-packages.nix;
extensions = lib.composeManyExtensions ([
hooks
pythonExtension
] ++ (optionalExtensions (!self.isPy3k) [
python2Extension
@ -61,7 +62,7 @@
aliases = self: super: lib.optionalAttrs config.allowAliases (import ../../../top-level/python-aliases.nix lib self super);
in makeScopeWithSplicing' {
inherit otherSplices keep;
f = lib.extends (lib.composeExtensions aliases extensions) keep;
f = lib.extends (lib.composeExtensions aliases extensions) pythonPackagesFun;
}) {
overrides = packageOverrides;
python = self;

View File

@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "rubygems";
version = "3.4.17";
version = "3.4.18";
src = fetchurl {
url = "https://rubygems.org/rubygems/rubygems-${version}.tgz";
hash = "sha256-SvqqlGPiqHeZQ0Mvulbgc5bM7E1O3HK7BtnbiscG0vE=";
hash = "sha256-+yHTJWedZNCkkRMIRT103QMTFJODlbJ2PwVbTghEo0M=";
};
patches = [

View File

@ -2,6 +2,7 @@
, stdenv
, fetchFromGitHub
, cmake
, gtest
, static ? stdenv.hostPlatform.isStatic
, cxxStandard ? null
}:
@ -18,13 +19,19 @@ stdenv.mkDerivation (finalAttrs: {
};
cmakeFlags = [
"-DABSL_BUILD_TEST_HELPERS=ON"
"-DABSL_USE_EXTERNAL_GOOGLETEST=ON"
"-DBUILD_SHARED_LIBS=${if static then "OFF" else "ON"}"
] ++ lib.optionals (cxxStandard != null) [
"-DCMAKE_CXX_STANDARD=${cxxStandard}"
];
strictDeps = true;
nativeBuildInputs = [ cmake ];
buildInputs = [ gtest ];
meta = with lib; {
description = "An open-source collection of C++ code designed to augment the C++ standard library";
homepage = "https://abseil.io/";

View File

@ -0,0 +1,18 @@
diff --git a/cmake_modules/FindProtobufAlt.cmake b/cmake_modules/FindProtobufAlt.cmake
index d29f757ae..61c6e16e1 100644
--- a/cmake_modules/FindProtobufAlt.cmake
+++ b/cmake_modules/FindProtobufAlt.cmake
@@ -22,11 +22,8 @@ else()
endif()
set(find_package_args)
-if(ProtobufAlt_FIND_VERSION)
- list(APPEND find_package_args ${ProtobufAlt_FIND_VERSION})
-endif()
if(ProtobufAlt_FIND_QUIETLY)
list(APPEND find_package_args QUIET)
endif()
-find_package(Protobuf ${find_package_args})
-set(ProtobufAlt_FOUND ${Protobuf_FOUND})
+find_package(protobuf ${find_package_args})
+set(ProtobufAlt_FOUND ${protobuf_FOUND})

View File

@ -39,11 +39,8 @@
, enableShared ? !stdenv.hostPlatform.isStatic
, enableFlight ? true
, enableJemalloc ? !stdenv.isDarwin
# boost/process is broken in 1.69 on darwin, but fixed in 1.70 and
# non-existent in older versions
# see https://github.com/boostorg/process/issues/55
, enableS3 ? (!stdenv.isDarwin) || (lib.versionOlder boost.version "1.69" || lib.versionAtLeast boost.version "1.70")
, enableGcs ? (!stdenv.isDarwin) && (lib.versionAtLeast grpc.cxxStandard "17") # google-cloud-cpp is not supported on darwin, needs to support C++17
, enableS3 ? true
, enableGcs ? !stdenv.isDarwin
}:
assert lib.asserts.assertMsg
@ -125,6 +122,7 @@ stdenv.mkDerivation rec {
patches = [
# patch to fix python-test
./darwin.patch
./cmake-find-protobuf.patch
];
nativeBuildInputs = [
@ -172,6 +170,7 @@ stdenv.mkDerivation rec {
'';
cmakeFlags = [
"-DCMAKE_FIND_PACKAGE_PREFER_CONFIG=ON"
"-DARROW_BUILD_SHARED=${if enableShared then "ON" else "OFF"}"
"-DARROW_BUILD_STATIC=${if enableShared then "OFF" else "ON"}"
"-DARROW_BUILD_TESTS=ON"

View File

@ -21,7 +21,7 @@
stdenv.mkDerivation rec {
pname = "roc-toolkit";
version = "0.2.4";
version = "0.2.5";
outputs = [ "out" "dev" ];
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
owner = "roc-streaming";
repo = "roc-toolkit";
rev = "v${version}";
hash = "sha256-x4+/MIFKcos9xWhvSNWdsUQA2oLiyYS0MJE60HY/3hQ=";
hash = "sha256-vosw4H3YTTCXdDOnQQYRNZgufPo1BxUtfg6jutArzTI=";
};
nativeBuildInputs = [

View File

@ -37,6 +37,9 @@ stdenv.mkDerivation rec {
hash = "sha256-a52Id7Nm3Mmmwv7eL58j6xovjlkpAO4KahVM/Q3H65w=";
})
];
postPatch = ''
substituteInPlace subprojects/curl.wrap --replace '[provides]' '[provide]'
'';
nativeBuildInputs = [ ninja pkg-config meson ];

View File

@ -0,0 +1,34 @@
{ lib
, stdenv
, fetchurl
}:
stdenv.mkDerivation {
pname = "fortify-headers";
version = "1.1alpine1";
# upstream only accessible via git - unusable during bootstrap, hence
# extract from the alpine package
src = fetchurl {
url = "https://dl-cdn.alpinelinux.org/alpine/v3.17/main/x86_64/fortify-headers-1.1-r1.apk";
name = "fortify-headers.tar.gz"; # ensure it's extracted as a .tar.gz
hash = "sha256-A67NzUv+dldARY+MTaoVnezTg+Es8ZK/b7XOxA6KzpI=";
};
installPhase = ''
runHook preInstall
mkdir -p $out
cp -r include/fortify $out/include
runHook postInstall
'';
meta = {
description = "Standalone header-based fortify-source implementation";
homepage = "https://git.2f30.org/fortify-headers";
license = lib.licenses.bsd0;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ ris ];
};
}

View File

@ -143,8 +143,9 @@ stdenv.mkDerivation (finalAttrs: {
pkg-config = testers.testMetaPkgConfig finalAttrs.finalPackage;
};
# gdk_pixbuf_moduledir variable from gdk-pixbuf-2.0.pc
moduleDir = "lib/gdk-pixbuf-2.0/2.10.0/loaders";
# gdk_pixbuf_binarydir and gdk_pixbuf_moduledir variables from gdk-pixbuf-2.0.pc
binaryDir = "lib/gdk-pixbuf-2.0/2.10.0";
moduleDir = "${finalAttrs.passthru.binaryDir}/loaders";
};
meta = with lib; {

View File

@ -12,14 +12,13 @@
(callPackage ./common.nix { inherit stdenv; } {
pname = "glibc-locales";
extraNativeBuildInputs = [ glibc ];
}).overrideAttrs(finalAttrs: previousAttrs: {
builder = ./locales-builder.sh;
outputs = [ "out" ];
extraNativeBuildInputs = [ glibc ];
LOCALEDEF_FLAGS = [
(if stdenv.hostPlatform.isLittleEndian
then "--little-endian"
@ -60,7 +59,11 @@
echo SUPPORTED-LOCALES='${toString locales}' > ../glibc-2*/localedata/SUPPORTED
'';
enableParallelBuilding = true;
# Current `nixpkgs` way of building locales is not compatible with
# parallel install. `locale-archive` is updated in parallel with
# multiple `localedef` processes and causes non-deterministic result:
# https://github.com/NixOS/nixpkgs/issues/245360
enableParallelBuilding = false;
makeFlags = (previousAttrs.makeFlags or []) ++ [
"localedata/install-locales"

View File

@ -1,19 +0,0 @@
https://gmplib.org/repo/gmp-6.2/raw-rev/561a9c25298e
diff -r e1fd9db13b47 -r 561a9c25298e mpz/inp_raw.c
--- a/mpz/inp_raw.c Tue Dec 22 23:49:51 2020 +0100
+++ b/mpz/inp_raw.c Thu Oct 21 19:06:49 2021 +0200
@@ -88,8 +88,11 @@
abs_csize = ABS (csize);
+ if (UNLIKELY (abs_csize > ~(mp_bitcnt_t) 0 / 8))
+ return 0; /* Bit size overflows */
+
/* round up to a multiple of limbs */
- abs_xsize = BITS_TO_LIMBS (abs_csize*8);
+ abs_xsize = BITS_TO_LIMBS ((mp_bitcnt_t) abs_csize * 8);
if (abs_xsize != 0)
{

View File

@ -13,15 +13,13 @@ let inherit (lib) optional; in
let self = stdenv.mkDerivation rec {
pname = "gmp${lib.optionalString cxx "-with-cxx"}";
version = "6.2.1";
version = "6.3.0";
src = fetchurl { # we need to use bz2, others aren't in bootstrapping stdenv
urls = [ "mirror://gnu/gmp/gmp-${version}.tar.bz2" "ftp://ftp.gmplib.org/pub/gmp-${version}/gmp-${version}.tar.bz2" ];
sha256 = "0z2ddfiwgi0xbf65z4fg4hqqzlhv0cc6hdcswf3c6n21xdmk5sga";
hash = "sha256-rCghGnz7YJuuLiyNYFjWbI/pZDT3QM9v4uR7AA0cIMs=";
};
patches = [ ./6.2.1-CVE-2021-43618.patch ];
#outputs TODO: split $cxx due to libstdc++ dependency
# maybe let ghc use a version with *.so shared with rest of nixpkgs and *.a added
# - see #5855 for related discussion

View File

@ -6,27 +6,26 @@
# files.
let
rev = "63acb96f92473ceb5e21d873d7c0aee266b3d6d3";
rev = "d4e37b5868ef910e3e52744c34408084bb13051c";
# Don't use fetchgit as this is needed during Aarch64 bootstrapping
configGuess = fetchurl {
name = "config.guess-${builtins.substring 0 7 rev}";
url = "https://git.savannah.gnu.org/cgit/config.git/plain/config.guess?id=${rev}";
sha256 = "049qgfh4xjd4fxd7ygm1phd5faqphfvhfcv8dsdldprsp86lf55v";
sha256 = "191czpnbc1nxrygg8fd3839y1f4m9x43rp57vgrsas6p07zzh3c1";
};
configSub = fetchurl {
name = "config.sub-${builtins.substring 0 7 rev}";
url = "https://git.savannah.gnu.org/cgit/config.git/plain/config.sub?id=${rev}";
sha256 = "1rk30y27mzls49wyfdb5jhzjr08hkxl7xqhnxmhcmkvqlmpsjnxl";
sha256 = "0148p54gw10p6sk2rn3gi9vvqm89rk8kcvl9335ckayhanx31381";
};
in stdenv.mkDerivation {
pname = "gnu-config";
version = "2023-01-21";
version = "2023-07-31";
buildCommand = ''
mkdir -p $out
cp ${configGuess} $out/config.guess
cp ${configSub} $out/config.sub
chmod +x $out/config.*
install -Dm755 ${configGuess} $out/config.guess
install -Dm755 ${configSub} $out/config.sub
'';
meta = with lib; {

View File

@ -1,5 +1,6 @@
{ config, lib, stdenv, fetchurl, zlib, lzo, libtasn1, nettle, pkg-config, lzip
, perl, gmp, autoconf, automake, libidn2, libiconv
, fetchpatch, texinfo
, unbound, dns-root-data, gettext, util-linux
, cxxBindings ? !stdenv.hostPlatform.isStatic # tries to link libstdc++.so
, tpmSupport ? false, trousers, which, nettools, libunistring
@ -34,11 +35,11 @@ in
stdenv.mkDerivation rec {
pname = "gnutls";
version = "3.8.0";
version = "3.8.1";
src = fetchurl {
url = "mirror://gnupg/gnutls/v${lib.versions.majorMinor version}/gnutls-${version}.tar.xz";
sha256 = "sha256-DqDRGhZgoeY/lg8Vexl6vm0MjLMlW+JOH7OBWTC5vcU=";
hash = "sha256-uoueFa4gq6iPRGYZePW1hjSUMW/n5yLt6dBp/mKUgpw=";
};
outputs = [ "bin" "dev" "out" "man" "devdoc" ];
@ -46,7 +47,15 @@ stdenv.mkDerivation rec {
outputInfo = "devdoc";
outputDoc = "devdoc";
patches = [ ./nix-ssl-cert-file.patch ];
patches = [
(fetchpatch { #TODO: when updating drop this patch and texinfo
name = "GNUTLS_NO_EXTENSIONS.patch";
url = "https://gitlab.com/gnutls/gnutls/-/commit/abfa8634db940115a11a07596ce53c8f9c4f87d2.diff";
hash = "sha256-3M5WdNoVx9gUwTUPgu/sXmsaNg+j5d6liXs0UZz8fGU=";
})
./nix-ssl-cert-file.patch
];
# Skip some tests:
# - pkg-config: building against the result won't work before installing (3.5.11)
@ -81,7 +90,7 @@ stdenv.mkDerivation rec {
++ lib.optional (withP11-kit) p11-kit
++ lib.optional (tpmSupport && stdenv.isLinux) trousers;
nativeBuildInputs = [ perl pkg-config ]
nativeBuildInputs = [ perl pkg-config texinfo ]
++ lib.optionals doCheck [ which nettools util-linux ];
propagatedBuildInputs = [ nettle ]

View File

@ -18,25 +18,25 @@
, staticOnly ? stdenv.hostPlatform.isStatic
}:
let
googleapisRev = "13d5b3f3f9412f38427c8ad48068f04ad1ee9808";
googleapisRev = "85f8c758016c279fb7fa8f0d51ddc7ccc0dd5e05";
googleapis = fetchFromGitHub {
name = "googleapis-src";
owner = "googleapis";
repo = "googleapis";
rev = googleapisRev;
hash = "sha256-SiU7N1EQ/7LWhUwgf4c0CBfUzNGiLe4sSbbJmJF3sao=";
hash = "sha256-4Qiz0pBgW3OZi+Z8Zq6k9E94+8q6/EFMwPh8eQxDjdI=";
};
excludedTests = builtins.fromTOML (builtins.readFile ./skipped_tests.toml);
in
stdenv.mkDerivation rec {
pname = "google-cloud-cpp";
version = "2.4.0";
version = "2.14.0";
src = fetchFromGitHub {
owner = "googleapis";
repo = "google-cloud-cpp";
rev = "v${version}";
sha256 = "sha256-o8aURM8fvxn0FZjuqJGclq9Brss8LOFZzD0FV2j/lUc=";
sha256 = "sha256-0SoOaAqvk8cVC5W3ejTfe4O/guhrro3uAzkeIpAkCpg=";
};
postPatch = ''
@ -120,7 +120,6 @@ stdenv.mkDerivation rec {
# this adds a good chunk of time to the build
"-DBUILD_TESTING:BOOL=ON"
"-DGOOGLE_CLOUD_CPP_ENABLE_EXAMPLES:BOOL=OFF"
"-DCMAKE_CXX_STANDARD=${grpc.cxxStandard}"
] ++ lib.optionals (apis != [ "*" ]) [
"-DGOOGLE_CLOUD_CPP_ENABLE=${lib.concatStringsSep ";" apis}"
];

View File

@ -1,56 +1,71 @@
whole = [
"bigquery_bigquery_read_integration_test",
"common_samples_samples",
"common_internal_grpc_impersonate_service_account_integration_test",
"common_internal_unified_rest_credentials_integration_test",
"iam_samples_iam_credentials_samples",
"iam_samples_iam_samples",
"iam_admin_v1_samples_iam_client_samples",
"iam_credentials_v1_samples_iam_credentials_client_samples",
"iam_v1_samples_iam_policy_client_samples",
"iam_v2_samples_policies_client_samples",
"bigtable_admin_admin_iam_policy_integration_test",
"bigtable_admin_iam_policy_integration_test",
"bigtable_admin_integration_test",
"bigtable_bigtable_instance_admin_client_samples",
"bigtable_bigtable_table_admin_client_samples",
"bigtable_apply_read_latency_benchmark",
"bigtable_data_async_future_integration_test",
"bigtable_data_integration_test",
"bigtable_endurance_benchmark",
"bigtable_filters_integration_test",
"bigtable_mutation_batcher_throughput_benchmark",
"bigtable_mutations_integration_test",
"bigtable_read_sync_vs_async_benchmark",
"bigtable_scan_throughput_benchmark",
"bigtable_admin_iam_policy_integration_test",
"bigtable_data_async_future_integration_test",
"bigtable_data_integration_test",
"bigtable_filters_integration_test",
"bigtable_mutations_integration_test",
"bigtable_table_sample_rows_integration_test",
"common_grpc_utils_internal_grpc_impersonate_service_account_integration_test",
"iam_iam_credentials_integration_test",
"iam_iam_integration_test",
"bigquery_samples_bigquery_read_samples",
"bigquery_analyticshub_v1_samples_analytics_hub_client_samples",
"bigquery_biglake_v1_samples_metastore_client_samples",
"bigquery_connection_v1_samples_connection_client_samples",
"bigquery_datapolicies_v1_samples_data_policy_client_samples",
"bigquery_datatransfer_v1_samples_data_transfer_client_samples",
"bigquery_migration_v2_samples_migration_client_samples",
"bigquery_reservation_v1_samples_reservation_client_samples",
"bigquery_storage_v1_samples_bigquery_read_client_samples",
"bigquery_storage_v1_samples_bigquery_write_client_samples",
"logging_quickstart",
"logging_v2_samples_config_service_v2_client_samples",
"logging_v2_samples_logging_service_v2_client_samples",
"logging_v2_samples_metrics_service_v2_client_samples",
"pubsub_endurance",
"pubsub_schema_admin_integration_test",
"pubsub_throughput",
"pubsub_subscriber_integration_test",
"pubsub_subscription_admin_integration_test",
"pubsub_throughput",
"pubsub_topic_admin_integration_test",
"rest_internal_internal_curl_rest_client_integration_test",
"rest_internal_internal_unified_rest_credentials_integration_test",
"spanner_admin_backup_extra_integration_test",
"spanner_admin_database_admin_integration_test",
"spanner_admin_instance_admin_integration_test",
"spanner_backup_extra_integration_test",
"spanner_client_integration_test",
"spanner_client_stress_test",
"spanner_data_types_integration_test",
"spanner_database_admin_integration_test",
"spanner_instance_admin_integration_test",
"spanner_multiple_rows_cpu_benchmark",
"spanner_rpc_failure_threshold_integration_test",
"spanner_session_pool_integration_test",
"spanner_admin_database_admin_integration_test",
"spanner_admin_instance_admin_integration_test",
"spanner_database_admin_client_samples",
"spanner_instance_admin_client_samples",
"spanner_multiple_rows_cpu_benchmark",
"spanner_single_row_throughput_benchmark",
"storage_aggregate_download_throughput_benchmark",
"storage_aggregate_upload_throughput_benchmark",
"storage_alternative_endpoint_integration_test",
"storage_auto_finalize_integration_test",
"storage_bucket_integration_test",
"storage_create_client_integration_test",
"storage_create_dataset",
"storage_curl_download_request_integration_test",
"storage_curl_request_integration_test",
"storage_curl_resumable_upload_session_integration_test",
"storage_curl_sign_blob_integration_test",
"storage_decompressive_transcoding_integration_test",
"storage_grpc_bucket_acl_integration_test",
"storage_grpc_bucket_metadata_integration_test",
"storage_grpc_default_object_acl_integration_test",
"storage_grpc_integration_test",
"storage_grpc_object_acl_integration_test",
"storage_grpc_object_media_integration_test",
"storage_grpc_object_metadata_integration_test",
"storage_key_file_integration_test",
"storage_minimal_iam_credentials_rest_integration_test",
"storage_object_basic_crud_integration_test",
@ -79,13 +94,16 @@ whole = [
"storage_service_account_integration_test",
"storage_signed_url_integration_test",
"storage_small_reads_integration_test",
"storage_thread_integration_test",
"storage_tracing_integration_test",
"storage_unified_credentials_integration_test",
"storage_aggregate_download_throughput_benchmark",
"storage_aggregate_upload_throughput_benchmark",
"storage_create_dataset",
"storage_storage_file_transfer_benchmark",
"storage_storage_parallel_uploads_benchmark",
"storage_storage_throughput_vs_cpu_benchmark",
"storage_thread_integration_test",
"storage_throughput_experiment_test",
"storage_tracing_integration_test",
"storage_unified_credentials_integration_test",
"storage_throughput_experiment_test"
]
cases = [
"BackupExtraIntegrationTest.CreateBackupWithExpiredVersionTime",

View File

@ -21,7 +21,7 @@
stdenv.mkDerivation rec {
pname = "grpc";
version = "1.54.2"; # N.B: if you change this, please update:
version = "1.57.0"; # N.B: if you change this, please update:
# pythonPackages.grpcio-tools
# pythonPackages.grpcio-status
@ -29,7 +29,7 @@ stdenv.mkDerivation rec {
owner = "grpc";
repo = "grpc";
rev = "v${version}";
hash = "sha256-OIRqH+h8Kjbw3X5slpdCfNN0f027WuvHG3q7KUuSWo8=";
hash = "sha256-ZPhPi4ODAAohCySVKeypaDID4ZUXvnfidOGK5EMXvh4=";
fetchSubmodules = true;
};
@ -40,6 +40,12 @@ stdenv.mkDerivation rec {
url = "https://github.com/lopsided98/grpc/commit/164f55260262c816e19cd2c41b564486097d62fe.patch";
hash = "sha256-d6kMyjL5ZnEnEz4XZfRgXJBH53gp1r7q1tlwh+HM6+Y=";
})
# Fix generated CMake config file
# FIXME: remove when merged
(fetchpatch {
url = "https://github.com/grpc/grpc/pull/33361/commits/117dc80eb43021dd5619023ef6d02d0d6ec7ae7a.patch";
hash = "sha256-VBk3ZD5h9uOQVN0st+quUQK/wXqvfFNk8G8AN4f2MQo=";
})
];
nativeBuildInputs = [ cmake pkg-config ]
@ -56,10 +62,22 @@ stdenv.mkDerivation rec {
"-DgRPC_PROTOBUF_PROVIDER=package"
"-DgRPC_ABSL_PROVIDER=package"
"-DBUILD_SHARED_LIBS=ON"
"-DCMAKE_CXX_STANDARD=${passthru.cxxStandard}"
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
"-D_gRPC_PROTOBUF_PROTOC_EXECUTABLE=${buildPackages.protobuf}/bin/protoc"
];
]
# The build scaffold defaults to c++14 on darwin, even when the compiler uses
# a more recent c++ version by default [1]. However, downgrades are
# problematic, because the compatibility types in abseil will have different
# interface definitions than the ones used for building abseil itself.
# [1] https://github.com/grpc/grpc/blob/v1.57.0/CMakeLists.txt#L239-L243
++ (let
defaultCxxIsOlderThan17 =
(stdenv.cc.isClang && lib.versionAtLeast stdenv.cc.cc.version "16.0")
|| (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.cc.version "11.0");
in lib.optionals (stdenv.hostPlatform.isDarwin && defaultCxxIsOlderThan17)
[
"-DCMAKE_CXX_STANDARD=17"
]);
# CMake creates a build directory by default, this conflicts with the
# basel BUILD file on case-insensitive filesystems.
@ -81,17 +99,6 @@ stdenv.mkDerivation rec {
enableParallelBuilds = true;
passthru.cxxStandard =
let
# Needs to be compiled with -std=c++11 for clang < 11. Interestingly this is
# only an issue with the useLLVM stdenv, not the darwin stdenv…
# https://github.com/grpc/grpc/issues/26473#issuecomment-860885484
useLLVMAndOldCC = (stdenv.hostPlatform.useLLVM or false) && lib.versionOlder stdenv.cc.cc.version "11.0";
# With GCC 9 (current aarch64-linux) it fails with c++17 but OK with c++14.
useOldGCC = !(stdenv.hostPlatform.useLLVM or false) && lib.versionOlder stdenv.cc.cc.version "10";
in
(if useLLVMAndOldCC then "11" else if useOldGCC then "14" else "17");
passthru.tests = {
inherit (python3.pkgs) grpcio-status grpcio-tools;
inherit arrow-cpp;

View File

@ -16,13 +16,13 @@
stdenv.mkDerivation rec {
pname = "gupnp";
version = "1.6.4";
version = "1.6.5";
outputs = [ "out" "dev" "devdoc" ];
src = fetchurl {
url = "mirror://gnome/sources/gupnp/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
sha256 = "sha256-1sPQNYOET6UqvgAwQxhgB/DIQUX+OwD6slmVvtqb5Vo=";
hash = "sha256-Q33/lwFC6EBwh6iYVfcX4g0nydduBbTNUX32IcfYiM0=";
};
depsBuildBuild = [

View File

@ -35,9 +35,18 @@ stdenv.mkDerivation rec {
# Bring .pc file in line with our patched pkg-config.
./0001-pkg-config-Declare-header-dependencies-as-public.patch
# Unbreak build with Meson 1.2.0
# https://gitlab.gnome.org/GNOME/gupnp/-/merge_requests/33
(fetchpatch2 {
name = "meson-1.2-fix.patch";
url = "https://gitlab.gnome.org/GNOME/gupnp/-/commit/85c0244cfbf933d3e90d50ab68394c68d86f9ed5.patch";
hash = "sha256-poDhkEgDTpgGnTbbZLPwx8Alf0h81vmzJyx3izWmDGw=";
})
# Fix build against libxml2 2.11
# https://gitlab.gnome.org/GNOME/gupnp/-/merge_requests/34
(fetchpatch2 {
name = "libxml2-2.11-fix.patch";
url = "https://gitlab.gnome.org/GNOME/gupnp/-/commit/bc56f02b0f89e96f2bd74af811903d9931965f58.patch";
hash = "sha256-KCHlq7Es+WLIWKgIgGVTaHarVQIiZPEi5r6nMAhXTgY=";
})

View File

@ -8,8 +8,15 @@
, libjpeg
, dav1d
, libyuv
, gdk-pixbuf
, makeWrapper
}:
let
gdkPixbufModuleDir = "${placeholder "out"}/${gdk-pixbuf.moduleDir}";
gdkPixbufModuleFile = "${placeholder "out"}/${gdk-pixbuf.binaryDir}/avif-loaders.cache";
in
stdenv.mkDerivation rec {
pname = "libavif";
version = "0.11.1";
@ -29,14 +36,18 @@ stdenv.mkDerivation rec {
"-DAVIF_CODEC_DAV1D=ON" # best decoder (fast)
"-DAVIF_CODEC_AOM_DECODE=OFF"
"-DAVIF_BUILD_APPS=ON"
"-DAVIF_BUILD_GDK_PIXBUF=ON"
];
nativeBuildInputs = [
cmake
pkg-config
gdk-pixbuf
makeWrapper
];
buildInputs = [
gdk-pixbuf
libaom
zlib
libpng
@ -45,6 +56,23 @@ stdenv.mkDerivation rec {
libyuv
];
postPatch = ''
substituteInPlace contrib/gdk-pixbuf/avif.thumbnailer.in \
--replace '@CMAKE_INSTALL_FULL_BINDIR@/gdk-pixbuf-thumbnailer' "$out/libexec/gdk-pixbuf-thumbnailer-avif"
'';
env.PKG_CONFIG_GDK_PIXBUF_2_0_GDK_PIXBUF_MODULEDIR = gdkPixbufModuleDir;
postInstall = ''
GDK_PIXBUF_MODULEDIR=${gdkPixbufModuleDir} \
GDK_PIXBUF_MODULE_FILE=${gdkPixbufModuleFile} \
gdk-pixbuf-query-loaders --update-cache
mkdir -p "$out/bin"
makeWrapper ${gdk-pixbuf}/bin/gdk-pixbuf-thumbnailer "$out/libexec/gdk-pixbuf-thumbnailer-avif" \
--set GDK_PIXBUF_MODULE_FILE ${gdkPixbufModuleFile}
'';
meta = with lib; {
description = "C implementation of the AV1 Image File Format";
longDescription = ''

View File

@ -10,7 +10,7 @@ stdenv.mkDerivation rec {
rev = version;
hash = "sha256-Gym2iHq5ws9kuG4HWSQndD8hVugV4USZt6dUFnEkLwY=";
};
patches = lib.optionals (with stdenv; isAarch64 && isLinux) [ # conditional, temporarily
patches = [
# backport for compilation issue on aarch64
# https://github.com/google/highway/issues/1613
(fetchpatch {

View File

@ -4,6 +4,7 @@
, pkg-config
, glib
, gdk-pixbuf
, installShellFiles
, pango
, cairo
, libxml2
@ -59,6 +60,7 @@ stdenv.mkDerivation (finalAttrs: {
nativeBuildInputs = [
gdk-pixbuf
installShellFiles
pkg-config
rustc
cargo-auditable-cargo-wrapper
@ -121,12 +123,10 @@ stdenv.mkDerivation (finalAttrs: {
postConfigure = ''
GDK_PIXBUF=$out/lib/gdk-pixbuf-2.0/2.10.0
mkdir -p $GDK_PIXBUF/loaders
sed -e "s#gdk_pixbuf_moduledir = .*#gdk_pixbuf_moduledir = $GDK_PIXBUF/loaders#" \
-i gdk-pixbuf-loader/Makefile
sed -e "s#gdk_pixbuf_cache_file = .*#gdk_pixbuf_cache_file = $GDK_PIXBUF/loaders.cache#" \
-i gdk-pixbuf-loader/Makefile
sed -e "s#\$(GDK_PIXBUF_QUERYLOADERS)#GDK_PIXBUF_MODULEDIR=$GDK_PIXBUF/loaders \$(GDK_PIXBUF_QUERYLOADERS)#" \
-i gdk-pixbuf-loader/Makefile
sed -i gdk-pixbuf-loader/Makefile \
-e "s#gdk_pixbuf_moduledir = .*#gdk_pixbuf_moduledir = $GDK_PIXBUF/loaders#" \
-e "s#gdk_pixbuf_cache_file = .*#gdk_pixbuf_cache_file = $GDK_PIXBUF/loaders.cache#" \
-e "s#\$(GDK_PIXBUF_QUERYLOADERS)#GDK_PIXBUF_MODULEDIR=$GDK_PIXBUF/loaders \$(GDK_PIXBUF_QUERYLOADERS)#"
# Fix thumbnailer path
sed -e "s#@bindir@\(/gdk-pixbuf-thumbnailer\)#${gdk-pixbuf}/bin\1#g" \
@ -147,12 +147,10 @@ stdenv.mkDerivation (finalAttrs: {
cat ${lib.getLib gdk-pixbuf}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache $GDK_PIXBUF/loaders.cache > $GDK_PIXBUF/loaders.cache.tmp
mv $GDK_PIXBUF/loaders.cache.tmp $GDK_PIXBUF/loaders.cache
mkdir -p "$out/share/bash-completion/completions/"
${emulator} $out/bin/rsvg-convert --completion bash > "$out/share/bash-completion/completions/rsvg-convert"
mkdir -p "$out/share/zsh/site-functions/"
${emulator} $out/bin/rsvg-convert --completion zsh > "$out/share/zsh/site-functions/_rsvg-convert"
mkdir -p "$out/share/fish/vendor_completions.d/"
${emulator} $out/bin/rsvg-convert --completion fish > "$out/share/fish/vendor_completions.d/rsvg-convert.fish"
installShellCompletion --cmd rsvg-convert \
--bash <(${emulator} $out/bin/rsvg-convert --completion bash) \
--fish <(${emulator} $out/bin/rsvg-convert --completion fish) \
--zsh <(${emulator} $out/bin/rsvg-convert --completion zsh)
'';
postFixup = lib.optionalString withIntrospection ''

View File

@ -86,8 +86,8 @@
*/
let
version = "23.1.4";
hash = "sha256-cmGhf7lIZ+PcWpDYofEA+gSwy73lHSUwLAhytemhCVk=";
version = "23.1.5";
hash = "sha256-PPiFdv3r8k/EBHBnk2ExyQy2VBwnNlmWt5tmHewfsVM=";
# Release calendar: https://www.mesa3d.org/release-calendar.html
# Release frequency: https://www.mesa3d.org/releasing.html#schedule

View File

@ -2,7 +2,7 @@
, fetchFromGitHub
, fetchpatch
, cmake, pkg-config, unzip, zlib, pcre, hdf5
, glog, boost, gflags, protobuf
, glog, boost, gflags, protobuf3_21
, config
, enableJPEG ? true, libjpeg
@ -187,7 +187,7 @@ stdenv.mkDerivation {
buildInputs =
[ zlib pcre hdf5 glog boost gflags ]
++ lib.optional useSystemProtobuf protobuf
++ lib.optional useSystemProtobuf protobuf3_21
++ lib.optional enablePython pythonPackages.python
++ lib.optional enableGtk2 gtk2
++ lib.optional enableGtk3 gtk3

View File

@ -11,7 +11,7 @@
, hdf5
, boost
, gflags
, protobuf
, protobuf3_21
, config
, ocl-icd
, buildPackages
@ -317,7 +317,7 @@ stdenv.mkDerivation {
echo '"(build info elided)"' > modules/core/version_string.inc
'';
buildInputs = [ zlib pcre boost gflags protobuf ]
buildInputs = [ zlib pcre boost gflags protobuf3_21 ]
++ lib.optional enablePython pythonPackages.python
++ lib.optional (stdenv.buildPlatform == stdenv.hostPlatform) hdf5
++ lib.optional enableGtk2 gtk2
@ -369,7 +369,7 @@ stdenv.mkDerivation {
"-DOPENCV_GENERATE_PKGCONFIG=ON"
"-DWITH_OPENMP=ON"
"-DBUILD_PROTOBUF=OFF"
"-DProtobuf_PROTOC_EXECUTABLE=${lib.getExe buildPackages.protobuf}"
"-DProtobuf_PROTOC_EXECUTABLE=${lib.getExe buildPackages.protobuf3_21}"
"-DPROTOBUF_UPDATE_FILES=ON"
"-DOPENCV_ENABLE_NONFREE=${printEnabled enableUnfree}"
"-DBUILD_TESTS=${printEnabled runAccuracyTests}"

View File

@ -9,13 +9,13 @@
stdenv.mkDerivation rec {
pname = "openexr";
version = "3.1.7";
version = "3.1.10";
src = fetchFromGitHub {
owner = "AcademySoftwareFoundation";
repo = "openexr";
rev = "v${version}";
sha256 = "sha256-Kl+aOA797aZvrvW4ZQNHdSU7YFPieZEzX3aYeaoH6eU=";
sha256 = "sha256-8oV7Himk9AS2e2Z3OREE7KQgFIUysXwATlUN51dDe5M=";
};
outputs = [ "bin" "dev" "out" "doc" ];

View File

@ -17,11 +17,11 @@
stdenv.mkDerivation rec {
pname = "openldap";
version = "2.6.5";
version = "2.6.6";
src = fetchurl {
url = "https://www.openldap.org/software/download/OpenLDAP/openldap-release/${pname}-${version}.tgz";
hash = "sha256-Lieo1PTCr4/oQLVzJxwgqhY+JJh/l2UhRkQpD1vrONk=";
hash = "sha256-CC6ZjPVCmE1DY0RC2+EdqGB1nlEJBxUupXm9xC/jnqA=";
};
# TODO: separate "out" and "bin"

View File

@ -1,54 +0,0 @@
From 6a83f0c958811f07e0d11dfc6b5a6a98edfd5bdc Mon Sep 17 00:00:00 2001
From: Tomas Mraz <tomas@openssl.org>
Date: Tue, 4 Jul 2023 17:30:35 +0200
Subject: [PATCH] Do not ignore empty associated data with AES-SIV mode
The AES-SIV mode allows for multiple associated data items
authenticated separately with any of these being 0 length.
The provided implementation ignores such empty associated data
which is incorrect in regards to the RFC 5297 and is also
a security issue because such empty associated data then become
unauthenticated if an application expects to authenticate them.
Fixes CVE-2023-2975
Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/21384)
(cherry picked from commit c426c281cfc23ab182f7d7d7a35229e7db1494d9)
---
.../implementations/ciphers/cipher_aes_siv.c | 18 +++++++++++-------
1 file changed, 11 insertions(+), 7 deletions(-)
diff --git a/providers/implementations/ciphers/cipher_aes_siv.c b/providers/implementations/ciphers/cipher_aes_siv.c
index 45010b90db2a..b396c8651a32 100644
--- a/providers/implementations/ciphers/cipher_aes_siv.c
+++ b/providers/implementations/ciphers/cipher_aes_siv.c
@@ -120,14 +120,18 @@ static int siv_cipher(void *vctx, unsigned char *out, size_t *outl,
if (!ossl_prov_is_running())
return 0;
- if (inl == 0) {
- *outl = 0;
- return 1;
- }
+ /* Ignore just empty encryption/decryption call and not AAD. */
+ if (out != NULL) {
+ if (inl == 0) {
+ if (outl != NULL)
+ *outl = 0;
+ return 1;
+ }
- if (outsize < inl) {
- ERR_raise(ERR_LIB_PROV, PROV_R_OUTPUT_BUFFER_TOO_SMALL);
- return 0;
+ if (outsize < inl) {
+ ERR_raise(ERR_LIB_PROV, PROV_R_OUTPUT_BUFFER_TOO_SMALL);
+ return 0;
+ }
}
if (ctx->hw->cipher(ctx, out, in, inl) <= 0)

View File

@ -254,8 +254,8 @@ in {
};
openssl_3 = common {
version = "3.0.9";
sha256 = "sha256-6xqwR4FHQ2D3fDGKuJ2MWgOrw45j1lpgPKu/GwCh3JA=";
version = "3.0.10";
sha256 = "sha256-F2HU9bE6ECi5tvPUuOF/6wztyTcPav5h1xk9LNzoMyM=";
patches = [
./3.0/nix-ssl-cert-file.patch
@ -263,9 +263,6 @@ in {
# This patch disables build-time detection.
./3.0/openssl-disable-kernel-detection.patch
# https://www.openssl.org/news/secadv/20230714.txt
./3.0/CVE-2023-2975.patch
(if stdenv.hostPlatform.isDarwin
then ./use-etc-ssl-certs-darwin.patch
else ./use-etc-ssl-certs.patch)

View File

@ -0,0 +1,6 @@
{ callPackage, ... } @ args:
callPackage ./generic-v3-cmake.nix ({
version = "3.23.4";
sha256 = "sha256-eI+mrsZAOLEsdyTC3B+K+GjD3r16CmPx1KJ2KhCwFdg=";
} // args)

View File

@ -68,16 +68,17 @@ let
];
buildInputs = [
abseil-cpp
zlib
];
# After 3.20, CMakeLists.txt can now be found at the top-level, however
# a stub cmake/CMakeLists.txt still exists for compatibility with previous build assumptions
cmakeDir = "../cmake";
propagatedBuildInputs = [
abseil-cpp
];
cmakeDir = if lib.versionOlder version "3.22" then "../cmake" else null;
cmakeFlags = [
"-Dprotobuf_ABSL_PROVIDER=package"
] ++ lib.optionals (!stdenv.targetPlatform.isStatic) [
] ++ lib.optionals (!stdenv.targetPlatform.isStatic) [
"-Dprotobuf_BUILD_SHARED_LIBS=ON"
]
# Tests fail to build on 32-bit platforms; fixed in 3.22
@ -95,6 +96,8 @@ let
protobuf = self;
});
};
inherit abseil-cpp;
};
meta = {

View File

@ -1,7 +1,6 @@
{ lib
, stdenv
, fetchFromGitHub
, fetchpatch
, autoreconfHook
, pkg-config
, protobuf
@ -11,28 +10,20 @@
stdenv.mkDerivation rec {
pname = "protobuf-c";
version = "1.4.1";
version = "unstable-2023-07-08";
src = fetchFromGitHub {
owner = "protobuf-c";
repo = "protobuf-c";
rev = "refs/tags/v${version}";
hash = "sha256-TJCLzxozuZ8ynrBQ2lKyk03N+QA/lbOwywUjDUdTlbM=";
rev = "fa86fddbd000316772d1deb5a8d1201fa7599ef7";
hash = "sha256-pmqZYFREPgSrWPekymTglhtAv6gQR1gP3dOl3hqjYig=";
};
patches = [
# https://github.com/protobuf-c/protobuf-c/pull/534
(fetchpatch {
url = "https://github.com/protobuf-c/protobuf-c/commit/a6c9ea5207aeac61c57b446ddf5a6b68308881d8.patch";
hash = "sha256-wTb8+YbvrCrOVpgthI5SJdG/CpQcOzCX4Bv47FPY804=";
})
];
nativeBuildInputs = [ autoreconfHook pkg-config ];
buildInputs = [ protobuf zlib ];
PROTOC = lib.getExe buildPackages.protobuf;
env.PROTOC = lib.getExe buildPackages.protobuf;
meta = with lib; {
homepage = "https://github.com/protobuf-c/protobuf-c/";

View File

@ -1,5 +1,5 @@
diff --git a/configure.pri b/configure.pri
index e072961f0..ac0861c01 100644
index 3a33bdc82..c1460b8b5 100644
--- a/configure.pri
+++ b/configure.pri
@@ -442,24 +442,6 @@ defineTest(qtwebengine_isWindowsPlatformSupported) {
@ -24,6 +24,6 @@ index e072961f0..ac0861c01 100644
- qtwebengine_platformError("requires a macOS SDK version of 10.13 or newer. Current version is $${WEBENGINE_OSX_SDK_PRODUCT_VERSION}.")
- return(false)
- }
return(true)
}
CONFIG(debug, debug|release):isUniversal(){
qtwebengine_platformError("Universal builds can not be done with debug configuration due to large binary size.")
return(false)

View File

@ -1,118 +1,118 @@
{
"qt3d": {
"url": "https://invent.kde.org/qt/qt/qt3d.git",
"rev": "e94b0fa39a2f4bf260969fb18bf075dba39b2df1",
"sha256": "0mc7rym5pngpwpjghih7afjlyvvrlpdzw1wrbggykpmm8vrk5hzv"
"rev": "01aa0a9cb22ce5ed2b7ead03ed9cbeb5f978e897",
"sha256": "0r1bicsjn4addsf0cw2vkf26kxlf8z1fh65w19gnqmcwkrr8hnja"
},
"qtactiveqt": {
"url": "https://invent.kde.org/qt/qt/qtactiveqt.git",
"rev": "38635c3b343ce30b71e44c5a59f2f7393fba8259",
"sha256": "010jh2vdlymaxs1wd0agzb2gvgms9xrhs4vb5bjiiq5pys1sgkbp"
"rev": "7a04a93e97390de2d91e89dc907e8240dd5a0c4f",
"sha256": "1bqy5cmimnlmgd02zpv0ipf74nx350fk0d4pm2j4pqipq1spq3bh"
},
"qtandroidextras": {
"url": "https://invent.kde.org/qt/qt/qtandroidextras.git",
"rev": "b458aee3f907f2ce1880ad4031abecb2a1eab90a",
"sha256": "14vn9k80ilc2smaflnamyg5k0ddj3n4m123yfwb79rfg3lddhvs5"
"rev": "1170e17043ff51590ccee30447bef1e43a999b0d",
"sha256": "0qhlhz7ng35mb5pmva9ivpxq1ib30dz8f1p93yil78cyl9mwqbbi"
},
"qtbase": {
"url": "https://invent.kde.org/qt/qt/qtbase.git",
"rev": "a196623892558623e467f20b67edb78794252a09",
"sha256": "0yna2k1w595xwh9bk268h31fjl2ff8cm185dmm0v5gr4w8h9yr4g"
"rev": "e24dc54b2b4054413650904288aa7a363eee23a7",
"sha256": "0gpg0avl06jbamgk5f9034cfqwyifgv4nyqx49rp0r9wm2m1cgxb"
},
"qtcharts": {
"url": "https://invent.kde.org/qt/qt/qtcharts.git",
"rev": "3d4a84eb6d62ce22a47794f309f9268729ac375f",
"sha256": "047hl5hd0l337b7bsc28lfx9p9jbrnqswfdk80ndvgvp96ziblg5"
"rev": "7ce22b0633eb9d1eb59854fee4f2f545e1b842e0",
"sha256": "0q173ql5xyacwb5lwyrzhgch1bbjq4mmsfwhyssm3a9phqcj083m"
},
"qtconnectivity": {
"url": "https://invent.kde.org/qt/qt/qtconnectivity.git",
"rev": "e6d37133affc71451129d84790c6c22227e64aff",
"sha256": "1bc1d0h2f1q0xfvr8p5fq1580bl8cs0qhdncm600v590z56cyika"
"rev": "eeaf42bccd49e8161fbae82d110026d25a5a9a7f",
"sha256": "0daa72yizb6v28bci72fw1w8y8al0mhb9k7kxn7vg22fbb3iyksf"
},
"qtdatavis3d": {
"url": "https://invent.kde.org/qt/qt/qtdatavis3d.git",
"rev": "7636478bb30f0af8afe9af429eb8512d6fbcc11b",
"sha256": "08xkhxwp5mlcp4q45adqn58p37wn2z2zabw23f51qvfw8rir9g62"
"rev": "d366b0aad8454355acac79eddbab445c1108b1e9",
"sha256": "15ad1cbfdwnl6lnafgd4chdsl9wnwfcqqnd2m0dwj10n2lsa3nmw"
},
"qtdeclarative": {
"url": "https://invent.kde.org/qt/qt/qtdeclarative.git",
"rev": "039ce261b0f8061f8485f9c2eaf497a4d4395baa",
"sha256": "1kp2pnwfcwsxhy2w1sdg722d0kb1i6kx3a9r42gl1i9d73k8afi2"
"rev": "3e98cdb2780d052fce3d7a3694596a690cd76aca",
"sha256": "15fn0zjfz7jnjgc7m368sna2mvhcp33r85r2kwc9hy7zkp1is6a1"
},
"qtdoc": {
"url": "https://invent.kde.org/qt/qt/qtdoc.git",
"rev": "701325d57940c6e54353d0d4b6c3ebac6f9688a3",
"sha256": "01x2075d71z3ag99dppixs1y85zrr0vck0piah62l9n0v3wz4r6p"
"rev": "9dfbbfb9971db22d51eb40d6636583df5913be01",
"sha256": "1l192k1w5mjw14zq3h3pjb3m0zl56fhgxdjfxhmbncjx0ym98wzr"
},
"qtgamepad": {
"url": "https://invent.kde.org/qt/qt/qtgamepad.git",
"rev": "7c05744e38d44afac687df3349d548c8790837db",
"sha256": "0j8rak512f96i0wy4n0d4fjsgfzn283k2kfpn93d2blld4r2rd5s"
"rev": "f90bd729eb70d4a0770efed3f9bb1b6dbe67d37c",
"sha256": "1vbfmyb51lv3ms0iyizi05jiba688scjwxwvyrr8qnmg4qrjqjd5"
},
"qtgraphicaleffects": {
"url": "https://invent.kde.org/qt/qt/qtgraphicaleffects.git",
"rev": "06cfcbb6940d2729f5a6575e264873ce65ac99c3",
"sha256": "02jc7q7ijmhmffdp2ql2j3fw8ag7q98xlq40pywmzgrf1ggb34sw"
"rev": "500ae59f809877e0ada9a68601564882f2733145",
"sha256": "0p8vxp5l7iihd1xww94asnb9xv2v94p9whqbljzn6gwr56wvys5l"
},
"qtimageformats": {
"url": "https://invent.kde.org/qt/qt/qtimageformats.git",
"rev": "c249f58541afa45955c23b75c1fb88c5e3e4d18b",
"sha256": "025fxiy6ahgfqw3w7a08r2ff4ry2m1qn65haimpnn6bmi4vp88m8"
"rev": "5aa33ec870977863c400103db94da452edbaf414",
"sha256": "02i3ns2ijiiy0jfad3lxrvvlr38bgarl8246ka0y8aa8by1ih35b"
},
"qtlocation": {
"url": "https://invent.kde.org/qt/qt/qtlocation.git",
"rev": "30fb93cf8521f2c0b3803903153d9034b7d7bcc2",
"sha256": "1b027hfc1m2nz0v906w08srmpyci3362arxc18cin334yhgghbx1"
"rev": "664701dc3acfca37500bc84ba03eed4953b684e9",
"sha256": "0nlzjksfzkjhla89warkj7c5h8z2h5ivnhnq1sw2385gfd4q5d8w"
},
"qtlottie": {
"url": "https://invent.kde.org/qt/qt/qtlottie.git",
"rev": "f9f123a97989638c36b5c2b03f4ff6261ddaed9a",
"sha256": "06b5rjzqd1630c87spldxxd0bvkb94sbnaxwxbi7ac74k35ydq7s"
"rev": "f65b6a268832fc86e1263a6597f2e369aefecd19",
"sha256": "157in9bvnd9q2jigrrl955y7d2gpj308g8mg7k19r1vaz6h4zlm7"
},
"qtmacextras": {
"url": "https://invent.kde.org/qt/qt/qtmacextras.git",
"rev": "209e3ddcf0a6b48ff47a7dc97f2ea38470c8780d",
"sha256": "09aipbnalb44w6g3kzm9dc84ls2xmp1clwmy5zd012xsvjwqd3h5"
"rev": "ca5e5fdca44e8e56dafaac2a5bd886cad2a5c0f5",
"sha256": "1yrk7kj5dvfcha8w0abvh8xfjn6nbl4njm1r2h2776l3sf46xd4c"
},
"qtmultimedia": {
"url": "https://invent.kde.org/qt/qt/qtmultimedia.git",
"rev": "ff4c7bc3bf7ba4b748fdeb9d09887271c2b28505",
"sha256": "14wx49mkqqzvwzhbx3jhbrjngq4vb3x2kmgzrq7f6nri0g7dpss8"
"rev": "78d05cfcec57a9e890cb5ddbea604f194e04315d",
"sha256": "1vf0gmf6bh3hadrrk0922dbagmvxi1il3pjiyhmz087bm80km1md"
},
"qtnetworkauth": {
"url": "https://invent.kde.org/qt/qt/qtnetworkauth.git",
"rev": "59311ee7d78a8b19d3dbe61cf49d42c5bd7c934a",
"sha256": "1rdgfmfsqp3hdkkq6bi8vdxgrh45xzf1b2nryhnk8pid81wa2bzq"
"rev": "a0f23c6a1f11bd7c6a8e4fd34f10bdb0a35789fa",
"sha256": "0sy2s7xnq2xmqm3lcp439wn6zk6znzja489gh531mmkaj13kiqa9"
},
"qtpurchasing": {
"url": "https://invent.kde.org/qt/qt/qtpurchasing.git",
"rev": "5737c10128c6eeb28c10df569c8492bb2e8f4230",
"sha256": "0iny9npc7w7b1rz9yx659bva66rllhbfqh4af9wdwbi9ssr4x5pc"
"rev": "a3e675872e4b323f89b94b90b66caa945b576b2e",
"sha256": "0b6da91fja6w3mphsfydp0plcwmk8nywhd5v8irgc98v1hw114dg"
},
"qtquick3d": {
"url": "https://invent.kde.org/qt/qt/qtquick3d.git",
"rev": "ccd0284235e9e3e1f97d808125af5024d3f04140",
"sha256": "1mfw97v60fdszab0gqxjydw00f89rx8clw3dq72zx1rgv8rn2s67"
"rev": "353f50a9851518eb637181c00302cd354e0ae98b",
"sha256": "1y269yamhlf46rwcvwzhdqhajyqj41xxf9x0l1nrcr4n07l4mbr8"
},
"qtquickcontrols": {
"url": "https://invent.kde.org/qt/qt/qtquickcontrols.git",
"rev": "eb9dead185ae209dd2364d09db74d8ab613d982d",
"sha256": "1pza9cjv49x59lvzyv45hwz01z8l9zzn8a3ssazycxvcq3w0pncb"
"rev": "0ea7cfdfbfa72d467fe542cc48ab3206c177a387",
"sha256": "1bvg32cz4x00j9333yas7cmfzx8rlhika4a9vwdikrr5a64awsl9"
},
"qtquickcontrols2": {
"url": "https://invent.kde.org/qt/qt/qtquickcontrols2.git",
"rev": "68a48018e34322edaf611639710b3edbe389e8c2",
"sha256": "04hswsamjmwgn63gs3rhxygvwjfqx5f0qifzp3gp6q4fw8lkgwpf"
"rev": "0472a07a8f39587052216d85a7ed235c531eba2c",
"sha256": "1psal4kldwbhfgg0b234dhgm30s5q83g2krcik1p4sifrzgrry3r"
},
"qtquicktimeline": {
"url": "https://invent.kde.org/qt/qt/qtquicktimeline.git",
"rev": "dd5d4af65890baad8baa85a445a752a877a4f7e3",
"sha256": "1m096pskaxhzxyvz17lksg1qlni7qacvqf3z71wvwvxzgjvs5bqh"
"rev": "4956b556ccb021e4691f314ab907ea2ebb1ca8a6",
"sha256": "0d6w36pvnk616ps7k1ykpk2ahcvn746svwmv3dxvf4capfij96rj"
},
"qtremoteobjects": {
"url": "https://invent.kde.org/qt/qt/qtremoteobjects.git",
"rev": "27b496d5aff650e4cf9a3148857c723dce10ef25",
"sha256": "0wyf1nb6wjh4jd2n8cng7a6lzv1dkwrniabsvn1adl1nqknq7asv"
"rev": "d10e7673218fa2b00191a82ad20cd3304a711fa6",
"sha256": "0z5dzgdr92yw3y5vx6l9r9kz81r0vvwi264la9r7j20jqb75i2a5"
},
"qtscript": {
"url": "https://invent.kde.org/qt/qt/qtscript.git",
@ -121,87 +121,87 @@
},
"qtscxml": {
"url": "https://invent.kde.org/qt/qt/qtscxml.git",
"rev": "d30a77111835395828fdcaa89a88110c5d9f6857",
"sha256": "1yid5653653qlpk305y276gdrifdxpjzfa1629csq2b8hpwkddc2"
"rev": "7f276be586be79d41213a8dd05ef31144313d440",
"sha256": "0yiryqzs44nx5lg54gbs7gf5n2d5chybya71kcv0iwn48dbzy33n"
},
"qtsensors": {
"url": "https://invent.kde.org/qt/qt/qtsensors.git",
"rev": "391c710b88865a3e0311b61d93fcdbbfd6996d46",
"sha256": "19myf3w6g64clj9msy71is7b9krkfrzcqlyza37m3pimy7x305a0"
"rev": "45c04582b15a9bb4be01ae99aa7fda1bbba7d0df",
"sha256": "0wp9ddna0zidl18707nrqsg8sybaggam0hmm9yxyyfnsr39wms4m"
},
"qtserialbus": {
"url": "https://invent.kde.org/qt/qt/qtserialbus.git",
"rev": "f8684ae6b0c12b6b21f1547fabe38b60c39f8893",
"sha256": "0k60wibb2xis7gvx9d7q14a3sq1ij1m196ax4rfwwrzsz2vviir0"
"rev": "b3081c36baee48b43b6285b4811dc6da451e2390",
"sha256": "167bmp5wrp9mflvzhgc2am9nnyw1vb58skdxjn7ag8jq88fhv0zz"
},
"qtserialport": {
"url": "https://invent.kde.org/qt/qt/qtserialport.git",
"rev": "7fb308ec721f034a0d673784d951577d764a8e67",
"sha256": "1f8sjyd7ksy4420lr6vn18mzb64jm0p8mml5d2vpgp344w2jbqm0"
"rev": "af58a4c62415fbfd997c43422acf93e2e6ab5155",
"sha256": "1ihjj7gqjy75ccf4qniilddyiknjklc88mxns6sy8wz3ymr58vfh"
},
"qtspeech": {
"url": "https://invent.kde.org/qt/qt/qtspeech.git",
"rev": "4856b6e231d7e2373ec8f89e861603a0d815793a",
"sha256": "0v8lx6g43apfnyn37ccgjnq7abayplgnihx62fncgl2cpmy9nkha"
"rev": "75142c77cda8ef3a5c1cae69863e963797c667b5",
"sha256": "0iaw13vx80yfcchkmrmp6n79i0i6b9rv7k69xxp3wb3l5d3n0ng0"
},
"qtsvg": {
"url": "https://invent.kde.org/qt/qt/qtsvg.git",
"rev": "837b5163e17edbd3a9f098e9a1ab73febab419b4",
"sha256": "082i9q36d44g5a3jbw3ahvmmxikfai50wd2yq8xvkh8kr8xr7n5z"
"rev": "37b2c764fb599c96fc415049208e871c729217c8",
"sha256": "11h0n9k6l4r97x6h1m09nzsblwmmkkj46nl80dnvjimb395d71ri"
},
"qttools": {
"url": "https://invent.kde.org/qt/qt/qttools.git",
"rev": "5649efd376ed7dbb171905e9edebbd547d1f73eb",
"sha256": "1c49v7pni6bljnf4ppxrrdr0h0hpw4i7s6an91m7ca18s8x4m1rb"
"rev": "9f7af2d08eea7c2a2a2bfe7e6a9b73d1b99f5123",
"sha256": "1vb6s9zy8nw6gd0kmk77bjvxwpnfbhaifrznp019zccckibzffsg"
},
"qttranslations": {
"url": "https://invent.kde.org/qt/qt/qttranslations.git",
"rev": "2b802231af3eb21c3c781753aba804217f855e86",
"sha256": "1xdp1x6qkdm0xz8yg1j2c1fpav54c1rwxlpfj116xspfik4zy7gf"
"rev": "a680686754d84b91d4cc4252a2fb8af0c58f5f49",
"sha256": "1i92mk6f2ldwq12qa4wnlz52zya4nlpjm3r2vy95vkj69xi2bfk3"
},
"qtvirtualkeyboard": {
"url": "https://invent.kde.org/qt/qt/qtvirtualkeyboard.git",
"rev": "4191fd9098ae25ffd5917370427460842e73f0cb",
"sha256": "0jl9dw1azh961hcakmyxavfm0w7g1a89lyj2bal8dqvv9y3089cj"
"rev": "72373522141dd3206183eb5fa56ae1c36a6d4c2b",
"sha256": "1ndgy8jxn9f7dwg9kydhlbll20qdivfbvdlcxk8qpzilpccd2l3z"
},
"qtwayland": {
"url": "https://invent.kde.org/qt/qt/qtwayland.git",
"rev": "c4c3fc69250c01cb35aaae5ea1ea2bcc8236dff0",
"sha256": "040wgrxr2kkshpyg3gwcggdxlxrjd7pbnr3fj8v63byx34sz2w9b"
"rev": "d4f650b6c29c621c58bc7b7e7c9ddcbbbc72e3b4",
"sha256": "11xqpj36mfyfhcip89i82dyclbkvs77byffax2kscv1kdj3x7w2l"
},
"qtwebchannel": {
"url": "https://invent.kde.org/qt/qt/qtwebchannel.git",
"rev": "c508ffb1996eeddfd10dda493974746e6b375080",
"sha256": "0hs7cqfiwc0mdsa9zngackfljy7d5306mpn3rwjfi5rawd85xsp0"
"rev": "74c0625337c8a8de0a465878c7e7d238e8d979ed",
"sha256": "0yz2sg8k3l88ngsgyfb6cljh8x5sicww59m447xk7yngxgyaj75m"
},
"qtwebglplugin": {
"url": "https://invent.kde.org/qt/qt/qtwebglplugin.git",
"rev": "64beacdd2d0f6fe0796bd291c9ab33f206a333c3",
"sha256": "1vqmxkfzggsalq2ic2b902jy0b47zkgzl95gg8dia8089vfny4kn"
"rev": "13202e8a8c0c6d39026344b5a19a0148592160bc",
"sha256": "0gki7hc3684qhqbq7i4wa3w7szy3j6af0yfd50q2mxb1lbxjsdrx"
},
"qtwebsockets": {
"url": "https://invent.kde.org/qt/qt/qtwebsockets.git",
"rev": "ed7416b1b8af9de9926388408469a35f2ad6a795",
"sha256": "1434bqqb1hm49b1acwb22b2lc9p936dlylg0m56h2pl4vv9w0v3b"
"rev": "89fbe461e7091ae6a4689b7791293a06c9167776",
"sha256": "15vkh80rma5l9mrmg41vhxvqxlzqjzl8x20k33xm11lw2kjsszm5"
},
"qtwebview": {
"url": "https://invent.kde.org/qt/qt/qtwebview.git",
"rev": "23d67d0de3301dbed5d8c5880b6cf60bfa9eeb2a",
"sha256": "16rqz6jiiswaiwa7hn6pn0cq9la8843b4jxi8di30ymq9ysivbqq"
"rev": "7e941648610ff4033ae8f9709077edd0595364f0",
"sha256": "082w4r674fq7ks5jbh3pj3xb3sqlhn4giy7fy0h3vw170lmcqz0m"
},
"qtwinextras": {
"url": "https://invent.kde.org/qt/qt/qtwinextras.git",
"rev": "44d18eaff83b7491a130e41678cadcc3ba836a8d",
"sha256": "10fky86gcma9fwdbk3s733x7gqgxzsg6iaf9j42b0f8c2n5jhql3"
"rev": "5afc77f5347113b607ca0262505f3406e1be5bf4",
"sha256": "1a7dm0dxqq817pib1y6m0f09sc2cqd1qkfb9anznsgpmzynvfp6r"
},
"qtx11extras": {
"url": "https://invent.kde.org/qt/qt/qtx11extras.git",
"rev": "8bba77a558049727d1bc88736dd03d1b5c41cead",
"sha256": "1lk4jm2pp0n8disxpcr1520bd798lif23fisnmkzysxcrlw1dflh"
"rev": "74f81f0bfe17e5aabcebafcb0cf36f739133554c",
"sha256": "1akp4mwvfspxdq5akpyphf6p3ay0z9pzaigiiy198w9q0yvrkgl7"
},
"qtxmlpatterns": {
"url": "https://invent.kde.org/qt/qt/qtxmlpatterns.git",
"rev": "fa0c41677ab43bc50bc4d086dfce96602060b7e0",
"sha256": "1wrh1m9s4pdbvlgy93jv6acn9k1an6jb086cbxscgimgw3kb867p"
"rev": "0c1dcfe344c03d48d753aeb58f139bc990f2611c",
"sha256": "1cab7y9asivdg9ypwc951pczf4ddgni60l1ajlfsprk48rypr7w1"
}
}

View File

@ -1,8 +1,10 @@
{ lib, fetchgit, fetchFromGitHub }:
let
version = "5.15.9";
overrides = {};
version = "5.15.10";
overrides = {
qtscript.version = "5.15.9";
};
mk = name: args:
let
@ -74,37 +76,15 @@ lib.mapAttrs mk (lib.importJSON ./srcs-generated.json)
hash = "sha256-LPfBCEB5tJOljXpptsNk0sHGtJf/wIRL7fccN79Nh6o=";
};
qtwebengine =
let
branchName = "5.15.13";
rev = "v${branchName}-lts";
in
{
version = branchName;
qtwebengine = rec {
version = "5.15.14";
src = fetchgit {
url = "https://github.com/qt/qtwebengine.git";
sha256 = "sha256-gZmhJTA5A3+GeySJoppYGffNC6Ych2pOYlsu3w+fnmw=";
inherit rev branchName;
src = fetchFromGitHub {
owner = "qt";
repo = "qtwebengine";
rev = "v${version}-lts";
hash = "sha256-jIoNwRdr0bZ2p0UMp/KDQuwgNjhzzGlb91UGjQgT60Y=";
fetchSubmodules = true;
leaveDotGit = true;
name = "qtwebengine-${lib.substring 0 8 rev}.tar.gz";
postFetch = ''
# remove submodule .git directory
rm -rf "$out/src/3rdparty/.git"
# compress to not exceed the 2GB output limit
# try to make a deterministic tarball
tar -I 'gzip -n' \
--sort=name \
--mtime=1970-01-01 \
--owner=root --group=root \
--numeric-owner --mode=go=rX,u+rw,a-s \
--transform='s@^@source/@' \
-cf temp -C "$out" .
rm -r "$out"
mv temp "$out"
'';
};
};
}

View File

@ -21,6 +21,9 @@ tcl.mkTclDerivation {
})
# Remove duplicated definition of XLowerWindow
./duplicated-xlowerwindow.patch
# Fix incompatible function pointer conversions and implicit definition of `panic`.
# `panic` is just `Tcl_Panic`, but it is not defined on Darwin due to a conflict with `mach/mach.h`.
./fix-clang16.patch
] ++ lib.optional (tcl.release == "8.6")
(fetchpatch {
name = "tix-8.4.3-tcl8.6.patch";

View File

@ -0,0 +1,215 @@
diff -ur a/generic/tixDItem.c b/generic/tixDItem.c
--- a/generic/tixDItem.c 2004-03-27 19:44:56.000000000 -0700
+++ b/generic/tixDItem.c 2023-07-11 14:49:51.583894242 -0600
@@ -30,7 +30,7 @@
Tcl_Interp *interp, Tk_Window tkwin, CONST84 char *value,
char *widRec, int offset));
-static char *DItemPrintProc _ANSI_ARGS_((
+static const char *DItemPrintProc _ANSI_ARGS_((
ClientData clientData, Tk_Window tkwin, char *widRec,
int offset, Tcl_FreeProc **freeProcPtr));
@@ -548,7 +548,7 @@
return TCL_OK;
}
-static char *DItemPrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
+static const char *DItemPrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
ClientData clientData;
Tk_Window tkwin;
char *widRec;
diff -ur a/generic/tixDiStyle.c b/generic/tixDiStyle.c
--- a/generic/tixDiStyle.c 2004-03-27 19:44:56.000000000 -0700
+++ b/generic/tixDiStyle.c 2023-07-11 15:02:45.245210252 -0600
@@ -31,7 +31,7 @@
static int DItemStyleParseProc _ANSI_ARGS_((ClientData clientData,
Tcl_Interp *interp, Tk_Window tkwin,
CONST84 char *value,char *widRec, int offset));
-static char * DItemStylePrintProc _ANSI_ARGS_((
+static const char * DItemStylePrintProc _ANSI_ARGS_((
ClientData clientData, Tk_Window tkwin,
char *widRec, int offset,
Tcl_FreeProc **freeProcPtr));
@@ -785,7 +785,7 @@
hashPtr = Tcl_CreateHashEntry(&stylePtr->base.items, (char*)iPtr, &isNew);
if (!isNew) {
- panic("DItem is already associated with style");
+ Tcl_Panic("DItem is already associated with style");
} else {
Tcl_SetHashValue(hashPtr, (char*)iPtr);
}
@@ -801,7 +801,7 @@
hashPtr = Tcl_FindHashEntry(&stylePtr->base.items, (char*)iPtr);
if (hashPtr == NULL) {
- panic("DItem is not associated with style");
+ Tcl_Panic("DItem is not associated with style");
}
Tcl_DeleteHashEntry(hashPtr);
stylePtr->base.refCount--;
@@ -998,7 +998,7 @@
return TCL_ERROR;
}
-static char *DItemStylePrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
+static const char *DItemStylePrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
ClientData clientData;
Tk_Window tkwin;
char *widRec;
diff -ur a/generic/tixForm.c b/generic/tixForm.c
--- a/generic/tixForm.c 2004-03-27 19:44:56.000000000 -0700
+++ b/generic/tixForm.c 2023-07-11 14:53:45.695753419 -0600
@@ -802,7 +802,7 @@
* Now set all the client's geometry
*/
if (PlaceAllClients(masterPtr) != TCL_OK) {
- panic("circular dependency");
+ Tcl_Panic("circular dependency");
}
for (clientPtr = masterPtr->client; clientPtr; clientPtr=clientPtr->next) {
diff -ur a/generic/tixGrData.c b/generic/tixGrData.c
--- a/generic/tixGrData.c 2004-03-27 19:44:56.000000000 -0700
+++ b/generic/tixGrData.c 2023-07-11 14:54:19.644741199 -0600
@@ -296,7 +296,7 @@
Tcl_DeleteHashEntry(cy);
}
else {
- panic("Inconsistent grid dataset: (%d,%d) : %x %x", x, y, cx, cy);
+ Tcl_Panic("Inconsistent grid dataset: (%d,%d) : %x %x", x, y, cx, cy);
}
return 1;
diff -ur a/generic/tixGrid.c b/generic/tixGrid.c
--- a/generic/tixGrid.c 2008-02-27 21:10:43.000000000 -0700
+++ b/generic/tixGrid.c 2023-07-11 14:53:59.283841038 -0600
@@ -831,7 +831,7 @@
* All mapped windows should have been unmapped when the
* the entries were deleted
*/
- panic("tixGrid: mappedWindows not NULL");
+ Tcl_Panic("tixGrid: mappedWindows not NULL");
}
Tk_FreeOptions(configSpecs, (char *) wPtr, wPtr->dispData.display, 0);
diff -ur a/generic/tixHList.c b/generic/tixHList.c
--- a/generic/tixHList.c 2008-02-27 21:05:29.000000000 -0700
+++ b/generic/tixHList.c 2023-07-11 14:55:20.699375202 -0600
@@ -2036,7 +2036,7 @@
break;
}
if (wPtr->headerWin != NULL) {
- panic("HList: header subwindow deleted illegally\n");
+ Tcl_Panic("HList: header subwindow deleted illegally\n");
}
#endif
break;
@@ -2117,7 +2117,7 @@
* All mapped windows should have been unmapped when the
* the entries were deleted
*/
- panic("tixHList: mappedWindows not NULL");
+ Tcl_Panic("tixHList: mappedWindows not NULL");
}
if (wPtr->headerWin) {
wPtr->headerWin = NULL;
diff -ur a/generic/tixImgCmp.c b/generic/tixImgCmp.c
--- a/generic/tixImgCmp.c 2008-02-27 21:05:29.000000000 -0700
+++ b/generic/tixImgCmp.c 2023-07-11 14:59:16.429640785 -0600
@@ -142,8 +142,8 @@
* The type record for bitmap images:
*/
static int ImgCmpCreate _ANSI_ARGS_((Tcl_Interp *interp,
- char *name, int argc, Tcl_Obj *CONST objv[],
- Tk_ImageType *typePtr, Tk_ImageMaster master,
+ const char *name, int argc, Tcl_Obj *CONST objv[],
+ const Tk_ImageType *typePtr, Tk_ImageMaster master,
ClientData *clientDataPtr));
static ClientData ImgCmpGet _ANSI_ARGS_((Tk_Window tkwin,
ClientData clientData));
@@ -378,11 +378,11 @@
ImgCmpCreate(interp, name, argc, objv, typePtr, master, clientDataPtr)
Tcl_Interp *interp; /* Interpreter for application containing
* image. */
- char *name; /* Name to use for image. */
+ const char *name; /* Name to use for image. */
int argc; /* Number of arguments. */
Tcl_Obj *CONST objv[]; /* Argument strings for options (doesn't
* include image name or type). */
- Tk_ImageType *typePtr; /* Pointer to our type record (not used). */
+ const Tk_ImageType *typePtr;/* Pointer to our type record (not used). */
Tk_ImageMaster master; /* Token for image, to be used by us in
* later callbacks. */
ClientData *clientDataPtr; /* Store manager's token for image here;
diff -ur a/generic/tixImgXpm.c b/generic/tixImgXpm.c
--- a/generic/tixImgXpm.c 2023-07-11 15:01:05.887387236 -0600
+++ b/generic/tixImgXpm.c 2023-07-11 15:00:37.209042328 -0600
@@ -22,8 +22,8 @@
*/
static int ImgXpmCreate _ANSI_ARGS_((Tcl_Interp *interp,
- char *name, int argc, Tcl_Obj *CONST objv[],
- Tk_ImageType *typePtr, Tk_ImageMaster master,
+ const char *name, int argc, Tcl_Obj *CONST objv[],
+ const Tk_ImageType *typePtr, Tk_ImageMaster master,
ClientData *clientDataPtr));
static ClientData ImgXpmGet _ANSI_ARGS_((Tk_Window tkwin,
ClientData clientData));
@@ -115,11 +115,11 @@
ImgXpmCreate(interp, name, argc, objv, typePtr, master, clientDataPtr)
Tcl_Interp *interp; /* Interpreter for application containing
* image. */
- char *name; /* Name to use for image. */
+ const char *name; /* Name to use for image. */
int argc; /* Number of arguments. */
Tcl_Obj *CONST objv[]; /* Argument strings for options (doesn't
* include image name or type). */
- Tk_ImageType *typePtr; /* Pointer to our type record (not used). */
+ const Tk_ImageType *typePtr;/* Pointer to our type record (not used). */
Tk_ImageMaster master; /* Token for image, to be used by us in
* later callbacks. */
ClientData *clientDataPtr; /* Store manager's token for image here;
@@ -1213,7 +1213,7 @@
PixmapMaster *masterPtr = (PixmapMaster *) masterData;
if (masterPtr->instancePtr != NULL) {
- panic("tried to delete pixmap image when instances still exist");
+ Tcl_Panic("tried to delete pixmap image when instances still exist");
}
masterPtr->tkMaster = NULL;
if (masterPtr->imageCmd != NULL) {
diff -ur a/generic/tixTList.c b/generic/tixTList.c
--- a/generic/tixTList.c 2008-02-27 21:05:29.000000000 -0700
+++ b/generic/tixTList.c 2023-07-11 14:55:35.960761327 -0600
@@ -1208,7 +1208,7 @@
sprintf(buff, "%d", i);
Tcl_AppendResult(interp, buff, NULL);
} else {
- panic("TList list entry is invalid");
+ Tcl_Panic("TList list entry is invalid");
}
} else {
Tcl_ResetResult(interp);
diff -ur a/generic/tixUtils.c b/generic/tixUtils.c
--- a/generic/tixUtils.c 2008-02-27 21:29:17.000000000 -0700
+++ b/generic/tixUtils.c 2023-07-11 15:01:43.718202631 -0600
@@ -24,7 +24,7 @@
static int ReliefParseProc(ClientData clientData,
Tcl_Interp *interp, Tk_Window tkwin, CONST84 char *value,
char *widRec, int offset);
-static char * ReliefPrintProc(ClientData clientData,
+static const char * ReliefPrintProc(ClientData clientData,
Tk_Window tkwin, char *widRec, int offset,
Tix_FreeProc **freeProcPtr);
@@ -637,7 +637,7 @@
return TCL_ERROR;
}
-static char *
+static const char *
ReliefPrintProc(clientData, tkwin, widRec,offset, freeProcPtr)
ClientData clientData;
Tk_Window tkwin;

View File

@ -20,13 +20,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "umockdev";
version = "0.17.17";
version = "0.17.18";
outputs = [ "bin" "out" "dev" "devdoc" ];
src = fetchurl {
url = "https://github.com/martinpitt/umockdev/releases/download/${finalAttrs.version}/umockdev-${finalAttrs.version}.tar.xz";
sha256 = "sha256-IOYhseRYsyADz+qZc5tngkuGZShUqLzjPiYSTjR/32w=";
sha256 = "sha256-RmrT4McV5W9Q6mqWUWWCPQc6hBN6y4oeObZlc2SKmF8=";
};
patches = [

View File

@ -11,10 +11,7 @@
let
inherit (gdk-pixbuf) moduleDir;
# turning lib/gdk-pixbuf-#.#/#.#.#/loaders into lib/gdk-pixbuf-#.#/#.#.#/loaders.cache
# removeSuffix is just in case moduleDir gets a trailing slash
loadersPath = (lib.strings.removeSuffix "/" gdk-pixbuf.moduleDir) + ".cache";
loadersPath = "${gdk-pixbuf.binaryDir}/webp-loaders.cache";
in
stdenv.mkDerivation rec {
pname = "webp-pixbuf-loader";
@ -47,7 +44,7 @@ stdenv.mkDerivation rec {
postPatch = ''
# It looks for gdk-pixbuf-thumbnailer in this package's bin rather than the gdk-pixbuf bin. We need to patch that.
substituteInPlace webp-pixbuf.thumbnailer.in \
--replace "@bindir@/gdk-pixbuf-thumbnailer" "$out/bin/webp-thumbnailer"
--replace "@bindir@/gdk-pixbuf-thumbnailer" "$out/libexec/gdk-pixbuf-thumbnailer-webp"
'';
postInstall = ''
@ -58,7 +55,7 @@ stdenv.mkDerivation rec {
# It assumes gdk-pixbuf-thumbnailer can find the webp loader in the loaders.cache referenced by environment variable, breaking containment.
# So we replace it with a wrapped executable.
mkdir -p "$out/bin"
makeWrapper "${gdk-pixbuf}/bin/gdk-pixbuf-thumbnailer" "$out/bin/webp-thumbnailer" \
makeWrapper "${gdk-pixbuf}/bin/gdk-pixbuf-thumbnailer" "$out/libexec/gdk-pixbuf-thumbnailer-webp" \
--set GDK_PIXBUF_MODULE_FILE "$out/${loadersPath}"
'';

View File

@ -42,6 +42,8 @@ buildPythonPackage rec {
yarl
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
aresponses
pytest-asyncio

View File

@ -31,6 +31,8 @@ buildPythonPackage rec {
haversine
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
aresponses
mock

View File

@ -30,6 +30,8 @@ buildPythonPackage rec {
pytz
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
aresponses
pytest-asyncio

View File

@ -30,6 +30,8 @@ buildPythonPackage rec {
pytz
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
aresponses
pytest-asyncio

View File

@ -31,6 +31,8 @@ buildPythonPackage rec {
pytz
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
aresponses
mock

View File

@ -30,6 +30,8 @@ buildPythonPackage rec {
pytz
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
aresponses
pytest-asyncio

View File

@ -30,6 +30,8 @@ buildPythonPackage rec {
pytz
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
pytestCheckHook
];

View File

@ -35,6 +35,8 @@ buildPythonPackage rec {
dateparser
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
aresponses
mock

View File

@ -28,6 +28,8 @@ buildPythonPackage rec {
dateparser
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
aresponses
pytest-asyncio

View File

@ -25,6 +25,8 @@ buildPythonPackage rec {
aiohttp
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
pytest-aiohttp
pytestCheckHook

View File

@ -6,6 +6,7 @@
, pythonOlder
# build_requires
, setuptools
, wheel
# install_requires
, attrs
, charset-normalizer
@ -49,6 +50,8 @@ buildPythonPackage rec {
url = "https://github.com/aio-libs/aiohttp/commit/7dcc235cafe0c4521bbbf92f76aecc82fee33e8b.patch";
hash = "sha256-ZzhlE50bmA+e2XX2RH1FuWQHZIAa6Dk/hZjxPoX5t4g=";
})
# https://github.com/aio-libs/aiohttp/pull/7454 but does not merge cleanly
./setuptools-67.5.0-compatibility.diff
];
postPatch = ''
@ -57,6 +60,7 @@ buildPythonPackage rec {
nativeBuildInputs = [
setuptools
wheel
];
propagatedBuildInputs = [

View File

@ -0,0 +1,27 @@
diff --git a/setup.cfg b/setup.cfg
index 6944b7e2..dfa65d69 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -128,6 +128,7 @@ filterwarnings =
ignore:Creating a LegacyVersion has been deprecated and will be removed in the next major release:DeprecationWarning::
ignore:module 'sre_constants' is deprecated:DeprecationWarning:pkg_resources._vendor.pyparsing
ignore:path is deprecated. Use files.. instead. Refer to https.//importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.:DeprecationWarning:certifi.core
+ ignore:pkg_resources is deprecated as an API:DeprecationWarning
junit_suite_name = aiohttp_test_suite
norecursedirs = dist docs build .tox .eggs
minversion = 3.8.2
diff --git a/tests/test_circular_imports.py b/tests/test_circular_imports.py
index 22e5ea47..a655fd1d 100644
--- a/tests/test_circular_imports.py
+++ b/tests/test_circular_imports.py
@@ -113,6 +113,10 @@ def test_no_warnings(import_path: str) -> None:
"-W",
"ignore:Creating a LegacyVersion has been deprecated and will "
"be removed in the next major release:DeprecationWarning:",
+ # Deprecation warning emitted by setuptools v67.5.0+ triggered by importing
+ # `gunicorn.util`.
+ "-W", "ignore:pkg_resources is deprecated as an API:"
+ "DeprecationWarning",
"-c", f"import {import_path!s}",
# fmt: on
)

View File

@ -37,6 +37,8 @@ buildPythonPackage rec {
async-timeout
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
pytestCheckHook
pytest-aiohttp

View File

@ -3,6 +3,7 @@
, case
, fetchPypi
, pytestCheckHook
, pytest-rerunfailures
, pythonOlder
, vine
}:
@ -23,9 +24,12 @@ buildPythonPackage rec {
vine
];
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
case
pytestCheckHook
pytest-rerunfailures
];
disabledTests = [

View File

@ -1,22 +1,42 @@
{ lib, buildPythonPackage, fetchPypi, isPy3k, six, mock, pytestCheckHook, setuptools, setuptools-scm }:
{ lib
, buildPythonPackage
, fetchpatch
, fetchPypi
, pytestCheckHook
, setuptools
, setuptools-scm
, wheel
}:
buildPythonPackage rec {
pname = "ansi2html";
version = "1.8.0";
format = "pyproject";
disabled = !isPy3k;
src = fetchPypi {
inherit pname version;
hash = "sha256-OLgqKYSCofomE/D5yb6z23Ko+DLurFjrLke/Ms039tU=";
};
nativeBuildInputs = [ setuptools-scm ];
propagatedBuildInputs = [ six setuptools ];
patches = [
(fetchpatch {
name = "update-build-requirements.patch";
url = "https://github.com/pycontribs/ansi2html/commit/be9c47dd39e500b2e34e95efde90d0a3b44daaee.patch";
hash = "sha256-nvOclsgysg+4sK694ppls0BLfq5MCJJQW3V/Ru30D/k=";
})
];
nativeBuildInputs = [
setuptools
setuptools-scm
wheel
];
preCheck = "export PATH=$PATH:$out/bin";
nativeCheckInputs = [ mock pytestCheckHook ];
nativeCheckInputs = [
pytestCheckHook
];
pythonImportsCheck = [ "ansi2html" ];

View File

@ -58,6 +58,8 @@ buildPythonPackage rec {
];
};
__darwinAllowLocalNetworking = true;
nativeCheckInputs = [
openssh
openssl

View File

@ -1,6 +1,7 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
, cython_3
, poetry-core
, pytestCheckHook
, pythonOlder
@ -9,7 +10,7 @@
buildPythonPackage rec {
pname = "bluetooth-data-tools";
version = "1.6.1";
version = "1.7.0";
format = "pyproject";
disabled = pythonOlder "3.9";
@ -18,10 +19,15 @@ buildPythonPackage rec {
owner = "Bluetooth-Devices";
repo = pname;
rev = "refs/tags/v${version}";
hash = "sha256-A3zdM2kVmz8cUix9JT8cnIABZK64r6yiZisvb8A1RSQ=";
hash = "sha256-EmZPiZKm/80nJpPnJWhI9i4I6MhgQMifLOEUBFLqbSw=";
};
# The project can build both an optimized cython version and an unoptimized
# python version. This ensures we fail if we build the wrong one.
env.REQUIRE_CYTHON = 1;
nativeBuildInputs = [
cython_3
poetry-core
setuptools
];
@ -43,7 +49,7 @@ buildPythonPackage rec {
description = "Library for converting bluetooth data and packets";
homepage = "https://github.com/Bluetooth-Devices/bluetooth-data-tools";
changelog = "https://github.com/Bluetooth-Devices/bluetooth-data-tools/blob/v${version}/CHANGELOG.md";
license = with licenses; [ asl20 ];
license = licenses.asl20;
maintainers = with maintainers; [ fab ];
};
}

View File

@ -43,7 +43,8 @@ buildPythonPackage rec {
postPatch = ''
substituteInPlace pyproject.toml \
--replace "numba>=0.57.0" "numba"
--replace "numba>=0.57.0" "numba" \
--replace "numpy>=1.22.0,<1.25" "numpy"
'';
nativeBuildInputs = [

Some files were not shown because too many files have changed in this diff Show More