diff --git a/doc/builders/special.xml b/doc/builders/special.xml
index 525eb71abfe7e..c971134819818 100644
--- a/doc/builders/special.xml
+++ b/doc/builders/special.xml
@@ -6,6 +6,7 @@
This chapter describes several special builders.
+
diff --git a/doc/builders/special/makesetuphook.section.md b/doc/builders/special/makesetuphook.section.md
new file mode 100644
index 0000000000000..90d75c5491cff
--- /dev/null
+++ b/doc/builders/special/makesetuphook.section.md
@@ -0,0 +1,37 @@
+# pkgs.makeSetupHook {#sec-pkgs.makeSetupHook}
+
+`pkgs.makeSetupHook` is a builder that produces hooks that go in to `nativeBuildInputs`
+
+## Usage {#sec-pkgs.makeSetupHook-usage}
+
+```nix
+pkgs.makeSetupHook {
+ name = "something-hook";
+ propagatedBuildInputs = [ pkgs.commandsomething ];
+ depsTargetTargetPropagated = [ pkgs.libsomething ];
+} ./script.sh
+```
+
+#### setup hook that depends on the hello package and runs hello and @shell@ is substituted with path to bash
+
+```nix
+pkgs.makeSetupHook {
+ name = "run-hello-hook";
+ propagatedBuildInputs = [ pkgs.hello ];
+ substitutions = { shell = "${pkgs.bash}/bin/bash"; };
+ passthru.tests.greeting = callPackage ./test { };
+ meta.platforms = lib.platforms.linux;
+} (writeScript "run-hello-hook.sh" ''
+ #!@shell@
+ hello
+'')
+```
+
+## Attributes
+
+* `name` Set the name of the hook.
+* `propagatedBuildInputs` Runtime dependencies (such as binaries) of the hook.
+* `depsTargetTargetPropagated` Non-binary dependencies.
+* `meta`
+* `passthru`
+* `substitutions` Variables for `substituteAll`
diff --git a/doc/languages-frameworks/gnome.section.md b/doc/languages-frameworks/gnome.section.md
index 0d4865b7af1c6..3c8539ac4244e 100644
--- a/doc/languages-frameworks/gnome.section.md
+++ b/doc/languages-frameworks/gnome.section.md
@@ -116,10 +116,6 @@ For convenience, it also adds `dconf.lib` for a GIO module implementing a GSetti
- []{#ssec-gnome-hooks-gobject-introspection} `gobject-introspection` setup hook populates `GI_TYPELIB_PATH` variable with `lib/girepository-1.0` directories of dependencies, which is then added to wrapper by `wrapGAppsHook`. It also adds `share` directories of dependencies to `XDG_DATA_DIRS`, which is intended to promote GIR files but it also [pollutes the closures](https://github.com/NixOS/nixpkgs/issues/32790) of packages using `wrapGAppsHook`.
- ::: {.warning}
- The setup hook [currently](https://github.com/NixOS/nixpkgs/issues/56943) does not work in expressions with `strictDeps` enabled, like Python packages. In those cases, you will need to disable it with `strictDeps = false;`.
- :::
-
- []{#ssec-gnome-hooks-gst-grl-plugins} Setup hooks of `gst_all_1.gstreamer` and `grilo` will populate the `GST_PLUGIN_SYSTEM_PATH_1_0` and `GRL_PLUGIN_PATH` variables, respectively, which will then be added to the wrapper by `wrapGAppsHook`.
You can also pass additional arguments to `makeWrapper` using `gappsWrapperArgs` in `preFixup` hook:
diff --git a/lib/customisation.nix b/lib/customisation.nix
index 42d711cf5fb93..cb3a4b561151f 100644
--- a/lib/customisation.nix
+++ b/lib/customisation.nix
@@ -213,7 +213,14 @@ rec {
outputSpecified = true;
drvPath = assert condition; drv.${outputName}.drvPath;
outPath = assert condition; drv.${outputName}.outPath;
- };
+ } //
+ # TODO: give the derivation control over the outputs.
+ # `overrideAttrs` may not be the only attribute that needs
+ # updating when switching outputs.
+ lib.optionalAttrs (passthru?overrideAttrs) {
+ # TODO: also add overrideAttrs when overrideAttrs is not custom, e.g. when not splicing.
+ overrideAttrs = f: (passthru.overrideAttrs f).${outputName};
+ };
};
outputsList = map outputToAttrListElement outputs;
diff --git a/nixos/doc/manual/release-notes/rl-2305.section.md b/nixos/doc/manual/release-notes/rl-2305.section.md
index c81cbc69f94ea..3f4fff353a93c 100644
--- a/nixos/doc/manual/release-notes/rl-2305.section.md
+++ b/nixos/doc/manual/release-notes/rl-2305.section.md
@@ -243,6 +243,8 @@ In addition to numerous new and upgraded packages, this release has the followin
- The new option `services.tailscale.useRoutingFeatures` controls various settings for using Tailscale features like exit nodes and subnet routers. If you wish to use your machine as an exit node, you can set this setting to `server`, otherwise if you wish to use an exit node you can set this setting to `client`. The strict RPF warning has been removed as the RPF will be loosened automatically based on the value of this setting.
+- `openjdk` from version 11 and above is not build with `openjfx` (i.e.: JavaFX) support by default anymore. You can re-enable it by overriding, e.g.: `openjdk11.override { enableJavaFX = true; };`.
+
- [Xastir](https://xastir.org/index.php/Main_Page) can now access AX.25 interfaces via the `libax25` package.
- `tvbrowser-bin` was removed, and now `tvbrowser` is built from source.
diff --git a/nixos/tests/systemd-cryptenroll.nix b/nixos/tests/systemd-cryptenroll.nix
index 9ee2d280fbbea..055ae7d1681f2 100644
--- a/nixos/tests/systemd-cryptenroll.nix
+++ b/nixos/tests/systemd-cryptenroll.nix
@@ -2,7 +2,6 @@ import ./make-test-python.nix ({ pkgs, ... }: {
name = "systemd-cryptenroll";
meta = with pkgs.lib.maintainers; {
maintainers = [ ymatsiuk ];
- broken = true; # times out after two hours, details -> https://github.com/NixOS/nixpkgs/issues/167994
};
nodes.machine = { pkgs, lib, ... }: {
diff --git a/pkgs/applications/audio/aether-lv2/default.nix b/pkgs/applications/audio/aether-lv2/default.nix
index e912c7fa49a42..179c656968ce4 100644
--- a/pkgs/applications/audio/aether-lv2/default.nix
+++ b/pkgs/applications/audio/aether-lv2/default.nix
@@ -18,6 +18,12 @@ stdenv.mkDerivation rec {
lv2 libX11 libGL libGLU mesa
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ "-Wno-error=stringop-overflow"
+ ];
+
installPhase = ''
mkdir -p $out/lib/lv2
cp -r aether.lv2 $out/lib/lv2
diff --git a/pkgs/applications/audio/bespokesynth/default.nix b/pkgs/applications/audio/bespokesynth/default.nix
index 6c48c756ab24c..7fc921e59fbfd 100644
--- a/pkgs/applications/audio/bespokesynth/default.nix
+++ b/pkgs/applications/audio/bespokesynth/default.nix
@@ -66,6 +66,10 @@ stdenv.mkDerivation rec {
fetchSubmodules = true;
};
+ postPatch = ''
+ sed '1i#include ' -i Source/TitleBar.h # gcc12
+ '';
+
cmakeBuildType = "Release";
cmakeFlags = lib.optionals enableVST2 [ "-DBESPOKE_VST2_SDK_LOCATION=${vst-sdk}/VST2_SDK" ];
diff --git a/pkgs/applications/audio/blanket/default.nix b/pkgs/applications/audio/blanket/default.nix
index 4662002c95e89..5a3d9949f8c50 100644
--- a/pkgs/applications/audio/blanket/default.nix
+++ b/pkgs/applications/audio/blanket/default.nix
@@ -31,13 +31,13 @@ python3Packages.buildPythonApplication rec {
pkg-config
wrapGAppsHook4
desktop-file-utils
+ gobject-introspection
];
buildInputs = [
glib
gtk4
libadwaita
- gobject-introspection
gst_all_1.gstreamer
gst_all_1.gst-plugins-base
gst_all_1.gst-plugins-good
@@ -48,9 +48,6 @@ python3Packages.buildPythonApplication rec {
pygobject3
];
- # Broken with gobject-introspection setup hook
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
format = "other";
postPatch = ''
diff --git a/pkgs/applications/audio/calf/default.nix b/pkgs/applications/audio/calf/default.nix
index 4ab651e3fb847..b4c9781ced197 100644
--- a/pkgs/applications/audio/calf/default.nix
+++ b/pkgs/applications/audio/calf/default.nix
@@ -10,6 +10,8 @@ stdenv.mkDerivation rec {
sha256 = "17x4hylgq4dn9qycsdacfxy64f5cv57n2qgkvsdp524gnqzw4az3";
};
+ outputs = [ "out" "doc" ];
+
enableParallelBuilding = true;
nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/applications/audio/cozy/default.nix b/pkgs/applications/audio/cozy/default.nix
index 6398141c86dd4..8f7461683be17 100644
--- a/pkgs/applications/audio/cozy/default.nix
+++ b/pkgs/applications/audio/cozy/default.nix
@@ -24,11 +24,6 @@ python3Packages.buildPythonApplication rec {
pname = "cozy";
version = "1.2.1";
- # Temporary fix
- # See https://github.com/NixOS/nixpkgs/issues/57029
- # and https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
src = fetchFromGitHub {
owner = "geigi";
repo = pname;
diff --git a/pkgs/applications/audio/furnace/default.nix b/pkgs/applications/audio/furnace/default.nix
index 0f15775b38d54..3d3b87e3c5dc8 100644
--- a/pkgs/applications/audio/furnace/default.nix
+++ b/pkgs/applications/audio/furnace/default.nix
@@ -63,6 +63,12 @@ stdenv.mkDerivation rec {
"-DWARNINGS_ARE_ERRORS=ON"
];
+ NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [
+ # Needed with GCC 12 but breaks on darwin (with clang)
+ "-Wno-error=mismatched-new-delete"
+ "-Wno-error=use-after-free"
+ ];
+
postInstall = lib.optionalString stdenv.hostPlatform.isDarwin ''
# Normal CMake install phase on Darwin only installs the binary, the user is expected to use CPack to build a
# bundle. That adds alot of overhead for not much benefit (CPack is currently abit broken, and needs impure access
diff --git a/pkgs/applications/audio/gpodder/default.nix b/pkgs/applications/audio/gpodder/default.nix
index a6164189c1dbd..d79aa713f0866 100644
--- a/pkgs/applications/audio/gpodder/default.nix
+++ b/pkgs/applications/audio/gpodder/default.nix
@@ -27,17 +27,12 @@ python3Packages.buildPythonApplication rec {
intltool
wrapGAppsHook
glibcLocales
+ gobject-introspection
];
- # as of 2021-07, the gobject-introspection setup hook does not
- # work with `strictDeps` enabled, thus for proper `wrapGAppsHook`
- # it needs to be disabled explicitly. https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
buildInputs = [
python3
gtk3
- gobject-introspection
gnome.adwaita-icon-theme
];
diff --git a/pkgs/applications/audio/jack-rack/default.nix b/pkgs/applications/audio/jack-rack/default.nix
index 420c11562e2a0..8cf55289b2f33 100644
--- a/pkgs/applications/audio/jack-rack/default.nix
+++ b/pkgs/applications/audio/jack-rack/default.nix
@@ -8,7 +8,7 @@ stdenv.mkDerivation rec {
};
nativeBuildInputs = [ pkg-config ];
buildInputs = [ libjack2 ladspaH gtk2 alsa-lib libxml2 lrdf ];
- NIX_LDFLAGS = "-ldl -lm -lpthread";
+ NIX_LDFLAGS = "-lm -lpthread";
meta = {
description = ''An effects "rack" for the JACK low latency audio API'';
diff --git a/pkgs/applications/audio/jamin/default.nix b/pkgs/applications/audio/jamin/default.nix
index 70cb4d7f11094..36b6345c0f113 100644
--- a/pkgs/applications/audio/jamin/default.nix
+++ b/pkgs/applications/audio/jamin/default.nix
@@ -21,8 +21,6 @@ stdenv.mkDerivation rec {
# `l_notebook1'; jamin-callbacks.o:/build/jamin-0.95.0/src/hdeq.h:64: first defined here
NIX_CFLAGS_COMPILE = "-fcommon";
- NIX_LDFLAGS = "-ldl";
-
postInstall = ''
wrapProgram $out/bin/jamin --set LADSPA_PATH ${ladspaPlugins}/lib/ladspa
'';
diff --git a/pkgs/applications/audio/lsp-plugins/default.nix b/pkgs/applications/audio/lsp-plugins/default.nix
index dd00bd1f2c022..4e4612ef922cb 100644
--- a/pkgs/applications/audio/lsp-plugins/default.nix
+++ b/pkgs/applications/audio/lsp-plugins/default.nix
@@ -4,19 +4,21 @@
, ladspaH, php, libXrandr }:
stdenv.mkDerivation rec {
- pname = "lsp-plugins";
- version = "1.2.5";
+ pname = "lsp-plugins";
+ version = "1.2.5";
- src = fetchurl {
- url = "https://github.com/sadko4u/${pname}/releases/download/${version}/${pname}-src-${version}.tar.gz";
- sha256 = "sha256-YYrt+FbpY7iEui0aw4Ce94BW1SHDk0OH8gFSzkW2fkw=";
- };
+ src = fetchurl {
+ url = "https://github.com/sadko4u/${pname}/releases/download/${version}/${pname}-src-${version}.tar.gz";
+ sha256 = "sha256-YYrt+FbpY7iEui0aw4Ce94BW1SHDk0OH8gFSzkW2fkw=";
+ };
- nativeBuildInputs = [ pkg-config php makeWrapper ];
- buildInputs = [ jack2 libsndfile libGLU libGL lv2 cairo ladspaH libXrandr ];
+ outputs = [ "out" "dev" "doc" ];
- makeFlags = [
- "PREFIX=${placeholder "out"}"
+ nativeBuildInputs = [ pkg-config php makeWrapper ];
+ buildInputs = [ jack2 libsndfile libGLU libGL lv2 cairo ladspaH libXrandr ];
+
+ makeFlags = [
+ "PREFIX=${placeholder "out"}"
];
NIX_CFLAGS_COMPILE = "-DLSP_NO_EXPERIMENTAL";
diff --git a/pkgs/applications/audio/mimic/default.nix b/pkgs/applications/audio/mimic/default.nix
index 7e11c0a8d75fd..47e043f5d4673 100644
--- a/pkgs/applications/audio/mimic/default.nix
+++ b/pkgs/applications/audio/mimic/default.nix
@@ -38,6 +38,11 @@ stdenv.mkDerivation rec {
pcre2
] ++ lib.optional pulseaudioSupport libpulseaudio;
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=free-nonheap-object"
+ ];
+
postInstall = ''
wrapProgram $out/bin/mimic \
--run "export ALSA_PLUGIN_DIR=${alsa-plugins}/lib/alsa-lib"
diff --git a/pkgs/applications/audio/mpg123/default.nix b/pkgs/applications/audio/mpg123/default.nix
index 29f28203e1389..3eb2cf20ee777 100644
--- a/pkgs/applications/audio/mpg123/default.nix
+++ b/pkgs/applications/audio/mpg123/default.nix
@@ -18,11 +18,11 @@
stdenv.mkDerivation rec {
pname = "mpg123";
- version = "1.29.3";
+ version = "1.31.2";
src = fetchurl {
url = "mirror://sourceforge/${pname}/${pname}-${version}.tar.bz2";
- sha256 = "sha256-ljiF2Mx3Ji8ot3GHx9GJ4yGV5kJE3iUwt5jd8yGD6Ec=";
+ sha256 = "sha256-sX8ikF4x9DtrQB399qce0Ru30Fb2jbRJ1wufmug5x94=";
};
outputs = [ "out" ] ++ lib.optionals withConplay [ "conplay" ];
diff --git a/pkgs/applications/audio/odin2/default.nix b/pkgs/applications/audio/odin2/default.nix
index beb1264679354..de89f9aedead4 100644
--- a/pkgs/applications/audio/odin2/default.nix
+++ b/pkgs/applications/audio/odin2/default.nix
@@ -28,6 +28,11 @@ stdenv.mkDerivation rec {
sha256 = "sha256-N96Nb7G6hqfh8DyMtHbttl/fRZUkS8f2KfPSqeMAhHY=";
};
+ postPatch = ''
+ sed '1i#include ' -i \
+ libs/JUCELV2/modules/juce_gui_basics/windows/juce_ComponentPeer.h # gcc12
+ '';
+
nativeBuildInputs = [
cmake
pkg-config
diff --git a/pkgs/applications/audio/opusfile/default.nix b/pkgs/applications/audio/opusfile/default.nix
index f86595361b659..47d7a64e3c20d 100644
--- a/pkgs/applications/audio/opusfile/default.nix
+++ b/pkgs/applications/audio/opusfile/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, pkg-config, openssl, libogg, libopus }:
+{ lib, stdenv, fetchurl, pkg-config, openssl, libogg, libopus, fetchpatch }:
stdenv.mkDerivation rec {
pname = "opusfile";
@@ -12,7 +12,14 @@ stdenv.mkDerivation rec {
buildInputs = [ openssl libogg ];
propagatedBuildInputs = [ libopus ];
outputs = [ "out" "dev" ];
- patches = [ ./include-multistream.patch ]
+ patches = [
+ ./include-multistream.patch
+ (fetchpatch {
+ name = "CVE-2022-47021.patch";
+ url = "https://github.com/xiph/opusfile/commit/0a4cd796df5b030cb866f3f4a5e41a4b92caddf5.patch";
+ sha256 = "sha256-XThI/ys5caB+OncFVfxm5IsvQPy1MbLQKwIlYjPvTJQ=";
+ })
+ ]
# fixes problem with openssl 1.1 dependency
# see https://github.com/xiph/opusfile/issues/13
++ lib.optionals stdenv.hostPlatform.isWindows [ ./disable-cert-store.patch ];
diff --git a/pkgs/applications/audio/sonata/default.nix b/pkgs/applications/audio/sonata/default.nix
index 9eae394488e28..78c17d09e0de3 100644
--- a/pkgs/applications/audio/sonata/default.nix
+++ b/pkgs/applications/audio/sonata/default.nix
@@ -39,10 +39,6 @@ in buildPythonApplication rec {
setuptools
];
- # Otherwise the setup hook for gobject-introspection is not run:
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
postPatch = ''
# Remove "Local MPD" tab which is not suitable for NixOS.
sed -i '/localmpd/d' sonata/consts.py
diff --git a/pkgs/applications/audio/stochas/default.nix b/pkgs/applications/audio/stochas/default.nix
index 84376a1bbe9e2..2b72664347e60 100644
--- a/pkgs/applications/audio/stochas/default.nix
+++ b/pkgs/applications/audio/stochas/default.nix
@@ -12,6 +12,11 @@ stdenv.mkDerivation rec {
fetchSubmodules = true;
};
+ postPatch = ''
+ sed '1i#include ' -i \
+ lib/JUCE/modules/juce_gui_basics/windows/juce_ComponentPeer.h # gcc12
+ '';
+
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [
diff --git a/pkgs/applications/audio/sublime-music/default.nix b/pkgs/applications/audio/sublime-music/default.nix
index d469c9689a5d8..5c64efce70950 100644
--- a/pkgs/applications/audio/sublime-music/default.nix
+++ b/pkgs/applications/audio/sublime-music/default.nix
@@ -75,10 +75,6 @@ python3Packages.buildPythonApplication rec {
++ lib.optional serverSupport bottle
;
- # hook for gobject-introspection doesn't like strictDeps
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
nativeCheckInputs = with python3Packages; [
pytest
];
diff --git a/pkgs/applications/editors/ed/default.nix b/pkgs/applications/editors/ed/default.nix
index f5ed28cedf68d..b7b70eb501ea1 100644
--- a/pkgs/applications/editors/ed/default.nix
+++ b/pkgs/applications/editors/ed/default.nix
@@ -8,11 +8,11 @@
stdenv.mkDerivation (rec {
pname = "ed";
- version = "1.18";
+ version = "1.19";
src = fetchurl {
url = "mirror://gnu/ed/${pname}-${version}.tar.lz";
- sha256 = "sha256-rKjvrZgAxYdySiC5eqj8R+a1pH34Fgb+q6gxsHRGK08=";
+ hash = "sha256-zi8uXEJHkKqW0J2suT2bv9wLfrYknJy3U4RS6Ox3zUg=";
};
nativeBuildInputs = [ lzip ];
diff --git a/pkgs/applications/editors/poke/default.nix b/pkgs/applications/editors/poke/default.nix
index 8f4bcfd672634..fba050a040cfc 100644
--- a/pkgs/applications/editors/poke/default.nix
+++ b/pkgs/applications/editors/poke/default.nix
@@ -80,13 +80,13 @@ in stdenv.mkDerivation rec {
moveToOutput share/vim "$out"
'';
+ # Prevent tclPackageHook from auto-wrapping all binaries, we only
+ # need to wrap poke-gui
+ dontWrapTclBinaries = true;
+
postFixup = lib.optionalString guiSupport ''
wrapProgram "$out/bin/poke-gui" \
--prefix TCLLIBPATH ' ' "$TCLLIBPATH"
-
- # Prevent tclPackageHook from auto-wrapping all binaries, we only
- # need to wrap poke-gui
- unset TCLLIBPATH
'';
passthru = {
diff --git a/pkgs/applications/editors/rednotebook/default.nix b/pkgs/applications/editors/rednotebook/default.nix
index 2018e1d5e2af1..abbfefce52933 100644
--- a/pkgs/applications/editors/rednotebook/default.nix
+++ b/pkgs/applications/editors/rednotebook/default.nix
@@ -30,10 +30,6 @@ buildPythonApplication rec {
"--suffix XDG_DATA_DIRS : $XDG_ICON_DIRS:$GSETTINGS_SCHEMAS_PATH"
];
- # Until gobject-introspection in nativeBuildInputs is supported.
- # https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-472568643
- strictDeps = false;
-
meta = with lib; {
homepage = "https://rednotebook.sourceforge.io/";
changelog = "https://github.com/jendrikseipp/rednotebook/blob/v${version}/CHANGELOG.md";
diff --git a/pkgs/applications/editors/vim/common.nix b/pkgs/applications/editors/vim/common.nix
index 66369c266d604..27a92ac659ba1 100644
--- a/pkgs/applications/editors/vim/common.nix
+++ b/pkgs/applications/editors/vim/common.nix
@@ -1,12 +1,12 @@
{ lib, fetchFromGitHub }:
rec {
- version = "9.0.0609";
+ version = "9.0.1275";
src = fetchFromGitHub {
owner = "vim";
repo = "vim";
rev = "v${version}";
- hash = "sha256-UBj3pXY6rdekKnCX/V/4o8LLBMZkNs1U4Z4KuvisIYQ=";
+ hash = "sha256-WDnlYi9o2Kv/f3Fh1MHcfTlBTe1fxw4UyKJlKY04fyA=";
};
enableParallelBuilding = true;
diff --git a/pkgs/applications/editors/vim/plugins/vim-utils.nix b/pkgs/applications/editors/vim/plugins/vim-utils.nix
index 4235aa5e929e0..5c7f6f64a7c3e 100644
--- a/pkgs/applications/editors/vim/plugins/vim-utils.nix
+++ b/pkgs/applications/editors/vim/plugins/vim-utils.nix
@@ -363,7 +363,7 @@ rec {
vimGenDocHook = callPackage ({ vim }:
makeSetupHook {
name = "vim-gen-doc-hook";
- deps = [ vim ];
+ propagatedBuildInputs = [ vim ];
substitutions = {
vimBinary = "${vim}/bin/vim";
inherit rtpPath;
@@ -373,7 +373,7 @@ rec {
vimCommandCheckHook = callPackage ({ neovim-unwrapped }:
makeSetupHook {
name = "vim-command-check-hook";
- deps = [ neovim-unwrapped ];
+ propagatedBuildInputs = [ neovim-unwrapped ];
substitutions = {
vimBinary = "${neovim-unwrapped}/bin/nvim";
inherit rtpPath;
@@ -383,7 +383,7 @@ rec {
neovimRequireCheckHook = callPackage ({ neovim-unwrapped }:
makeSetupHook {
name = "neovim-require-check-hook";
- deps = [ neovim-unwrapped ];
+ propagatedBuildInputs = [ neovim-unwrapped ];
substitutions = {
nvimBinary = "${neovim-unwrapped}/bin/nvim";
inherit rtpPath;
diff --git a/pkgs/applications/emulators/mame/default.nix b/pkgs/applications/emulators/mame/default.nix
index 084bf07454298..aedf42ee126b5 100644
--- a/pkgs/applications/emulators/mame/default.nix
+++ b/pkgs/applications/emulators/mame/default.nix
@@ -117,6 +117,10 @@ stdenv.mkDerivation rec {
--subst-var-by mamePath "$out/opt/mame"
'';
+ NIX_CFLAGS_COMPILE = [
+ "-Wno-error=use-after-free"
+ ];
+
desktopItems = [
(makeDesktopItem {
name = "MAME";
diff --git a/pkgs/applications/emulators/rpcs3/default.nix b/pkgs/applications/emulators/rpcs3/default.nix
index 8ef49e7b84d98..38890ce6e38bd 100644
--- a/pkgs/applications/emulators/rpcs3/default.nix
+++ b/pkgs/applications/emulators/rpcs3/default.nix
@@ -1,4 +1,4 @@
-{ gcc11Stdenv, lib, fetchFromGitHub, wrapQtAppsHook, cmake, pkg-config, git
+{ gcc12Stdenv, lib, fetchFromGitHub, wrapQtAppsHook, cmake, pkg-config, git
, qtbase, qtquickcontrols, qtmultimedia, openal, glew, vulkan-headers, vulkan-loader, libpng
, ffmpeg, libevdev, libusb1, zlib, curl, wolfssl, python3, pugixml, faudio, flatbuffers
, sdl2Support ? true, SDL2
@@ -21,7 +21,7 @@ let
sha256 = "0c3g30rj1y8fbd2q4kwlpg1jdy02z4w5ryhj3yr9051pdnf4kndz";
};
in
-gcc11Stdenv.mkDerivation {
+gcc12Stdenv.mkDerivation {
pname = "rpcs3";
version = rpcs3Version;
diff --git a/pkgs/applications/graphics/curtail/default.nix b/pkgs/applications/graphics/curtail/default.nix
index 118703afc60e4..7e6b253360ab1 100644
--- a/pkgs/applications/graphics/curtail/default.nix
+++ b/pkgs/applications/graphics/curtail/default.nix
@@ -37,18 +37,16 @@ python3.pkgs.buildPythonApplication rec {
meson
ninja
pkg-config
+ gobject-introspection
];
propagatedBuildInputs = [
appstream-glib
python3.pkgs.pygobject3
- gobject-introspection
gettext
+ gtk3
];
- # Currently still required for the gobject-introspection setup hook
- strictDeps = false;
-
preInstall = ''
patchShebangs ../build-aux/meson/postinstall.py
'';
diff --git a/pkgs/applications/graphics/foxotron/default.nix b/pkgs/applications/graphics/foxotron/default.nix
index e8fd0364808c2..ca2aa96bea141 100644
--- a/pkgs/applications/graphics/foxotron/default.nix
+++ b/pkgs/applications/graphics/foxotron/default.nix
@@ -46,6 +46,11 @@ stdenv.mkDerivation rec {
++ lib.optionals stdenv.hostPlatform.isLinux [ libX11 libXrandr libXinerama libXcursor libXi libXext alsa-lib fontconfig libGLU ]
++ lib.optionals stdenv.hostPlatform.isDarwin [ AVFoundation Carbon Cocoa CoreAudio Kernel OpenGL ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ ];
+
installPhase = ''
runHook preInstall
diff --git a/pkgs/applications/graphics/goxel/default.nix b/pkgs/applications/graphics/goxel/default.nix
index 325d1bcf083dd..8f70d9273b7a8 100644
--- a/pkgs/applications/graphics/goxel/default.nix
+++ b/pkgs/applications/graphics/goxel/default.nix
@@ -16,6 +16,12 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ scons pkg-config wrapGAppsHook ];
buildInputs = [ glfw3 gtk3 libpng12 ];
+
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=format-truncation"
+ ];
+
NIX_LDFLAGS = "-lpthread";
buildPhase = ''
diff --git a/pkgs/applications/graphics/hdrmerge/default.nix b/pkgs/applications/graphics/hdrmerge/default.nix
index b0e346331bce8..d690f5e0671a9 100644
--- a/pkgs/applications/graphics/hdrmerge/default.nix
+++ b/pkgs/applications/graphics/hdrmerge/default.nix
@@ -46,6 +46,11 @@ mkDerivation rec {
url = "https://github.com/mkroehnert/hdrmerge/commit/472b2dfe7d54856158aea3d5412a02d0bab1da4c.patch";
sha256 = "0jc713ajr4w08pfbi6bva442prj878nxp1fpl9112i3xj34x9sdi";
})
+ (fetchpatch {
+ name = "support-libraw-0.21.patch";
+ url = "https://github.com/jcelaya/hdrmerge/commit/779e566b3e2807280b78c79affda2cdfa64bde87.diff";
+ sha256 = "48sivCfJWEtGiBXTrO+SWTVlT9xyx92w2kkB8Wt/clk=";
+ })
];
desktopItems = [
diff --git a/pkgs/applications/graphics/krita/default.nix b/pkgs/applications/graphics/krita/default.nix
index cfb63e0e3f7cb..e8e6a2cc9f867 100644
--- a/pkgs/applications/graphics/krita/default.nix
+++ b/pkgs/applications/graphics/krita/default.nix
@@ -1,7 +1,7 @@
{ callPackage, ... } @ args:
callPackage ./generic.nix (args // {
- version = "5.1.4";
+ version = "5.1.5";
kde-channel = "stable";
- sha256 = "sha256-wisCCGJZbrL92RHhsXnbvOewgb4RFFei6sr2rhzKLcs=";
+ sha256 = "1lx4x4affkbh47b7w5qvahkkr4db0vcw6h24nykak6gpy2z5wxqw";
})
diff --git a/pkgs/applications/graphics/mcomix/default.nix b/pkgs/applications/graphics/mcomix/default.nix
index fbc80d0da6d5e..2cec147fb30a6 100644
--- a/pkgs/applications/graphics/mcomix/default.nix
+++ b/pkgs/applications/graphics/mcomix/default.nix
@@ -25,17 +25,13 @@ python3.pkgs.buildPythonApplication rec {
hash = "sha256-Nok4oqTezO84q9IDZvgi33ZeKfRL+tpg7QEDmp2ZZpU=";
};
- buildInputs = [ gobject-introspection gtk3 gdk-pixbuf ];
- nativeBuildInputs = [ wrapGAppsHook ];
+ buildInputs = [ gtk3 gdk-pixbuf ];
+ nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
propagatedBuildInputs = (with python3.pkgs; [ pillow pygobject3 pycairo ]);
# Tests are broken
doCheck = false;
- # Correct wrapper behavior, see https://github.com/NixOS/nixpkgs/issues/56943
- # until https://github.com/NixOS/nixpkgs/pull/102613
- strictDeps = false;
-
# prevent double wrapping
dontWrapGApps = true;
diff --git a/pkgs/applications/graphics/pick-colour-picker/default.nix b/pkgs/applications/graphics/pick-colour-picker/default.nix
index 0d3a86663b30b..774a8b19dd349 100644
--- a/pkgs/applications/graphics/pick-colour-picker/default.nix
+++ b/pkgs/applications/graphics/pick-colour-picker/default.nix
@@ -37,10 +37,6 @@ buildPythonPackage rec {
gtk3
];
- # https://github.com/NixOS/nixpkgs/issues/56943
- # this must be false, otherwise the gobject-introspection hook doesn't run
- strictDeps = false;
-
preDistPhases = [ "fixupIconPath" ];
fixupIconPath = ''
diff --git a/pkgs/applications/misc/genxword/default.nix b/pkgs/applications/misc/genxword/default.nix
index f443618c685ac..5ba67ecddcdb1 100644
--- a/pkgs/applications/misc/genxword/default.nix
+++ b/pkgs/applications/misc/genxword/default.nix
@@ -26,7 +26,6 @@ python3.pkgs.buildPythonApplication rec {
];
buildInputs = [
- gobject-introspection
pango
gtksourceview3
];
diff --git a/pkgs/applications/misc/gnome-secrets/default.nix b/pkgs/applications/misc/gnome-secrets/default.nix
index 1b8a7e706dde7..676a19641bdb1 100644
--- a/pkgs/applications/misc/gnome-secrets/default.nix
+++ b/pkgs/applications/misc/gnome-secrets/default.nix
@@ -18,7 +18,6 @@ python3Packages.buildPythonApplication rec {
pname = "gnome-secrets";
version = "7.2";
format = "other";
- strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
diff --git a/pkgs/applications/misc/hamster/default.nix b/pkgs/applications/misc/hamster/default.nix
index dbf7e1aee746e..925d246ba8448 100644
--- a/pkgs/applications/misc/hamster/default.nix
+++ b/pkgs/applications/misc/hamster/default.nix
@@ -1,4 +1,4 @@
-{ lib, fetchFromGitHub, python3Packages, intltool, glib, itstool
+{ lib, fetchFromGitHub, python3Packages, intltool, glib, itstool, gtk3
, wrapGAppsHook, gobject-introspection, pango, gdk-pixbuf, atk, wafHook }:
python3Packages.buildPythonApplication rec {
@@ -28,6 +28,7 @@ python3Packages.buildPythonApplication rec {
pango
gdk-pixbuf
atk
+ gtk3
];
propagatedBuildInputs = with python3Packages; [
@@ -37,10 +38,6 @@ python3Packages.buildPythonApplication rec {
dbus-python
];
- # Setup hooks have trouble with strict deps.
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
dontWrapGApps = true;
# Arguments to be passed to `makeWrapper`, only used by buildPython*
diff --git a/pkgs/applications/misc/kupfer/default.nix b/pkgs/applications/misc/kupfer/default.nix
index 47e310fb7658f..fbb33c7e096fe 100644
--- a/pkgs/applications/misc/kupfer/default.nix
+++ b/pkgs/applications/misc/kupfer/default.nix
@@ -11,6 +11,8 @@
, shared-mime-info
, wrapGAppsHook
, wafHook
+, bash
+, dbus
}:
with python3Packages;
@@ -33,14 +35,12 @@ buildPythonApplication rec {
itstool # for help pages
desktop-file-utils # for update-desktop-database
shared-mime-info # for update-mime-info
+ docutils # for rst2man
+ dbus # for detection of dbus-send during build
];
- buildInputs = [ docutils libwnck keybinder3 ];
+ buildInputs = [ libwnck keybinder3 bash ];
propagatedBuildInputs = [ pygobject3 gtk3 pyxdg dbus-python pycairo ];
- # without strictDeps kupfer fails to build: Could not find the python module 'gi.repository.Gtk'
- # see https://github.com/NixOS/nixpkgs/issues/56943 for details
- strictDeps = false;
-
postInstall = ''
gappsWrapperArgs+=(
"--prefix" "PYTHONPATH" : "${makePythonPath propagatedBuildInputs}"
diff --git a/pkgs/applications/misc/lutris/default.nix b/pkgs/applications/misc/lutris/default.nix
index d476024553ba3..35dbf1fcb440d 100644
--- a/pkgs/applications/misc/lutris/default.nix
+++ b/pkgs/applications/misc/lutris/default.nix
@@ -84,13 +84,12 @@ buildPythonApplication rec {
sha256 = "sha256-rsiXm7L/M85ot6NrTyy//lMRFlLPJYve9y6Erg9Ugxg=";
};
- nativeBuildInputs = [ wrapGAppsHook ];
+ nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
buildInputs = [
atk
gdk-pixbuf
glib-networking
gnome-desktop
- gobject-introspection
gtk3
libnotify
pango
@@ -139,9 +138,6 @@ buildPythonApplication rec {
"--prefix PATH : ${lib.makeBinPath requiredTools}"
"\${gappsWrapperArgs[@]}"
];
- # needed for glib-schemas to work correctly (will crash on dialogues otherwise)
- # see https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
meta = with lib; {
homepage = "https://lutris.net";
diff --git a/pkgs/applications/misc/lyx/default.nix b/pkgs/applications/misc/lyx/default.nix
index d1a19eeccc5e3..921ae570bca0b 100644
--- a/pkgs/applications/misc/lyx/default.nix
+++ b/pkgs/applications/misc/lyx/default.nix
@@ -11,6 +11,12 @@ mkDerivation rec {
sha256 = "sha256-xr7SYzQZiY4Bp8w1AxDX2TS/WRyrcln8JYGqTADq+ng=";
};
+ # Needed with GCC 12
+ postPatch = ''
+ sed '1i#include ' -i src/lyxfind.cpp
+ sed '1i#include ' -i src/insets/InsetListings.cpp
+ '';
+
# LaTeX is used from $PATH, as people often want to have it with extra pkgs
nativeBuildInputs = [ pkg-config makeWrapper ];
buildInputs = [
diff --git a/pkgs/applications/misc/minigalaxy/default.nix b/pkgs/applications/misc/minigalaxy/default.nix
index 743c92407e799..4dffe9e08eb6e 100644
--- a/pkgs/applications/misc/minigalaxy/default.nix
+++ b/pkgs/applications/misc/minigalaxy/default.nix
@@ -31,18 +31,14 @@ python3Packages.buildPythonApplication rec {
runHook postCheck
'';
- # Cannot find GSettings schemas when opening settings,
- # probably https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
nativeBuildInputs = [
gettext
wrapGAppsHook
+ gobject-introspection
];
buildInputs = [
glib-networking
- gobject-introspection
gtk3
];
@@ -64,6 +60,7 @@ python3Packages.buildPythonApplication rec {
];
# Run Linux games using the Steam Runtime by using steam-run in the wrapper
+ # FIXME: not working with makeBinaryWrapper
postFixup = ''
sed -e 's#exec -a "$0"#exec -a "$0" ${steam-run}/bin/steam-run#' -i $out/bin/minigalaxy
'';
diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix
index 935a9582fcaca..e5e0f92ed1da4 100644
--- a/pkgs/applications/misc/mysql-workbench/default.nix
+++ b/pkgs/applications/misc/mysql-workbench/default.nix
@@ -140,13 +140,16 @@ in stdenv.mkDerivation rec {
patchShebangs tools/get_wb_version.sh
'';
- NIX_CFLAGS_COMPILE = toString ([
+ NIX_CFLAGS_COMPILE = [
# error: 'OGRErr OGRSpatialReference::importFromWkt(char**)' is deprecated
"-Wno-error=deprecated-declarations"
] ++ lib.optionals stdenv.isAarch64 [
# error: narrowing conversion of '-1' from 'int' to 'char'
"-Wno-error=narrowing"
- ]);
+ ] ++ lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12") [
+ # Needed with GCC 12 but problematic with some old GCCs
+ "-Wno-error=maybe-uninitalized"
+ ];
cmakeFlags = [
"-DMySQL_CONFIG_PATH=${mysql}/bin/mysql_config"
diff --git a/pkgs/applications/misc/onboard/default.nix b/pkgs/applications/misc/onboard/default.nix
index 472af0caf484e..9d88d6331c1da 100644
--- a/pkgs/applications/misc/onboard/default.nix
+++ b/pkgs/applications/misc/onboard/default.nix
@@ -108,9 +108,6 @@ python3.pkgs.buildPythonApplication rec {
python3.pkgs.nose
];
- # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
doCheck = false;
preBuild = ''
diff --git a/pkgs/applications/misc/printrun/default.nix b/pkgs/applications/misc/printrun/default.nix
index 7ae8662e2c199..546c0544cffa4 100644
--- a/pkgs/applications/misc/printrun/default.nix
+++ b/pkgs/applications/misc/printrun/default.nix
@@ -32,8 +32,6 @@ python3Packages.buildPythonApplication rec {
'';
dontWrapGApps = true;
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
diff --git a/pkgs/applications/misc/udiskie/default.nix b/pkgs/applications/misc/udiskie/default.nix
index 91ad479f450e1..e28eb1e2ce358 100644
--- a/pkgs/applications/misc/udiskie/default.nix
+++ b/pkgs/applications/misc/udiskie/default.nix
@@ -43,7 +43,6 @@ python3.pkgs.buildPythonApplication rec {
dontWrapGApps = true;
buildInputs = [
- gobject-introspection
gtk3
libappindicator-gtk3
libnotify
diff --git a/pkgs/applications/misc/wike/default.nix b/pkgs/applications/misc/wike/default.nix
index c3e5a505722c4..00cd8dcf0518a 100644
--- a/pkgs/applications/misc/wike/default.nix
+++ b/pkgs/applications/misc/wike/default.nix
@@ -12,7 +12,6 @@ python3.pkgs.buildPythonApplication rec {
pname = "wike";
version = "1.7.1";
format = "other";
- strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitHub {
owner = "hugolabe";
diff --git a/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix b/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
index f80be45ebd1f7..7563e8c22d782 100644
--- a/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
+++ b/pkgs/applications/networking/feedreaders/gnome-feeds/default.nix
@@ -66,9 +66,6 @@ python3.pkgs.buildPythonApplication rec {
requests
];
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
dontWrapGApps = true;
preFixup = ''
diff --git a/pkgs/applications/networking/giara/default.nix b/pkgs/applications/networking/giara/default.nix
index 60c2ad8262caf..3e10a61a63f44 100644
--- a/pkgs/applications/networking/giara/default.nix
+++ b/pkgs/applications/networking/giara/default.nix
@@ -64,9 +64,6 @@ python3.pkgs.buildPythonApplication rec {
--replace "gtk-update-icon-cache" "gtk4-update-icon-cache"
'';
- # Fix setup-hooks https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
meta = with lib; {
description = "A Reddit app, built with Python, GTK and Handy; Created with mobile Linux in mind";
maintainers = with maintainers; [ dasj19 ];
diff --git a/pkgs/applications/networking/instant-messengers/jami/client.nix b/pkgs/applications/networking/instant-messengers/jami/client.nix
index f76d9ee9f12a2..80efff68e65f0 100644
--- a/pkgs/applications/networking/instant-messengers/jami/client.nix
+++ b/pkgs/applications/networking/instant-messengers/jami/client.nix
@@ -9,7 +9,7 @@
, python3
, qttools # for translations
, wrapQtAppsHook
-, ffmpeg-jami
+, ffmpeg_5
, jami-daemon
, libnotify
, qt5compat
@@ -43,7 +43,7 @@ stdenv.mkDerivation {
];
buildInputs = [
- ffmpeg-jami
+ ffmpeg_5
jami-daemon
libnotify
networkmanager
diff --git a/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_common b/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_common
deleted file mode 100644
index 0aac24e24bb67..0000000000000
--- a/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_common
+++ /dev/null
@@ -1,156 +0,0 @@
---disable-everything
---enable-zlib
---enable-gpl
---enable-swscale
---enable-bsfs
---disable-filters
---disable-programs
---disable-postproc
---disable-protocols
---enable-protocol=crypto
---enable-protocol=file
---enable-protocol=rtp
---enable-protocol=srtp
---enable-protocol=tcp
---enable-protocol=udp
---enable-protocol=unix
---enable-protocol=pipe
---disable-demuxers
---disable-muxers
---enable-muxer=rtp
---enable-muxer=g722
---enable-muxer=g723_1
---enable-muxer=g726
---enable-muxer=g726le
---enable-muxer=h263
---enable-muxer=h264
---enable-muxer=hevc
---enable-muxer=matroska
---enable-muxer=webm
---enable-muxer=ogg
---enable-muxer=pcm_s16be
---enable-muxer=pcm_s16le
---enable-demuxer=rtp
---enable-demuxer=mjpeg
---enable-demuxer=mjpeg_2000
---enable-demuxer=mpegvideo
---enable-demuxer=gif
---enable-demuxer=image_jpeg_pipe
---enable-demuxer=image_png_pipe
---enable-demuxer=image_webp_pipe
---enable-demuxer=matroska
---enable-demuxer=m4v
---enable-demuxer=mp3
---enable-demuxer=ogg
---enable-demuxer=flac
---enable-demuxer=wav
---enable-demuxer=ac3
---enable-demuxer=g722
---enable-demuxer=g723_1
---enable-demuxer=g726
---enable-demuxer=g726le
---enable-demuxer=pcm_mulaw
---enable-demuxer=pcm_alaw
---enable-demuxer=pcm_s16be
---enable-demuxer=pcm_s16le
---enable-demuxer=h263
---enable-demuxer=h264
---enable-demuxer=hevc
---enable-parser=h263
---enable-parser=h264
---enable-parser=hevc
---enable-parser=mpeg4video
---enable-parser=vp8
---enable-parser=vp9
---enable-parser=opus
---enable-encoder=adpcm_g722
---enable-decoder=adpcm_g722
---enable-encoder=adpcm_g726
---enable-decoder=adpcm_g726
---enable-encoder=adpcm_g726le
---enable-decoder=adpcm_g726le
---enable-decoder=g729
---enable-encoder=g723_1
---enable-decoder=g723_1
---enable-encoder=rawvideo
---enable-decoder=rawvideo
---enable-encoder=libx264
---enable-decoder=h264
---enable-encoder=pcm_alaw
---enable-decoder=pcm_alaw
---enable-encoder=pcm_mulaw
---enable-decoder=pcm_mulaw
---enable-encoder=mpeg4
---enable-decoder=mpeg4
---enable-encoder=libvpx_vp8
---enable-decoder=vp8
---enable-decoder=vp9
---enable-encoder=h263
---enable-encoder=h263p
---enable-decoder=h263
---enable-encoder=mjpeg
---enable-decoder=mjpeg
---enable-decoder=mjpegb
---enable-libspeex
---enable-libopus
---enable-libvpx
---enable-libx264
---enable-encoder=libspeex
---enable-decoder=libspeex
---enable-encoder=libopus
---enable-decoder=libopus
---enable-decoder=flac
---enable-decoder=vorbis
---enable-decoder=aac
---enable-decoder=ac3
---enable-decoder=eac3
---enable-decoder=mp3
---enable-decoder=pcm_u24be
---enable-decoder=pcm_u24le
---enable-decoder=pcm_u32be
---enable-decoder=pcm_u32le
---enable-decoder=pcm_u8
---enable-decoder=pcm_f16le
---enable-decoder=pcm_f24le
---enable-decoder=pcm_f32be
---enable-decoder=pcm_f32le
---enable-decoder=pcm_f64be
---enable-decoder=pcm_f64le
---enable-decoder=pcm_s16be
---enable-decoder=pcm_s16be_planar
---enable-decoder=pcm_s16le
---enable-decoder=pcm_s16le_planar
---enable-decoder=pcm_s24be
---enable-decoder=pcm_s24le
---enable-decoder=pcm_s24le_planar
---enable-decoder=pcm_s32be
---enable-decoder=pcm_s32le
---enable-decoder=pcm_s32le_planar
---enable-decoder=pcm_s64be
---enable-decoder=pcm_s64le
---enable-decoder=pcm_s8
---enable-decoder=pcm_s8_planar
---enable-decoder=pcm_u16be
---enable-decoder=pcm_u16le
---enable-encoder=gif
---enable-decoder=gif
---enable-encoder=jpegls
---enable-decoder=jpegls
---enable-encoder=ljpeg
---enable-decoder=jpeg2000
---enable-encoder=png
---enable-decoder=png
---enable-encoder=bmp
---enable-decoder=bmp
---enable-encoder=tiff
---enable-decoder=tiff
---enable-filter=scale
---enable-filter=overlay
---enable-filter=amix
---enable-filter=amerge
---enable-filter=aresample
---enable-filter=format
---enable-filter=aformat
---enable-filter=fps
---enable-filter=transpose
---enable-filter=pad
diff --git a/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_linux b/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_linux
deleted file mode 100644
index 6c40e8d2ea994..0000000000000
--- a/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_linux
+++ /dev/null
@@ -1,18 +0,0 @@
---enable-pic
---target-os=linux
---enable-indev=v4l2
---enable-indev=xcbgrab
---enable-vdpau
---enable-hwaccel=h264_vdpau
---enable-hwaccel=mpeg4_vdpau
---enable-vaapi
---enable-hwaccel=h264_vaapi
---enable-hwaccel=mpeg4_vaapi
---enable-hwaccel=h263_vaapi
---enable-hwaccel=vp8_vaapi
---enable-hwaccel=mjpeg_vaapi
---enable-hwaccel=hevc_vaapi
---enable-encoder=h264_vaapi
---enable-encoder=vp8_vaapi
---enable-encoder=mjpeg_vaapi
---enable-encoder=hevc_vaapi
diff --git a/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_x86 b/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_x86
deleted file mode 100644
index 2043aa3ee2d3c..0000000000000
--- a/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_args_x86
+++ /dev/null
@@ -1,10 +0,0 @@
---enable-cuvid
---enable-ffnvcodec
---enable-nvdec
---enable-nvenc
---enable-hwaccel=h264_nvdec
---enable-hwaccel=hevc_nvdec
---enable-hwaccel=vp8_nvdec
---enable-hwaccel=mjpeg_nvdec
---enable-encoder=h264_nvenc
---enable-encoder=hevc_nvenc
diff --git a/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_patches b/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_patches
deleted file mode 100644
index 28f884e66769d..0000000000000
--- a/pkgs/applications/networking/instant-messengers/jami/config/ffmpeg_patches
+++ /dev/null
@@ -1,7 +0,0 @@
-remove-mjpeg-log.patch
-change-RTCP-ratio.patch
-rtp_ext_abs_send_time.patch
-libopusdec-enable-FEC.patch
-libopusenc-reload-packet-loss-at-encode.patch
-ios-disable-b-frames.patch
-screen-sharing-x11-fix.patch
diff --git a/pkgs/applications/networking/instant-messengers/jami/daemon.nix b/pkgs/applications/networking/instant-messengers/jami/daemon.nix
index 715560c6e128f..bf2392f631535 100644
--- a/pkgs/applications/networking/instant-messengers/jami/daemon.nix
+++ b/pkgs/applications/networking/instant-messengers/jami/daemon.nix
@@ -9,7 +9,7 @@
, asio
, dbus
, dbus_cplusplus
-, ffmpeg-jami
+, ffmpeg_5
, fmt
, gmp
, gnutls
@@ -51,7 +51,7 @@ stdenv.mkDerivation {
dbus
dbus_cplusplus
fmt
- ffmpeg-jami
+ ffmpeg_5
gmp
gnutls
http-parser
diff --git a/pkgs/applications/networking/instant-messengers/jami/default.nix b/pkgs/applications/networking/instant-messengers/jami/default.nix
index ea898c0da8c9d..497616a6c0388 100644
--- a/pkgs/applications/networking/instant-messengers/jami/default.nix
+++ b/pkgs/applications/networking/instant-messengers/jami/default.nix
@@ -4,7 +4,6 @@
, fetchFromGitHub
, fetchzip
, fetchpatch
-, ffmpeg_5
, pjsip
, opendht
, jack
@@ -41,31 +40,6 @@ let
readLinesToList = with builtins; file: filter (s: isString s && stringLength s > 0) (split "\n" (readFile file));
in
rec {
- ffmpeg-jami = (ffmpeg_5.override rec {
- version = "5.0.1";
- branch = version;
- sha256 = "sha256-KN8z1AChwcGyDQepkZeAmjuI73ZfXwfcH/Bn+sZMWdY=";
- doCheck = false;
- }).overrideAttrs (old:
- let
- patch-src = src + "/daemon/contrib/src/ffmpeg/";
- in
- {
- patches = old.patches ++ (map (x: patch-src + x) (readLinesToList ./config/ffmpeg_patches)) ++
- # SDL2 recently changed their versioning
- [
- (fetchpatch {
- url = "https://git.videolan.org/?p=ffmpeg.git;a=patch;h=e5163b1d34381a3319214a902ef1df923dd2eeba";
- hash = "sha256-nLhP2+34cj5EgpnUrePZp60nYAxmbhZAEDfay4pBVk0=";
- })
- ];
- configureFlags = old.configureFlags
- ++ (readLinesToList ./config/ffmpeg_args_common)
- ++ lib.optionals stdenv.isLinux (readLinesToList ./config/ffmpeg_args_linux)
- ++ lib.optionals (stdenv.isx86_32 || stdenv.isx86_64) (readLinesToList ./config/ffmpeg_args_x86);
- outputs = [ "out" "doc" ];
- });
-
pjsip-jami = pjsip.overrideAttrs (old:
let
patch-src = src + "/daemon/contrib/src/pjproject/";
@@ -105,10 +79,10 @@ rec {
};
jami-daemon = callPackage ./daemon.nix {
- inherit version src udev jack jami-meta ffmpeg-jami pjsip-jami opendht-jami;
+ inherit version src udev jack jami-meta pjsip-jami opendht-jami;
};
jami-client = qt6Packages.callPackage ./client.nix {
- inherit version src ffmpeg-jami jami-meta;
+ inherit version src jami-meta;
};
}
diff --git a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
index e80ccd2105aa5..9feb5ff10a077 100644
--- a/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
+++ b/pkgs/applications/networking/instant-messengers/telegram/tdesktop/tg_owt.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub
+{ lib, stdenv, fetchFromGitHub, fetchpatch
, pkg-config, cmake, ninja, yasm
, libjpeg, openssl_1_1, libopus, ffmpeg, alsa-lib, libpulseaudio, protobuf
, openh264, usrsctp, libevent, libvpx
@@ -31,6 +31,14 @@ stdenv.mkDerivation {
mesa libepoxy libglvnd
];
+ patches = [
+ # GCC 12 Fix
+ (fetchpatch {
+ url = "https://github.com/desktop-app/tg_owt/pull/101/commits/86d2bcd7afb8706663d29e30f65863de5a626142.patch";
+ hash = "sha256-iWS0mB8R0vqPU/0qf6Ax54UCAKYDVCPac2mi/VHbFm0=";
+ })
+ ];
+
cmakeFlags = [
# Building as a shared library isn't officially supported and may break at any time.
"-DBUILD_SHARED_LIBS=OFF"
diff --git a/pkgs/applications/networking/mailreaders/bubblemail/default.nix b/pkgs/applications/networking/mailreaders/bubblemail/default.nix
index 612762207565b..bd5783a5c656c 100644
--- a/pkgs/applications/networking/mailreaders/bubblemail/default.nix
+++ b/pkgs/applications/networking/mailreaders/bubblemail/default.nix
@@ -13,6 +13,7 @@
, glib
, gobject-introspection
, folks
+, bash
}:
python3Packages.buildPythonApplication rec {
@@ -39,6 +40,7 @@ python3Packages.buildPythonApplication rec {
libsecret
gnome-online-accounts
folks
+ bash
];
nativeBuildInputs = [
@@ -59,9 +61,6 @@ python3Packages.buildPythonApplication rec {
# See https://nixos.org/nixpkgs/manual/#ssec-gnome-common-issues-double-wrapped
dontWrapGApps = true;
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
preFixup = ''
makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
'';
diff --git a/pkgs/applications/networking/protonvpn-gui/default.nix b/pkgs/applications/networking/protonvpn-gui/default.nix
index 98f7ac541a785..14844161d18e2 100644
--- a/pkgs/applications/networking/protonvpn-gui/default.nix
+++ b/pkgs/applications/networking/protonvpn-gui/default.nix
@@ -41,8 +41,6 @@ buildPythonApplication rec {
];
buildInputs = [
- # To avoid enabling strictDeps = false (#56943)
- gobject-introspection
librsvg
pango
webkitgtk
diff --git a/pkgs/applications/office/autokey/default.nix b/pkgs/applications/office/autokey/default.nix
index 0a00ac1463b5b..c490be238112a 100644
--- a/pkgs/applications/office/autokey/default.nix
+++ b/pkgs/applications/office/autokey/default.nix
@@ -25,7 +25,6 @@ python3Packages.buildPythonApplication rec {
nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
buildInputs = [
- gobject-introspection
gtksourceview3
libappindicator-gtk3
libnotify
diff --git a/pkgs/applications/office/gnucash/default.nix b/pkgs/applications/office/gnucash/default.nix
index 700a94429964d..f9e9ec57704c3 100644
--- a/pkgs/applications/office/gnucash/default.nix
+++ b/pkgs/applications/office/gnucash/default.nix
@@ -80,6 +80,11 @@ stdenv.mkDerivation rec {
# guile warning
GUILE_AUTO_COMPILE="0";
+ NIX_CFLAGS_COMPILE = lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12") [
+ # Needed with GCC 12 but breaks on darwin (with clang) or older gcc
+ "-Wno-error=use-after-free"
+ ];
+
# `make check` target does not define its prerequisites but expects them to
# have already been built. The list of targets below was built through trial
# and error based on failing tests.
diff --git a/pkgs/applications/office/gtg/default.nix b/pkgs/applications/office/gtg/default.nix
index 8165cc381c112..44aaa6c7146e0 100644
--- a/pkgs/applications/office/gtg/default.nix
+++ b/pkgs/applications/office/gtg/default.nix
@@ -67,7 +67,6 @@ python3Packages.buildPythonApplication rec {
'';
format = "other";
- strictDeps = false; # gobject-introspection does not run with strictDeps (https://github.com/NixOS/nixpkgs/issues/56943)
checkPhase = "xvfb-run pytest ../tests/";
diff --git a/pkgs/applications/office/zim/default.nix b/pkgs/applications/office/zim/default.nix
index 73c94f7339c68..c20c9449ae842 100644
--- a/pkgs/applications/office/zim/default.nix
+++ b/pkgs/applications/office/zim/default.nix
@@ -14,9 +14,8 @@ python3Packages.buildPythonApplication rec {
sha256 = "sha256-iOF11/fhQYlvnpWJidJS1yJVavF7xLxvBl59VCh9A4U=";
};
- buildInputs = [ gtk3 gobject-introspection gnome.adwaita-icon-theme ];
+ buildInputs = [ gtk3 gnome.adwaita-icon-theme ];
propagatedBuildInputs = with python3Packages; [ pyxdg pygobject3 ];
- # see https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663
nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
dontWrapGApps = true;
diff --git a/pkgs/applications/plasma-mobile/angelfish.nix b/pkgs/applications/plasma-mobile/angelfish.nix
index 1e1800fad4518..7a7e48d736d0c 100644
--- a/pkgs/applications/plasma-mobile/angelfish.nix
+++ b/pkgs/applications/plasma-mobile/angelfish.nix
@@ -3,7 +3,7 @@
, cmake
, corrosion
, extra-cmake-modules
-, gcc11
+, gcc12
, kconfig
, kcoreaddons
, kdbusaddons
@@ -46,7 +46,7 @@ mkDerivation rec {
cmake
corrosion
extra-cmake-modules
- gcc11 # doesn't build with GCC 9 from stdenv on aarch64
+ gcc12 # doesn't build with GCC 9 from stdenv on aarch64
] ++ (with rustPlatform; [
cargoSetupHook
rust.cargo
diff --git a/pkgs/applications/plasma-mobile/audiotube.nix b/pkgs/applications/plasma-mobile/audiotube.nix
index cb87fe0ed24db..14bfc6d18917e 100644
--- a/pkgs/applications/plasma-mobile/audiotube.nix
+++ b/pkgs/applications/plasma-mobile/audiotube.nix
@@ -2,7 +2,7 @@
, mkDerivation
, extra-cmake-modules
-, gcc11
+, gcc12
, wrapGAppsHook
, gst_all_1
@@ -22,7 +22,7 @@ mkDerivation rec {
nativeBuildInputs = [
extra-cmake-modules
wrapGAppsHook
- gcc11 # doesn't build with GCC 9 from stdenv on aarch64
+ gcc12 # doesn't build with GCC 9 from stdenv on aarch64
python3Packages.wrapPython
python3Packages.pybind11
];
diff --git a/pkgs/applications/plasma-mobile/neochat.nix b/pkgs/applications/plasma-mobile/neochat.nix
index 2f655d5a9e09c..8b3da82b8b885 100644
--- a/pkgs/applications/plasma-mobile/neochat.nix
+++ b/pkgs/applications/plasma-mobile/neochat.nix
@@ -1,4 +1,4 @@
-{ gcc11Stdenv
+{ gcc12Stdenv
, lib
, srcs
@@ -31,7 +31,7 @@
}:
# Workaround for AArch64 not using GCC11 yet.
-gcc11Stdenv.mkDerivation rec {
+gcc12Stdenv.mkDerivation rec {
pname = "neochat";
inherit (srcs.neochat) version src;
diff --git a/pkgs/applications/plasma-mobile/spacebar.nix b/pkgs/applications/plasma-mobile/spacebar.nix
index 7a2a3c0af8fbb..c120851e5b2e0 100644
--- a/pkgs/applications/plasma-mobile/spacebar.nix
+++ b/pkgs/applications/plasma-mobile/spacebar.nix
@@ -1,6 +1,6 @@
{ lib
, mkDerivation
-, gcc11Stdenv
+, gcc12Stdenv
, srcs
, cmake
@@ -24,8 +24,8 @@
, qtquickcontrols2
}:
-# Workaround for AArch64 not using GCC11 yet.
-gcc11Stdenv.mkDerivation rec {
+# Workaround for AArch64 still using GCC9.
+gcc12Stdenv.mkDerivation rec {
pname = "spacebar";
inherit (srcs.spacebar) version src;
diff --git a/pkgs/applications/science/biology/octopus/default.nix b/pkgs/applications/science/biology/octopus/default.nix
index 659b1e97f200f..b7c8c138cb82b 100644
--- a/pkgs/applications/science/biology/octopus/default.nix
+++ b/pkgs/applications/science/biology/octopus/default.nix
@@ -19,6 +19,11 @@ stdenv.mkDerivation rec {
sha256 = "sha256-VaUr63v7mzhh4VBghH7a7qrqOYwl6vucmmKzTi9yAjY=";
}) ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=deprecated-declarations"
+ ];
+
postInstall = ''
mkdir $out/bin
mv $out/octopus $out/bin
diff --git a/pkgs/applications/science/chemistry/octopus/default.nix b/pkgs/applications/science/chemistry/octopus/default.nix
index d0058c8650d81..cc145baef037a 100644
--- a/pkgs/applications/science/chemistry/octopus/default.nix
+++ b/pkgs/applications/science/chemistry/octopus/default.nix
@@ -41,12 +41,12 @@ stdenv.mkDerivation rec {
];
configureFlags = with lib; [
- "--with-yaml-prefix=${libyaml}"
+ "--with-yaml-prefix=${lib.getDev libyaml}"
"--with-blas=-lblas"
"--with-lapack=-llapack"
- "--with-fftw-prefix=${fftw.dev}"
- "--with-gsl-prefix=${gsl}"
- "--with-libxc-prefix=${libxc}"
+ "--with-fftw-prefix=${lib.getDev fftw}"
+ "--with-gsl-prefix=${lib.getDev gsl}"
+ "--with-libxc-prefix=${lib.getDev libxc}"
"--enable-openmp"
] ++ optional enableFma "--enable-fma3"
++ optional enableFma4 "--enable-fma4"
diff --git a/pkgs/applications/science/logic/cbmc/default.nix b/pkgs/applications/science/logic/cbmc/default.nix
index ba5719012ed65..d61a9893942f8 100644
--- a/pkgs/applications/science/logic/cbmc/default.nix
+++ b/pkgs/applications/science/logic/cbmc/default.nix
@@ -60,9 +60,13 @@ stdenv.mkDerivation rec {
--prefix PATH : "$out/share/cbmc" \
'';
- # fix "argument unused during compilation"
- NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang
- "-Wno-unused-command-line-argument";
+ NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [
+ # Needed with GCC 12 but breaks on darwin (with clang)
+ "-Wno-error=maybe-uninitialized"
+ ] ++ lib.optionals stdenv.cc.isClang [
+ # fix "argument unused during compilation"
+ "-Wno-unused-command-line-argument"
+ ];
# TODO: add jbmc support
cmakeFlags = [ "-DWITH_JBMC=OFF" "-Dsat_impl=cadical" "-Dcadical_INCLUDE_DIR=${cadical.dev}/include" ];
diff --git a/pkgs/applications/science/math/mxnet/default.nix b/pkgs/applications/science/math/mxnet/default.nix
index dcba888ce2fb1..021593124a37d 100644
--- a/pkgs/applications/science/math/mxnet/default.nix
+++ b/pkgs/applications/science/math/mxnet/default.nix
@@ -54,6 +54,12 @@ stdenv.mkDerivation rec {
] else [ "-DUSE_CUDA=OFF" ])
++ lib.optional (!cudnnSupport) "-DUSE_CUDNN=OFF";
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=maybe-uninitialized"
+ "-Wno-error=uninitialized"
+ ];
+
postPatch = ''
substituteInPlace 3rdparty/mkldnn/tests/CMakeLists.txt \
--replace "/bin/bash" "${bash}/bin/bash"
diff --git a/pkgs/applications/science/misc/bada-bib/default.nix b/pkgs/applications/science/misc/bada-bib/default.nix
index 76495f5cae150..7ad542402b58b 100644
--- a/pkgs/applications/science/misc/bada-bib/default.nix
+++ b/pkgs/applications/science/misc/bada-bib/default.nix
@@ -22,7 +22,6 @@ python3Packages.buildPythonApplication rec {
pname = "bada-bib";
version = "0.8.0";
format = "other";
- strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitHub {
owner = "RogerCrocker";
diff --git a/pkgs/applications/terminal-emulators/guake/default.nix b/pkgs/applications/terminal-emulators/guake/default.nix
index ee28a25047815..d030c7add9660 100644
--- a/pkgs/applications/terminal-emulators/guake/default.nix
+++ b/pkgs/applications/terminal-emulators/guake/default.nix
@@ -26,11 +26,6 @@ python3.pkgs.buildPythonApplication rec {
sha256 = "sha256-BW13fBH26UqMPMjV8JC4QkpgzyoPfCpAfSkJD68uOZU=";
};
- # Strict deps breaks guake
- # See https://github.com/NixOS/nixpkgs/issues/59930
- # and https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
nativeBuildInputs = [
gobject-introspection
wrapGAppsHook
diff --git a/pkgs/applications/terminal-emulators/terminator/default.nix b/pkgs/applications/terminal-emulators/terminator/default.nix
index 7cc1b23a60ac7..54c9f9467636f 100644
--- a/pkgs/applications/terminal-emulators/terminator/default.nix
+++ b/pkgs/applications/terminal-emulators/terminator/default.nix
@@ -33,7 +33,6 @@ python3.pkgs.buildPythonApplication rec {
buildInputs = [
gtk3
- gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
keybinder3
libnotify
python3
diff --git a/pkgs/applications/version-management/fnc/default.nix b/pkgs/applications/version-management/fnc/default.nix
index a60aa27a8439c..7fd1b34d4560e 100644
--- a/pkgs/applications/version-management/fnc/default.nix
+++ b/pkgs/applications/version-management/fnc/default.nix
@@ -13,6 +13,11 @@ stdenv.mkDerivation rec {
makeFlags = [ "PREFIX=$(out)" ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=maybe-uninitialized"
+ ];
+
preInstall = ''
mkdir -p $out/bin
'';
diff --git a/pkgs/applications/version-management/meld/default.nix b/pkgs/applications/version-management/meld/default.nix
index 121a0cdf7731e..224efe8c1ac23 100644
--- a/pkgs/applications/version-management/meld/default.nix
+++ b/pkgs/applications/version-management/meld/default.nix
@@ -52,10 +52,6 @@ python3.pkgs.buildPythonApplication rec {
pycairo
];
- # gobject-introspection and some other similar setup hooks do not currently work with strictDeps.
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
postPatch = ''
patchShebangs meson_shebang_normalisation.py
'';
diff --git a/pkgs/applications/video/devede/default.nix b/pkgs/applications/video/devede/default.nix
index e8fa11c9147cc..800edd4792cc0 100644
--- a/pkgs/applications/video/devede/default.nix
+++ b/pkgs/applications/video/devede/default.nix
@@ -15,17 +15,8 @@ in buildPythonApplication rec {
sha256 = "1xb7acjphvn4ya8fgjsvag5gzi9a6c2famfl0ffr8nhb9y8ig9mg";
};
- # Temporary fix
- # See https://github.com/NixOS/nixpkgs/issues/61578
- # and https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
nativeBuildInputs = [
gettext wrapGAppsHook
-
- # Temporary fix
- # See https://github.com/NixOS/nixpkgs/issues/61578
- # and https://github.com/NixOS/nixpkgs/issues/56943
gobject-introspection
];
diff --git a/pkgs/applications/video/kazam/default.nix b/pkgs/applications/video/kazam/default.nix
index 4ba0fe98df051..e44949f54ba61 100644
--- a/pkgs/applications/video/kazam/default.nix
+++ b/pkgs/applications/video/kazam/default.nix
@@ -40,9 +40,6 @@ python3Packages.buildPythonApplication rec {
propagatedBuildInputs = with python3Packages; [ pygobject3 pyxdg pycairo dbus-python xlib ];
- # workaround https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
patches = [
# Fix paths
(substituteAll {
diff --git a/pkgs/applications/video/pitivi/default.nix b/pkgs/applications/video/pitivi/default.nix
index 5406b7dfa8a85..7e6f89855ed2f 100644
--- a/pkgs/applications/video/pitivi/default.nix
+++ b/pkgs/applications/video/pitivi/default.nix
@@ -44,10 +44,10 @@ python3.pkgs.buildPythonApplication rec {
itstool
python3
wrapGAppsHook
+ gobject-introspection
];
buildInputs = [
- gobject-introspection
gtk3
libpeas
librsvg
@@ -78,12 +78,6 @@ python3.pkgs.buildPythonApplication rec {
patchShebangs ./getenvvar.py
'';
- # Fixes error
- # Couldn’t recognize the image file format for file ".../share/pitivi/pixmaps/asset-proxied.svg"
- # at startup, see https://github.com/NixOS/nixpkgs/issues/56943
- # and https://github.com/NixOS/nixpkgs/issues/89691#issuecomment-714398705.
- strictDeps = false;
-
passthru = {
updateScript = gnome.updateScript {
packageName = "pitivi";
diff --git a/pkgs/applications/virtualization/virt-manager/default.nix b/pkgs/applications/virtualization/virt-manager/default.nix
index e5d5a1fbfe7cc..1a9fe490af85d 100644
--- a/pkgs/applications/virtualization/virt-manager/default.nix
+++ b/pkgs/applications/virtualization/virt-manager/default.nix
@@ -26,7 +26,6 @@ python3.pkgs.buildPythonApplication rec {
wrapGAppsHook
libvirt-glib vte dconf gtk-vnc gnome.adwaita-icon-theme avahi
gsettings-desktop-schemas libosinfo gtksourceview4
- gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
] ++ lib.optional spiceSupport spice-gtk;
propagatedBuildInputs = with python3.pkgs; [
diff --git a/pkgs/applications/window-managers/cardboard/default.nix b/pkgs/applications/window-managers/cardboard/default.nix
index 5347b0961a540..6e483a40ef51c 100644
--- a/pkgs/applications/window-managers/cardboard/default.nix
+++ b/pkgs/applications/window-managers/cardboard/default.nix
@@ -99,6 +99,8 @@ stdenv.mkDerivation rec {
cp -r ${expected-wrap} ${expected-wrap.name}
cp -r ${wlroots-wrap} ${wlroots-wrap.name}
)
+
+ sed '1i#include ' -i cardboard/ViewAnimation.h # gcc12
'';
# "Inherited" from Nixpkgs expression for wlroots
@@ -108,6 +110,8 @@ stdenv.mkDerivation rec {
"-Dwlroots:libseat=disabled"
];
+ NIX_CFLAGS_COMPILE = [ "-Wno-error=array-bounds" ]; # gcc12
+
meta = with lib; {
homepage = "https://gitlab.com/cardboardwm/cardboard";
description = "A scrollable, tiling Wayland compositor inspired on PaperWM";
diff --git a/pkgs/build-support/cc-wrapper/default.nix b/pkgs/build-support/cc-wrapper/default.nix
index 33df804d5efec..2f3b2d8e37886 100644
--- a/pkgs/build-support/cc-wrapper/default.nix
+++ b/pkgs/build-support/cc-wrapper/default.nix
@@ -343,18 +343,11 @@ stdenv.mkDerivation {
# compile, because it uses "#include_next " to find the
# limits.h file in ../includes-fixed. To remedy the problem,
# another -idirafter is necessary to add that directory again.
- #
- # We use --sysroot=/nix/store/does/not/exist to drop embedded default
- # path to glibc headers gcc was built against. Without it -idirafter
- # only appends to the list and outdated glibc headers end up being
- # used. 'cc-cflags-before' is used to allow user's --sysroot= option
- # to override our default.
+ optionalString (libc != null) (''
touch "$out/nix-support/libc-cflags"
touch "$out/nix-support/libc-ldflags"
echo "-B${libc_lib}${libc.libdir or "/lib/"}" >> $out/nix-support/libc-crt1-cflags
'' + optionalString (!(cc.langD or false)) ''
- echo "--sysroot=/nix/store/does/not/exist" >> $out/nix-support/cc-cflags-before
echo "-idirafter ${libc_dev}${libc.incdir or "/include"}" >> $out/nix-support/libc-cflags
'' + optionalString (isGNU && (!(cc.langD or false))) ''
for dir in "${cc}"/lib/gcc/*/*/include-fixed; do
diff --git a/pkgs/build-support/dotnet/build-dotnet-module/hooks/default.nix b/pkgs/build-support/dotnet/build-dotnet-module/hooks/default.nix
index bce3d799fbb1a..a72f0291a872b 100644
--- a/pkgs/build-support/dotnet/build-dotnet-module/hooks/default.nix
+++ b/pkgs/build-support/dotnet/build-dotnet-module/hooks/default.nix
@@ -20,7 +20,7 @@ in
dotnetConfigureHook = callPackage ({ }:
makeSetupHook {
name = "dotnet-configure-hook";
- deps = [ dotnet-sdk nuget-source ];
+ propagatedBuildInputs = [ dotnet-sdk nuget-source ];
substitutions = {
nugetSource = nuget-source;
inherit runtimeId;
@@ -30,7 +30,7 @@ in
dotnetBuildHook = callPackage ({ }:
makeSetupHook {
name = "dotnet-build-hook";
- deps = [ dotnet-sdk ];
+ propagatedBuildInputs = [ dotnet-sdk ];
substitutions = {
inherit buildType runtimeId;
};
@@ -39,7 +39,7 @@ in
dotnetCheckHook = callPackage ({ }:
makeSetupHook {
name = "dotnet-check-hook";
- deps = [ dotnet-test-sdk ];
+ propagatedBuildInputs = [ dotnet-test-sdk ];
substitutions = {
inherit buildType libraryPath;
disabledTests = lib.optionalString (disabledTests != [])
@@ -54,7 +54,7 @@ in
dotnetInstallHook = callPackage ({ }:
makeSetupHook {
name = "dotnet-install-hook";
- deps = [ dotnet-sdk ];
+ propagatedBuildInputs = [ dotnet-sdk ];
substitutions = {
inherit buildType runtimeId;
};
@@ -63,7 +63,7 @@ in
dotnetFixupHook = callPackage ({ }:
makeSetupHook {
name = "dotnet-fixup-hook";
- deps = [ dotnet-runtime ];
+ propagatedBuildInputs = [ dotnet-runtime ];
substitutions = {
dotnetRuntime = dotnet-runtime;
runtimeDeps = libraryPath;
diff --git a/pkgs/build-support/go/module.nix b/pkgs/build-support/go/module.nix
index 284cc1586dad0..aca313264a28c 100644
--- a/pkgs/build-support/go/module.nix
+++ b/pkgs/build-support/go/module.nix
@@ -193,6 +193,12 @@ let
''}
'' + ''
+ # currently pie is only enabled by default in pkgsMusl
+ # this will respect the `hardening{Disable,Enable}` flags if set
+ if [[ $NIX_HARDENING_ENABLE =~ "pie" ]]; then
+ export GOFLAGS="-buildmode=pie $GOFLAGS"
+ fi
+
runHook postConfigure
'';
diff --git a/pkgs/build-support/go/package.nix b/pkgs/build-support/go/package.nix
index ba1ab37a0c0eb..9106bf9796ebb 100644
--- a/pkgs/build-support/go/package.nix
+++ b/pkgs/build-support/go/package.nix
@@ -134,6 +134,12 @@ let
export GOPATH=$NIX_BUILD_TOP/go:$GOPATH
export GOCACHE=$TMPDIR/go-cache
+ # currently pie is only enabled by default in pkgsMusl
+ # this will respect the `hardening{Disable,Enable}` flags if set
+ if [[ $NIX_HARDENING_ENABLE =~ "pie" ]]; then
+ export GOFLAGS="-buildmode=pie $GOFLAGS"
+ fi
+
runHook postConfigure
'';
diff --git a/pkgs/build-support/libredirect/default.nix b/pkgs/build-support/libredirect/default.nix
index b5eb21e5ba4b5..6e2de7fa11b05 100644
--- a/pkgs/build-support/libredirect/default.nix
+++ b/pkgs/build-support/libredirect/default.nix
@@ -46,14 +46,14 @@ else stdenv.mkDerivation rec {
-L${llvmPackages_13.clang.libc}/lib \
-Wl,-install_name,$libName \
-Wall -std=c99 -O3 -fPIC libredirect.c \
- -ldl -shared -o "$libName"
+ -shared -o "$libName"
'' else if stdenv.isDarwin then ''
$CC -Wall -std=c99 -O3 -fPIC libredirect.c \
-Wl,-install_name,$out/lib/$libName \
- -ldl -shared -o "$libName"
+ -shared -o "$libName"
'' else ''
$CC -Wall -std=c99 -O3 -fPIC libredirect.c \
- -ldl -shared -o "$libName"
+ -shared -o "$libName"
''}
if [ -n "$doInstallCheck" ]; then
diff --git a/pkgs/build-support/libredirect/libredirect.c b/pkgs/build-support/libredirect/libredirect.c
index 1222d2ee75c64..9ecc16450cc27 100644
--- a/pkgs/build-support/libredirect/libredirect.c
+++ b/pkgs/build-support/libredirect/libredirect.c
@@ -201,6 +201,37 @@ WRAPPER(int, __xstat64)(int ver, const char * path, struct stat64 * st)
WRAPPER_DEF(__xstat64)
#endif
+#if defined(__linux__) && defined(STATX_TYPE)
+WRAPPER(int, statx)(int dirfd, const char * restrict pathname, int flags,
+ unsigned int mask, struct statx * restrict statxbuf)
+{
+ int (*statx_real) (int, const char * restrict, int,
+ unsigned int, struct statx * restrict) = LOOKUP_REAL(statx);
+ char buf[PATH_MAX];
+ return statx_real(dirfd, rewrite(pathname, buf), flags, mask, statxbuf);
+}
+WRAPPER_DEF(statx)
+#endif
+
+WRAPPER(int, fstatat)(int dirfd, const char * pathname, struct stat * statbuf, int flags)
+{
+ int (*fstatat_real) (int, const char *, struct stat *, int) = LOOKUP_REAL(fstatat);
+ char buf[PATH_MAX];
+ return fstatat_real(dirfd, rewrite(pathname, buf), statbuf, flags);
+}
+WRAPPER_DEF(fstatat);
+
+// In musl libc, fstatat64 is simply a macro for fstatat
+#if !defined(__APPLE__) && !defined(fstatat64)
+WRAPPER(int, fstatat64)(int dirfd, const char * pathname, struct stat64 * statbuf, int flags)
+{
+ int (*fstatat64_real) (int, const char *, struct stat64 *, int) = LOOKUP_REAL(fstatat64);
+ char buf[PATH_MAX];
+ return fstatat64_real(dirfd, rewrite(pathname, buf), statbuf, flags);
+}
+WRAPPER_DEF(fstatat64);
+#endif
+
WRAPPER(int, stat)(const char * path, struct stat * st)
{
int (*__stat_real) (const char *, struct stat *) = LOOKUP_REAL(stat);
@@ -209,6 +240,17 @@ WRAPPER(int, stat)(const char * path, struct stat * st)
}
WRAPPER_DEF(stat)
+// In musl libc, stat64 is simply a macro for stat
+#if !defined(__APPLE__) && !defined(stat64)
+WRAPPER(int, stat64)(const char * path, struct stat64 * st)
+{
+ int (*stat64_real) (const char *, struct stat64 *) = LOOKUP_REAL(stat64);
+ char buf[PATH_MAX];
+ return stat64_real(rewrite(path, buf), st);
+}
+WRAPPER_DEF(stat64)
+#endif
+
WRAPPER(int, access)(const char * path, int mode)
{
int (*access_real) (const char *, int mode) = LOOKUP_REAL(access);
@@ -346,6 +388,14 @@ WRAPPER(int, system)(const char *command)
}
WRAPPER_DEF(system)
+WRAPPER(int, chdir)(const char *path)
+{
+ int (*chdir_real) (const char *) = LOOKUP_REAL(chdir);
+ char buf[PATH_MAX];
+ return chdir_real(rewrite(path, buf));
+}
+WRAPPER_DEF(chdir);
+
WRAPPER(int, mkdir)(const char *path, mode_t mode)
{
int (*mkdir_real) (const char *path, mode_t mode) = LOOKUP_REAL(mkdir);
diff --git a/pkgs/build-support/libredirect/test.c b/pkgs/build-support/libredirect/test.c
index 144e6d3d66dd0..7dd384ae3ed7e 100644
--- a/pkgs/build-support/libredirect/test.c
+++ b/pkgs/build-support/libredirect/test.c
@@ -63,6 +63,12 @@ int main(int argc, char *argv[])
FILE *testfp;
int testfd;
struct stat testsb;
+#ifndef __APPLE__
+ struct stat64 testsb64;
+#endif
+#if defined(__linux__) && defined(STATX_TYPE)
+ struct statx testsbx;
+#endif
char buf[PATH_MAX];
testfp = fopen(TESTPATH, "r");
@@ -76,6 +82,20 @@ int main(int argc, char *argv[])
assert(access(TESTPATH, X_OK) == 0);
assert(stat(TESTPATH, &testsb) != -1);
+#ifndef __APPLE__
+ assert(stat64(TESTPATH, &testsb64) != -1);
+#endif
+ assert(fstatat(123, TESTPATH, &testsb, 0) != -1);
+#ifndef __APPLE__
+ assert(fstatat64(123, TESTPATH, &testsb64, 0) != -1);
+#endif
+#if defined(__linux__) && defined(STATX_TYPE)
+ assert(statx(123, TESTPATH, 0, STATX_ALL, &testsbx) != -1);
+#endif
+
+ assert(getcwd(buf, PATH_MAX) != NULL);
+ assert(chdir(TESTDIR) == 0);
+ assert(chdir(buf) == 0);
assert(mkdir(TESTDIR "/dir-mkdir", 0777) == 0);
assert(unlink(TESTDIR "/dir-mkdir") == -1); // it's a directory!
diff --git a/pkgs/build-support/node/build-npm-package/hooks/default.nix b/pkgs/build-support/node/build-npm-package/hooks/default.nix
index 65ac661cea516..e5c93f1f77842 100644
--- a/pkgs/build-support/node/build-npm-package/hooks/default.nix
+++ b/pkgs/build-support/node/build-npm-package/hooks/default.nix
@@ -26,7 +26,7 @@
npmInstallHook = makeSetupHook
{
name = "npm-install-hook";
- deps = [ buildPackages.makeWrapper ];
+ propagatedBuildInputs = [ buildPackages.makeWrapper ];
substitutions = {
hostNode = "${nodejs}/bin/node";
jq = "${buildPackages.jq}/bin/jq";
diff --git a/pkgs/build-support/pkg-config-wrapper/pkg-config-wrapper.sh b/pkgs/build-support/pkg-config-wrapper/pkg-config-wrapper.sh
index 1aa14cfeb7cc7..1d43c8e162ab2 100644
--- a/pkgs/build-support/pkg-config-wrapper/pkg-config-wrapper.sh
+++ b/pkgs/build-support/pkg-config-wrapper/pkg-config-wrapper.sh
@@ -12,7 +12,7 @@ if [ -z "${NIX_PKG_CONFIG_WRAPPER_FLAGS_SET_@suffixSalt@:-}" ]; then
source @out@/nix-support/add-flags.sh
fi
-set -- "$@" @addFlags@
+set -- @addFlags@ "$@"
if (( ${#role_suffixes[@]} > 0 )); then
# replace env var with nix-modified one
diff --git a/pkgs/build-support/rust/build-rust-package/default.nix b/pkgs/build-support/rust/build-rust-package/default.nix
index 69ee4f56b98f7..b057d1681b03b 100644
--- a/pkgs/build-support/rust/build-rust-package/default.nix
+++ b/pkgs/build-support/rust/build-rust-package/default.nix
@@ -4,7 +4,6 @@
, rust
, stdenv
, callPackage
-, cacert
, cargoBuildHook
, cargoCheckHook
, cargoInstallHook
@@ -124,7 +123,6 @@ stdenv.mkDerivation ((removeAttrs args [ "depsExtraArgs" "cargoUpdateHook" "carg
inherit cargo cargo-auditable;
})
] ++ [
- cacert
cargoBuildHook
(if useNextest then cargoNextestHook else cargoCheckHook)
cargoInstallHook
diff --git a/pkgs/build-support/rust/fetch-cargo-tarball/default.nix b/pkgs/build-support/rust/fetch-cargo-tarball/default.nix
index 7ca306b613bcd..36ab931697410 100644
--- a/pkgs/build-support/rust/fetch-cargo-tarball/default.nix
+++ b/pkgs/build-support/rust/fetch-cargo-tarball/default.nix
@@ -73,6 +73,9 @@ in stdenv.mkDerivation ({
${cargoUpdateHook}
+ # Override the `http.cainfo` option usually specified in `.cargo/config`.
+ export CARGO_HTTP_CAINFO=${cacert}/etc/ssl/certs/ca-bundle.crt
+
cargo vendor $name --respect-source-config | cargo-vendor-normalise > $CARGO_CONFIG
# Create an empty vendor directory when there is no dependency to vendor
diff --git a/pkgs/build-support/rust/hooks/default.nix b/pkgs/build-support/rust/hooks/default.nix
index 9989e582d2e9a..b4034120103ed 100644
--- a/pkgs/build-support/rust/hooks/default.nix
+++ b/pkgs/build-support/rust/hooks/default.nix
@@ -31,7 +31,7 @@ in {
cargoBuildHook = callPackage ({ }:
makeSetupHook {
name = "cargo-build-hook.sh";
- deps = [ cargo ];
+ propagatedBuildInputs = [ cargo ];
substitutions = {
inherit ccForBuild ccForHost cxxForBuild cxxForHost
rustBuildPlatform rustTargetPlatform rustTargetPlatformSpec;
@@ -41,7 +41,7 @@ in {
cargoCheckHook = callPackage ({ }:
makeSetupHook {
name = "cargo-check-hook.sh";
- deps = [ cargo ];
+ propagatedBuildInputs = [ cargo ];
substitutions = {
inherit rustTargetPlatformSpec;
};
@@ -50,7 +50,7 @@ in {
cargoInstallHook = callPackage ({ }:
makeSetupHook {
name = "cargo-install-hook.sh";
- deps = [ ];
+ propagatedBuildInputs = [ ];
substitutions = {
inherit shortTarget;
};
@@ -59,7 +59,7 @@ in {
cargoNextestHook = callPackage ({ }:
makeSetupHook {
name = "cargo-nextest-hook.sh";
- deps = [ cargo cargo-nextest ];
+ propagatedBuildInputs = [ cargo cargo-nextest ];
substitutions = {
inherit rustTargetPlatformSpec;
};
@@ -68,7 +68,7 @@ in {
cargoSetupHook = callPackage ({ }:
makeSetupHook {
name = "cargo-setup-hook.sh";
- deps = [ ];
+ propagatedBuildInputs = [ ];
substitutions = {
defaultConfig = ../fetchcargo-default-config.toml;
@@ -117,7 +117,7 @@ in {
maturinBuildHook = callPackage ({ }:
makeSetupHook {
name = "maturin-build-hook.sh";
- deps = [ cargo maturin rustc ];
+ propagatedBuildInputs = [ cargo maturin rustc ];
substitutions = {
inherit ccForBuild ccForHost cxxForBuild cxxForHost
rustBuildPlatform rustTargetPlatform rustTargetPlatformSpec;
diff --git a/pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix b/pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix
index c81a253b0de8d..17b97b1082e93 100644
--- a/pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix
+++ b/pkgs/build-support/setup-hooks/make-binary-wrapper/default.nix
@@ -11,8 +11,7 @@
makeSetupHook {
name = "make-binary-wrapper-hook";
-
- deps = [ dieHook ]
+ propagatedBuildInputs = [ dieHook ]
# https://github.com/NixOS/nixpkgs/issues/148189
++ lib.optional (stdenv.isDarwin && stdenv.isAarch64) cc;
diff --git a/pkgs/build-support/setup-hooks/make-symlinks-relative.sh b/pkgs/build-support/setup-hooks/make-symlinks-relative.sh
index f34353a7617b8..b07b0c5ae804c 100644
--- a/pkgs/build-support/setup-hooks/make-symlinks-relative.sh
+++ b/pkgs/build-support/setup-hooks/make-symlinks-relative.sh
@@ -1,4 +1,6 @@
-postFixupHooks+=(_makeSymlinksRelative)
+# symlinks are often created in postFixup
+# don't use fixupOutputHooks, it is before postFixup
+postFixupHooks+=(_makeSymlinksRelativeInAllOutputs)
# For every symlink in $output that refers to another file in $output
# ensure that the symlink is relative. This removes references to the output
@@ -26,3 +28,10 @@ _makeSymlinksRelative() {
done < <(find $prefix -type l -print0)
}
+
+_makeSymlinksRelativeInAllOutputs() {
+ local output
+ for output in $(getAllOutputNames); do
+ prefix="${!output}" _makeSymlinksRelative
+ done
+}
diff --git a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
index 5ef6138388562..99633a3c7c9af 100644
--- a/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
+++ b/pkgs/build-support/setup-hooks/wrap-gapps-hook/default.nix
@@ -9,12 +9,15 @@
, dconf
, callPackage
, wrapGAppsHook
-, writeTextFile
+, targetPackages
}:
makeSetupHook {
name = "wrap-gapps-hook";
- deps = lib.optionals (!stdenv.isDarwin) [
+ propagatedBuildInputs = [
+ # We use the wrapProgram function.
+ makeWrapper
+ ] ++ lib.optionals (!stdenv.isDarwin) [
# It is highly probable that a program will use GSettings,
# at minimum through GTK file chooser dialogue.
# Let’s add a GIO module for “dconf” GSettings backend
@@ -23,19 +26,22 @@ makeSetupHook {
# Unfortunately, it also requires the user to have dconf
# D-Bus service enabled globally (e.g. through a NixOS module).
dconf.lib
+
] ++ lib.optionals isGraphical [
# TODO: remove this, packages should depend on GTK explicitly.
gtk3
+ librsvg
+ ];
+
+ # depsTargetTargetPropagated will essentially be buildInputs when wrapGAppsHook is placed into nativeBuildInputs
+ # the librsvg above should be removed but kept to not break anything that implicitly depended on its binaries
+ depsTargetTargetPropagated = assert (lib.assertMsg (!targetPackages ? raw) "wrapGAppsHook must be in nativeBuildInputs"); lib.optionals isGraphical [
# librsvg provides a module for gdk-pixbuf to allow rendering
# SVG icons. Most icon themes are SVG-based and so are some
# graphics in GTK (e.g. cross for closing window in window title bar)
# so it is pretty much required for applications using GTK.
librsvg
- ] ++ [
-
- # We use the wrapProgram function.
- makeWrapper
];
passthru = {
tests = let
@@ -65,6 +71,15 @@ makeSetupHook {
''
);
+ basic-contains-gdk-pixbuf = let
+ tested = basic;
+ in testLib.runTest "basic-contains-gdk-pixbuf" (
+ testLib.skip stdenv.isDarwin ''
+ ${expectSomeLineContainingYInFileXToMentionZ "${tested}/bin/foo" "GDK_PIXBUF_MODULE_FILE" "${lib.getLib librsvg}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"}
+ ${expectSomeLineContainingYInFileXToMentionZ "${tested}/libexec/bar" "GDK_PIXBUF_MODULE_FILE" "${lib.getLib librsvg}/lib/gdk-pixbuf-2.0/2.10.0/loaders.cache"}
+ ''
+ );
+
# Simple derivation containing a gobject-introspection typelib.
typelib-Mahjong = stdenv.mkDerivation {
name = "typelib-Mahjong";
diff --git a/pkgs/build-support/setup-hooks/wrap-gapps-hook/tests/lib.nix b/pkgs/build-support/setup-hooks/wrap-gapps-hook/tests/lib.nix
index 42866c3419ddf..59fa9de24f9d1 100644
--- a/pkgs/build-support/setup-hooks/wrap-gapps-hook/tests/lib.nix
+++ b/pkgs/build-support/setup-hooks/wrap-gapps-hook/tests/lib.nix
@@ -1,7 +1,7 @@
{ lib, runCommand }:
rec {
- runTest = name: body: runCommand name { } ''
+ runTest = name: body: runCommand name { strictDeps = true; } ''
set -o errexit
${body}
touch $out
diff --git a/pkgs/build-support/trivial-builders.nix b/pkgs/build-support/trivial-builders.nix
index 7318d13f6babd..413ed65852f50 100644
--- a/pkgs/build-support/trivial-builders.nix
+++ b/pkgs/build-support/trivial-builders.nix
@@ -593,45 +593,28 @@ rec {
in linkFarm name (map mkEntryFromDrv drvs);
- /*
- Make a package that just contains a setup hook with the given contents.
- This setup hook will be invoked by any package that includes this package
- as a buildInput. Optionally takes a list of substitutions that should be
- applied to the resulting script.
-
- Examples:
- # setup hook that depends on the hello package and runs ./myscript.sh
- myhellohook = makeSetupHook { deps = [ hello ]; } ./myscript.sh;
-
- # writes a Linux-exclusive setup hook where @bash@ myscript.sh is substituted for the
- # bash interpreter.
- myhellohookSub = makeSetupHook {
- name = "myscript-hook";
- deps = [ hello ];
- substitutions = { bash = "${pkgs.bash}/bin/bash"; };
- meta.platforms = lib.platforms.linux;
- } ./myscript.sh;
-
- # setup hook with a package test
- myhellohookTested = makeSetupHook {
- name = "myscript-hook";
- deps = [ hello ];
- substitutions = { bash = "${pkgs.bash}/bin/bash"; };
- meta.platforms = lib.platforms.linux;
- passthru.tests.greeting = callPackage ./test { };
- } ./myscript.sh;
- */
+ # docs in doc/builders/special/makesetuphook.section.md
makeSetupHook =
{ name ? lib.warn "calling makeSetupHook without passing a name is deprecated." "hook"
- , deps ? []
- , substitutions ? {}
- , meta ? {}
- , passthru ? {}
+ , deps ? [ ]
+ # hooks go in nativeBuildInput so these will be nativeBuildInput
+ , propagatedBuildInputs ? [ ]
+ # these will be buildInputs
+ , depsTargetTargetPropagated ? [ ]
+ , meta ? { }
+ , passthru ? { }
+ , substitutions ? { }
}:
script:
runCommand name
(substitutions // {
inherit meta;
+ inherit depsTargetTargetPropagated;
+ propagatedBuildInputs =
+ # remove list conditionals before 23.11
+ lib.warnIf (!lib.isList deps) "'deps' argument to makeSetupHook must be a list. content of deps: ${toString deps}"
+ (lib.warnIf (deps != [ ]) "'deps' argument to makeSetupHook is deprecated and will be removed in release 23.11., Please use propagatedBuildInputs instead. content of deps: ${toString deps}"
+ propagatedBuildInputs ++ (if lib.isList deps then deps else [ deps ]));
strictDeps = true;
# TODO 2023-01, no backport: simplify to inherit passthru;
passthru = passthru
@@ -642,8 +625,7 @@ rec {
(''
mkdir -p $out/nix-support
cp ${script} $out/nix-support/setup-hook
- '' + lib.optionalString (deps != []) ''
- printWords ${toString deps} > $out/nix-support/propagated-build-inputs
+ recordPropagatedDependencies
'' + lib.optionalString (substitutions != {}) ''
substituteAll ${script} $out/nix-support/setup-hook
'');
diff --git a/pkgs/data/fonts/freefont-ttf/default.nix b/pkgs/data/fonts/freefont-ttf/default.nix
index 9d8c28681a9f1..4bf50d3385879 100644
--- a/pkgs/data/fonts/freefont-ttf/default.nix
+++ b/pkgs/data/fonts/freefont-ttf/default.nix
@@ -1,18 +1,22 @@
-{ lib, fetchzip }:
+{ lib, stdenvNoCC, fetchzip }:
-fetchzip rec {
+stdenvNoCC.mkDerivation rec {
pname = "freefont-ttf";
version = "20120503";
- url = "mirror://gnu/freefont/freefont-ttf-${version}.zip";
+ src = fetchzip {
+ url = "mirror://gnu/freefont/freefont-ttf-${version}.zip";
+ hash = "sha256-K3kVHGcDTxQ7N7XqSdwRObriVkBoBYPKHbyYrYvm7VU=";
+ };
+
+ installPhase = ''
+ runHook preInstall
- postFetch = ''
mkdir -p $out/share/fonts/truetype
- mv $out/*.ttf $out/share/fonts/truetype
- find $out -maxdepth 1 ! -type d -exec rm {} +
- '';
+ mv *.ttf $out/share/fonts/truetype
- sha256 = "sha256-bdMZg/mHYc0N6HiR8uNl0CjeOwBou+OYj3LPkyEUHUA=";
+ runHook postInstall
+ '';
meta = {
description = "GNU Free UCS Outline Fonts";
@@ -24,6 +28,6 @@ fetchzip rec {
homepage = "https://www.gnu.org/software/freefont/";
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.all;
- maintainers = [];
+ maintainers = [ ];
};
}
diff --git a/pkgs/data/icons/capitaine-cursors-themed/default.nix b/pkgs/data/icons/capitaine-cursors-themed/default.nix
index d86ce3f8161ae..bd0147fecde31 100644
--- a/pkgs/data/icons/capitaine-cursors-themed/default.nix
+++ b/pkgs/data/icons/capitaine-cursors-themed/default.nix
@@ -1,14 +1,22 @@
-{ lib, fetchzip }:
-fetchzip rec {
+{ lib, stdenvNoCC, fetchzip }:
+
+stdenvNoCC.mkDerivation rec {
pname = "capitaine-cursors-themed";
version = "5";
- stripRoot = false;
- url = "https://github.com/sainnhe/capitaine-cursors/releases/download/r${version}/Linux.zip";
- sha256 = "jQNAXuR/OtvohWziGYgb5Ni2/tEIGaY9HIyUUW793EY=";
- postFetch = ''
+ src = fetchzip {
+ url = "https://github.com/sainnhe/capitaine-cursors/releases/download/r${version}/Linux.zip";
+ stripRoot = false;
+ hash = "sha256-ipPpmZKU/xLA45fdOvxVbtFDCUsCYIvzeps/DjhFkNg=";
+ };
+
+ installPhase = ''
+ runHook preInstall
+
mkdir -p $out/share/icons
cp -r ./ $out/share/icons
+
+ runHook postInstall
'';
meta = with lib; {
diff --git a/pkgs/data/misc/cldr-annotations/default.nix b/pkgs/data/misc/cldr-annotations/default.nix
index f19b666abeabf..729d3cdbb7b89 100644
--- a/pkgs/data/misc/cldr-annotations/default.nix
+++ b/pkgs/data/misc/cldr-annotations/default.nix
@@ -1,23 +1,24 @@
-{ lib, fetchzip }:
+{ lib, stdenvNoCC, fetchzip }:
-fetchzip rec {
+stdenvNoCC.mkDerivation rec {
pname = "cldr-annotations";
version = "42.0";
- url = "https://unicode.org/Public/cldr/${lib.versions.major version}/cldr-common-${version}.zip";
+ src = fetchzip {
+ url = "https://unicode.org/Public/cldr/${lib.versions.major version}/cldr-common-${version}.zip";
+ stripRoot = false;
+ hash = "sha256-paRon3ecGXNp3ZDnN1DU9RVU2NDWTBiKjy0OP3vcPLE=";
+ };
+
+ installPhase = ''
+ runHook preInstall
- stripRoot = false;
- postFetch = ''
mkdir -p $out/share/unicode/cldr/common
- mv $out/common/annotations{,Derived} -t $out/share/unicode/cldr/common
+ mv common/annotations{,Derived} -t $out/share/unicode/cldr/common
- shopt -s extglob dotglob
- rm -rf $out/!(share)
- shopt -u extglob dotglob
+ runHook postInstall
'';
- hash = "sha256-9OOd69nBaDSt+ilL3PTGpcQgC60PnHqd8/CYa2LgeI0=";
-
meta = with lib; {
description = "Names and keywords for Unicode characters from the Common Locale Data Repository";
homepage = "https://cldr.unicode.org";
diff --git a/pkgs/data/misc/publicsuffix-list/default.nix b/pkgs/data/misc/publicsuffix-list/default.nix
index 063e120d3c4b1..02b0ba0b439b5 100644
--- a/pkgs/data/misc/publicsuffix-list/default.nix
+++ b/pkgs/data/misc/publicsuffix-list/default.nix
@@ -1,20 +1,24 @@
-{ lib, fetchFromGitHub }:
+{ lib, stdenvNoCC, fetchFromGitHub }:
-let
+stdenvNoCC.mkDerivation {
pname = "publicsuffix-list";
- version = "2021-09-03";
-in fetchFromGitHub {
- name = "${pname}-${version}";
- owner = "publicsuffix";
- repo = "list";
- rev = "2533d032871e1ef1f410fc0754b848d4587c8021";
- sha256 = "sha256-Q8uIXM1CMu8dlWcVoL17M1XRGu3kG7Y7jpx0oHQh+2I=";
+ version = "unstable-2021-09-03";
- postFetch = ''
- install -Dm0444 $out/public_suffix_list.dat $out/tests/test_psl.txt -t $out/share/publicsuffix
- shopt -s extglob dotglob
- rm -rf $out/!(share)
- shopt -u extglob dotglob
+ src = fetchFromGitHub {
+ owner = "publicsuffix";
+ repo = "list";
+ rev = "2533d032871e1ef1f410fc0754b848d4587c8021";
+ hash = "sha256-moibTN9KovABcg+ubKUgMXg4b8sMrTVo6Itmiati/Vk=";
+ };
+
+ dontBuild = true;
+
+ installPhase = ''
+ runHook preInstall
+
+ install -Dm0444 public_suffix_list.dat tests/test_psl.txt -t $out/share/publicsuffix
+
+ runHook postInstall
'';
meta = with lib; {
diff --git a/pkgs/data/misc/unicode-emoji/default.nix b/pkgs/data/misc/unicode-emoji/default.nix
index bf27cb03e2852..ae14a27c8b7f4 100644
--- a/pkgs/data/misc/unicode-emoji/default.nix
+++ b/pkgs/data/misc/unicode-emoji/default.nix
@@ -1,4 +1,5 @@
{ lib
+, stdenvNoCC
, fetchurl
, symlinkJoin
}:
@@ -6,30 +7,40 @@
let
version = "15.0";
- fetchData = { file, sha256 }: fetchurl {
- url = "https://www.unicode.org/Public/emoji/${version}/${file}";
- inherit sha256;
- downloadToTemp = true;
- recursiveHash = true;
- postFetch = ''
+ fetchData = { suffix, hash }: stdenvNoCC.mkDerivation {
+ pname = "unicode-emoji-${suffix}";
+ inherit version;
+
+ src = fetchurl {
+ url = "https://www.unicode.org/Public/emoji/${version}/emoji-${suffix}.txt";
+ inherit hash;
+ };
+
+ dontUnpack = true;
+
+ installPhase = ''
+ runHook preInstall
+
installDir="$out/share/unicode/emoji"
mkdir -p "$installDir"
- mv "$downloadedFile" "$installDir/${file}"
+ cp "$src" "$installDir/emoji-${suffix}.txt"
+
+ runHook postInstall
'';
};
srcs = {
emoji-sequences = fetchData {
- file = "emoji-sequences.txt";
- sha256 = "sha256-vRpXHAcdY3arTnFwBH3WUW3DOh8B3L9+sRcecLHZ2lg=";
+ suffix = "sequences";
+ hash = "sha256-XCIi2KQy2JagMaaML1SwT79HsPzi5phT8euKPpRetW0=";
};
emoji-test = fetchData {
- file = "emoji-test.txt";
- sha256 = "sha256-3Rega6+ZJ5jXRhLFL/i/12V5IypEo5FaGG6Wf9Bj0UU=";
+ suffix = "test";
+ hash = "sha256-hEXyOsg4jglr4Z0CYuFPzv+Fb/Ugk/I1bciUhfGoU9s=";
};
emoji-zwj-sequences = fetchData {
- file = "emoji-zwj-sequences.txt";
- sha256 = "sha256-9AqrpyUCiBcR/fafa4VaH0pT5o1YzEZDVySsX4ja1u8=";
+ suffix = "zwj-sequences";
+ hash = "sha256-/jV/kRe3dGZ2Bjdl1YcTft+bJZA6eSvVSTW/CFZ5EYI=";
};
};
in
diff --git a/pkgs/desktops/gnome/apps/accerciser/default.nix b/pkgs/desktops/gnome/apps/accerciser/default.nix
index 7d4f5969d0dfd..d21d1c2006166 100644
--- a/pkgs/desktops/gnome/apps/accerciser/default.nix
+++ b/pkgs/desktops/gnome/apps/accerciser/default.nix
@@ -13,6 +13,7 @@
, gettext
, libwnck
, adwaita-icon-theme
+, librsvg
}:
python3.pkgs.buildPythonApplication rec {
@@ -41,6 +42,7 @@ python3.pkgs.buildPythonApplication rec {
at-spi2-core
gtk3
libwnck
+ librsvg
];
propagatedBuildInputs = with python3.pkgs; [
@@ -52,10 +54,6 @@ python3.pkgs.buildPythonApplication rec {
xlib
];
- # Strict deps breaks accerciser
- # and https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
passthru = {
updateScript = gnome.updateScript {
packageName = "accerciser";
diff --git a/pkgs/desktops/gnome/apps/seahorse/default.nix b/pkgs/desktops/gnome/apps/seahorse/default.nix
index 60de418f1e440..bbab612b9c8d8 100644
--- a/pkgs/desktops/gnome/apps/seahorse/default.nix
+++ b/pkgs/desktops/gnome/apps/seahorse/default.nix
@@ -1,5 +1,6 @@
{ stdenv
, lib
+, fetchpatch
, fetchurl
, vala
, meson
@@ -36,6 +37,14 @@ stdenv.mkDerivation rec {
hash = "sha256-Wx0b+6dPNlgifzyC4pbzMN0PzR70Y2tqIYIo/uXqgy0=";
};
+ patches = [
+ (fetchpatch {
+ name = "gpg-2.4.patch";
+ url = "https://gitlab.gnome.org/GNOME/seahorse/-/commit/9260c74779be3d7a378db0671af862ffa3573d42.patch";
+ hash = "sha256-4QiFgH4jC1ucmA9fFozUQZ3Mat76SgpYkMpRz80RH64=";
+ })
+ ];
+
nativeBuildInputs = [
meson
ninja
diff --git a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
index efad1cc14db4c..dbf3dbd9be362 100644
--- a/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
+++ b/pkgs/desktops/gnome/misc/gnome-tweaks/default.nix
@@ -22,7 +22,6 @@ python3Packages.buildPythonApplication rec {
pname = "gnome-tweaks";
version = "42.beta";
format = "other";
- strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.major version}/${pname}-${version}.tar.xz";
diff --git a/pkgs/desktops/rox/rox-filer/default.nix b/pkgs/desktops/rox/rox-filer/default.nix
index e26c90592252f..b05be287a89d4 100644
--- a/pkgs/desktops/rox/rox-filer/default.nix
+++ b/pkgs/desktops/rox/rox-filer/default.nix
@@ -24,7 +24,7 @@ stdenv.mkDerivation rec {
wrapGAppsHook
];
buildInputs = [ libxml2 gtk shared-mime-info libSM ];
- NIX_LDFLAGS = "-ldl -lm";
+ NIX_LDFLAGS = "-lm";
patches = [
./rox-filer-2.11-in-source-build.patch
diff --git a/pkgs/desktops/xfce/applications/catfish/default.nix b/pkgs/desktops/xfce/applications/catfish/default.nix
index f78f420cabc7b..2f16352f8ca04 100644
--- a/pkgs/desktops/xfce/applications/catfish/default.nix
+++ b/pkgs/desktops/xfce/applications/catfish/default.nix
@@ -41,7 +41,6 @@ python3Packages.buildPythonApplication rec {
python3Packages.pyxdg
python3Packages.ptyprocess
python3Packages.pycairo
- gobject-introspection # Temporary fix, see https://github.com/NixOS/nixpkgs/issues/56943
];
propagatedBuildInputs = [
diff --git a/pkgs/development/compilers/chez-racket/default.nix b/pkgs/development/compilers/chez-racket/default.nix
index fa32934243c6d..158dfa0529334 100644
--- a/pkgs/development/compilers/chez-racket/default.nix
+++ b/pkgs/development/compilers/chez-racket/default.nix
@@ -1,16 +1,23 @@
{ stdenv, buildPackages, callPackage }:
let
- chezSystemMap = {
- # See `/workarea` of source code for list of systems
- "aarch64-darwin" = "tarm64osx";
- "aarch64-linux" = "tarm64le";
- "armv7l-linux" = "tarm32le";
- "x86_64-darwin" = "ta6osx";
- "x86_64-linux" = "ta6le";
- };
+ chezArch =
+ /**/ if stdenv.hostPlatform.isAarch then "arm${toString stdenv.hostPlatform.parsed.cpu.bits}"
+ else if stdenv.hostPlatform.isx86_32 then "i3"
+ else if stdenv.hostPlatform.isx86_64 then "a6"
+ else if stdenv.hostPlatform.isPower then "ppc${toString stdenv.hostPlatform.parsed.cpu.bits}"
+ else throw "Add ${stdenv.hostPlatform.parsed.cpu.arch} to chezArch to enable building chez-racket";
+
+ chezOs =
+ /**/ if stdenv.hostPlatform.isDarwin then "osx"
+ else if stdenv.hostPlatform.isFreeBSD then "fb"
+ else if stdenv.hostPlatform.isLinux then "le"
+ else if stdenv.hostPlatform.isNetBSD then "nb"
+ else if stdenv.hostPlatform.isOpenBSD then "ob"
+ else throw "Add ${stdenv.hostPlatform.uname.system} to chezOs to enable building chez-racket";
+
inherit (stdenv.hostPlatform) system;
- chezSystem = chezSystemMap.${system} or (throw "Add ${system} to chezSystemMap to enable building chez-racket");
+ chezSystem = "t${chezArch}${chezOs}";
# Chez Scheme uses an ad-hoc `configure`, hence we don't use the usual
# stdenv abstractions.
forBoot = {
diff --git a/pkgs/development/compilers/chez-racket/shared.nix b/pkgs/development/compilers/chez-racket/shared.nix
index f5a9bbc1e5b4b..d09f55e229ee9 100644
--- a/pkgs/development/compilers/chez-racket/shared.nix
+++ b/pkgs/development/compilers/chez-racket/shared.nix
@@ -24,8 +24,7 @@ stdenv.mkDerivation (args // {
'';
nativeBuildInputs = lib.optionals stdenv.isDarwin (with darwin; [ cctools autoSignDarwinBinariesHook ]);
- buildInputs = [ ncurses libX11 zlib lz4 ]
- ++ lib.optional stdenv.isDarwin libiconv;
+ buildInputs = [ libiconv libX11 lz4 ncurses zlib ];
enableParallelBuilding = true;
diff --git a/pkgs/development/compilers/dmd/generic.nix b/pkgs/development/compilers/dmd/generic.nix
index c1fb9abf77d7e..3f8871df4f96d 100644
--- a/pkgs/development/compilers/dmd/generic.nix
+++ b/pkgs/development/compilers/dmd/generic.nix
@@ -151,13 +151,6 @@ stdenv.mkDerivation rec {
git
];
- # Workaround cc-wrapper's --sysroot= value for `staging-next`: it
- # breaks library lookup via RUNPATH:
- # ld: warning: libm.so.6, needed by ./generated/linux/release/64/lib.so, not found (try using -rpath or -rpath-link)
- # ld: /build/druntime/generated/linux/release/64/libdruntime.so: undefined reference to `log10@GLIBC_2.2.5'
- # TODO(trofi): remove the workaround once cc-wrapper is fixed.
- NIX_CFLAGS_COMPILE = [ "--sysroot=/" ];
-
buildInputs = [
curl
tzdata
diff --git a/pkgs/development/compilers/gcc/10/default.nix b/pkgs/development/compilers/gcc/10/default.nix
index 6ce7779d566e2..3224696a5e33c 100644
--- a/pkgs/development/compilers/gcc/10/default.nix
+++ b/pkgs/development/compilers/gcc/10/default.nix
@@ -185,7 +185,7 @@ stdenv.mkDerivation ({
;
}) depsBuildBuild nativeBuildInputs depsBuildTarget buildInputs depsTargetTarget;
- NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm -ldl";
+ NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm";
preConfigure = (import ../common/pre-configure.nix {
inherit lib;
@@ -226,7 +226,6 @@ stdenv.mkDerivation ({
};
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/11/default.nix b/pkgs/development/compilers/gcc/11/default.nix
index 482cc5f362e5f..e4dab5f263dc8 100644
--- a/pkgs/development/compilers/gcc/11/default.nix
+++ b/pkgs/development/compilers/gcc/11/default.nix
@@ -191,7 +191,7 @@ stdenv.mkDerivation ({
;
}) depsBuildBuild nativeBuildInputs depsBuildTarget buildInputs depsTargetTarget;
- NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm -ldl";
+ NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm";
preConfigure = (import ../common/pre-configure.nix {
inherit lib;
@@ -232,7 +232,6 @@ stdenv.mkDerivation ({
};
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/12/default.nix b/pkgs/development/compilers/gcc/12/default.nix
index 5d8205a755195..621da8f1bef7e 100644
--- a/pkgs/development/compilers/gcc/12/default.nix
+++ b/pkgs/development/compilers/gcc/12/default.nix
@@ -227,7 +227,7 @@ stdenv.mkDerivation ({
;
}) depsBuildBuild nativeBuildInputs depsBuildTarget buildInputs depsTargetTarget;
- NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm -ldl";
+ NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm";
preConfigure = (import ../common/pre-configure.nix {
@@ -269,7 +269,6 @@ stdenv.mkDerivation ({
};
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/4.8/default.nix b/pkgs/development/compilers/gcc/4.8/default.nix
index e2e9cb66d0a98..d99e889daa113 100644
--- a/pkgs/development/compilers/gcc/4.8/default.nix
+++ b/pkgs/development/compilers/gcc/4.8/default.nix
@@ -228,7 +228,6 @@ stdenv.mkDerivation ({
};
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/4.9/default.nix b/pkgs/development/compilers/gcc/4.9/default.nix
index eba68c39fd507..6dd8f975707ca 100644
--- a/pkgs/development/compilers/gcc/4.9/default.nix
+++ b/pkgs/development/compilers/gcc/4.9/default.nix
@@ -248,7 +248,6 @@ stdenv.mkDerivation ({
};
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/6/default.nix b/pkgs/development/compilers/gcc/6/default.nix
index 27d57a509aaed..41db37989edac 100644
--- a/pkgs/development/compilers/gcc/6/default.nix
+++ b/pkgs/development/compilers/gcc/6/default.nix
@@ -228,7 +228,7 @@ stdenv.mkDerivation ({
;
}) depsBuildBuild nativeBuildInputs depsBuildTarget buildInputs depsTargetTarget;
- NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm -ldl";
+ NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm";
preConfigure = import ../common/pre-configure.nix {
inherit lib;
@@ -267,7 +267,6 @@ stdenv.mkDerivation ({
};
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/7/default.nix b/pkgs/development/compilers/gcc/7/default.nix
index d22e85c61adcf..bc61223d4c856 100644
--- a/pkgs/development/compilers/gcc/7/default.nix
+++ b/pkgs/development/compilers/gcc/7/default.nix
@@ -190,7 +190,7 @@ stdenv.mkDerivation ({
}) depsBuildBuild nativeBuildInputs depsBuildTarget buildInputs depsTargetTarget;
NIX_CFLAGS_COMPILE = lib.optionalString (stdenv.cc.isClang && langFortran) "-Wno-unused-command-line-argument";
- NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm -ldl";
+ NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm";
preConfigure = import ../common/pre-configure.nix {
inherit lib;
@@ -229,7 +229,6 @@ stdenv.mkDerivation ({
;
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/8/default.nix b/pkgs/development/compilers/gcc/8/default.nix
index 2b43fc124bf02..5bdba91b7076e 100644
--- a/pkgs/development/compilers/gcc/8/default.nix
+++ b/pkgs/development/compilers/gcc/8/default.nix
@@ -171,7 +171,7 @@ stdenv.mkDerivation ({
;
}) depsBuildBuild nativeBuildInputs depsBuildTarget buildInputs depsTargetTarget;
- NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm -ldl";
+ NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm";
preConfigure = import ../common/pre-configure.nix {
inherit lib;
@@ -208,7 +208,6 @@ stdenv.mkDerivation ({
};
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/9/default.nix b/pkgs/development/compilers/gcc/9/default.nix
index ebf0bf0563906..53945fec4613a 100644
--- a/pkgs/development/compilers/gcc/9/default.nix
+++ b/pkgs/development/compilers/gcc/9/default.nix
@@ -184,7 +184,7 @@ stdenv.mkDerivation ({
;
}) depsBuildBuild nativeBuildInputs depsBuildTarget buildInputs depsTargetTarget;
- NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm -ldl";
+ NIX_LDFLAGS = lib.optionalString hostPlatform.isSunOS "-lm";
preConfigure = import ../common/pre-configure.nix {
inherit lib;
@@ -223,7 +223,6 @@ stdenv.mkDerivation ({
};
targetConfig = if targetPlatform != hostPlatform then targetPlatform.config else null;
- targetPlatformConfig = targetPlatform.config;
buildFlags = optional
(targetPlatform == hostPlatform && hostPlatform == buildPlatform)
diff --git a/pkgs/development/compilers/gcc/builder.sh b/pkgs/development/compilers/gcc/builder.sh
index dd5a8de76e2a8..2d7a058fa015c 100644
--- a/pkgs/development/compilers/gcc/builder.sh
+++ b/pkgs/development/compilers/gcc/builder.sh
@@ -203,17 +203,6 @@ preInstall() {
ln -s lib "$out/${targetConfig}/lib32"
ln -s lib "${!outputLib}/${targetConfig}/lib32"
fi
-
- # cc-wrappers uses --sysroot=/nix/store/does/not/exist as a way to
- # drop default sysheaders search path. Unfortunately that switches
- # clang++ into searching libraries in gcc in cross-compiler paths:
- # from ${!outputLib}/lib (native)
- # to ${!outputLib}/${targetPlatformConfig}/lib
- # We create the symlink to make both native and cross paths
- # available even if the toolchain is not the cross-compiler.
- if [ ! -e ${!outputLib}/${targetPlatformConfig} ] ; then
- ln -s . ${!outputLib}/${targetPlatformConfig}
- fi
}
diff --git a/pkgs/development/compilers/glslang/default.nix b/pkgs/development/compilers/glslang/default.nix
index f5f46ff9f4f7f..e0e980483064b 100644
--- a/pkgs/development/compilers/glslang/default.nix
+++ b/pkgs/development/compilers/glslang/default.nix
@@ -10,13 +10,13 @@
}:
stdenv.mkDerivation rec {
pname = "glslang";
- version = "1.3.236.0";
+ version = "1.3.239.0";
src = fetchFromGitHub {
owner = "KhronosGroup";
repo = "glslang";
rev = "sdk-${version}";
- hash = "sha256-iVcx1j7OMJEU4cPydNwQSFufTUiqq7GKp69Y6pEt7Wc=";
+ hash = "sha256-P2HG/oJXdB5nvU3zVnj2vSLJGQuDcZiQBfBBvuR66Kk=";
};
# These get set at all-packages, keep onto them for child drvs
@@ -33,6 +33,14 @@ stdenv.mkDerivation rec {
url = "https://github.com/KhronosGroup/glslang/commit/7627bd89583c5aafb8b38c81c15494019271fabf.patch";
hash = "sha256-1Dwhn78PG4gAGgEwTXpC+mkZRyvy8sTIsEvihXFeNaQ=";
})
+ # Upstream tries to detect the Darwin linker by checking for AppleClang, but it’s just Clang in nixpkgs.
+ # Revert the commit to allow the build to work on Darwin with the nixpkg Darwin Clang toolchain.
+ (fetchpatch {
+ name = "Fix-Darwin-linker-error.patch";
+ url = "https://github.com/KhronosGroup/glslang/commit/586baa35a47b3aa6ad3fa829a27f0f4206400668.patch";
+ hash = "sha256-paAl4E8GzogcxDEzn/XuhNH6XObp+i7WfArqAiuH4Mk=";
+ revert = true;
+ })
];
postPatch = ''
diff --git a/pkgs/development/compilers/go/1.18.nix b/pkgs/development/compilers/go/1.18.nix
index 3c089f02920a1..b19fe44c13170 100644
--- a/pkgs/development/compilers/go/1.18.nix
+++ b/pkgs/development/compilers/go/1.18.nix
@@ -1,5 +1,6 @@
{ lib
, stdenv
+, fetchpatch
, fetchurl
, tzdata
, substituteAll
@@ -87,6 +88,12 @@ stdenv.mkDerivation rec {
})
./remove-tools-1.11.patch
./go_no_vendor_checks-1.16.patch
+
+ # runtime: support riscv64 SV57 mode
+ (fetchpatch {
+ url = "https://github.com/golang/go/commit/1e3c19f3fee12e5e2b7802a54908a4d4d03960da.patch";
+ sha256 = "sha256-mk/9gXwQEcAkiRemF6GiNU0c0fhDR29/YcKgQR7ONTA=";
+ })
];
GOOS = stdenv.targetPlatform.parsed.kernel.name;
diff --git a/pkgs/development/compilers/go/1.19.nix b/pkgs/development/compilers/go/1.19.nix
index 84a6059581e73..13cf14c77fa5a 100644
--- a/pkgs/development/compilers/go/1.19.nix
+++ b/pkgs/development/compilers/go/1.19.nix
@@ -1,5 +1,6 @@
{ lib
, stdenv
+, fetchpatch
, fetchurl
, tzdata
, substituteAll
@@ -87,6 +88,12 @@ stdenv.mkDerivation rec {
})
./remove-tools-1.11.patch
./go_no_vendor_checks-1.16.patch
+
+ # runtime: support riscv64 SV57 mode
+ (fetchpatch {
+ url = "https://github.com/golang/go/commit/1e3c19f3fee12e5e2b7802a54908a4d4d03960da.patch";
+ sha256 = "sha256-mk/9gXwQEcAkiRemF6GiNU0c0fhDR29/YcKgQR7ONTA=";
+ })
];
GOOS = stdenv.targetPlatform.parsed.kernel.name;
diff --git a/pkgs/development/compilers/llvm/10/llvm/default.nix b/pkgs/development/compilers/llvm/10/llvm/default.nix
index 95eba5d7fb36e..41c20ac47ebfd 100644
--- a/pkgs/development/compilers/llvm/10/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/10/llvm/default.nix
@@ -5,6 +5,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -191,7 +192,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals isDarwin [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/11/llvm/default.nix b/pkgs/development/compilers/llvm/11/llvm/default.nix
index 2123efdf23519..93cf2757c6522 100644
--- a/pkgs/development/compilers/llvm/11/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/11/llvm/default.nix
@@ -5,6 +5,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -203,7 +204,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals isDarwin [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/12/llvm/default.nix b/pkgs/development/compilers/llvm/12/llvm/default.nix
index b04eeb3c72693..3d5592e19ee59 100644
--- a/pkgs/development/compilers/llvm/12/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/12/llvm/default.nix
@@ -5,6 +5,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -191,7 +192,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals isDarwin [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/13/llvm/default.nix b/pkgs/development/compilers/llvm/13/llvm/default.nix
index 32e96212fa575..e2d6da816f32c 100644
--- a/pkgs/development/compilers/llvm/13/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/13/llvm/default.nix
@@ -5,6 +5,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -153,7 +154,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals isDarwin [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/14/llvm/default.nix b/pkgs/development/compilers/llvm/14/llvm/default.nix
index 5437735f78fed..d8010ecf893d2 100644
--- a/pkgs/development/compilers/llvm/14/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/14/llvm/default.nix
@@ -6,6 +6,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -165,7 +166,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals isDarwin [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/15/llvm/default.nix b/pkgs/development/compilers/llvm/15/llvm/default.nix
index e0b79a9acfefc..de98c43615314 100644
--- a/pkgs/development/compilers/llvm/15/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/15/llvm/default.nix
@@ -9,6 +9,7 @@
, python3
, python3Packages
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -327,7 +328,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals isDarwin [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/5/llvm/default.nix b/pkgs/development/compilers/llvm/5/llvm/default.nix
index a4d04f0618c7e..31b88098c83a8 100644
--- a/pkgs/development/compilers/llvm/5/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/5/llvm/default.nix
@@ -5,6 +5,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libxml2
, ncurses
@@ -168,10 +169,9 @@ stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ]
- ++ lib.optional (!isDarwin)
+ ] ++ lib.optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
- ++ lib.optionals (isDarwin) [
+ ] ++ lib.optionals (isDarwin) [
"-DLLVM_ENABLE_LIBCXX=ON"
"-DCAN_TARGET_i386=false"
] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
diff --git a/pkgs/development/compilers/llvm/6/llvm/default.nix b/pkgs/development/compilers/llvm/6/llvm/default.nix
index d18bf2149e1d7..954887cd23680 100644
--- a/pkgs/development/compilers/llvm/6/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/6/llvm/default.nix
@@ -4,6 +4,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libxml2
, ncurses
@@ -162,7 +163,7 @@ stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals (isDarwin) [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/7/llvm/default.nix b/pkgs/development/compilers/llvm/7/llvm/default.nix
index da72bb8b35ae3..eaeef3c2ef505 100644
--- a/pkgs/development/compilers/llvm/7/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/7/llvm/default.nix
@@ -5,6 +5,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -180,7 +181,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals (isDarwin) [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/8/llvm/default.nix b/pkgs/development/compilers/llvm/8/llvm/default.nix
index 5c381a896e152..aa76fc0c3cf7e 100644
--- a/pkgs/development/compilers/llvm/8/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/8/llvm/default.nix
@@ -5,6 +5,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -173,7 +174,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals (isDarwin) [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/9/llvm/default.nix b/pkgs/development/compilers/llvm/9/llvm/default.nix
index f8b6a8170f85a..89bc014f5c65a 100644
--- a/pkgs/development/compilers/llvm/9/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/9/llvm/default.nix
@@ -5,6 +5,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? libbfd.hasPluginAPI
, libbfd
, libpfm
, libxml2
@@ -188,7 +189,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals (isDarwin) [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/llvm/git/llvm/default.nix b/pkgs/development/compilers/llvm/git/llvm/default.nix
index b4e2757f20ca1..9a0d375df9c37 100644
--- a/pkgs/development/compilers/llvm/git/llvm/default.nix
+++ b/pkgs/development/compilers/llvm/git/llvm/default.nix
@@ -6,6 +6,7 @@
, cmake
, python3
, libffi
+, enableGoldPlugin ? (!stdenv.isDarwin && !stdenv.targetPlatform.isWasi)
, libbfd
, libpfm
, libxml2
@@ -151,7 +152,7 @@ in stdenv.mkDerivation (rec {
"-DSPHINX_OUTPUT_MAN=ON"
"-DSPHINX_OUTPUT_HTML=OFF"
"-DSPHINX_WARNINGS_AS_ERRORS=OFF"
- ] ++ optionals (!isDarwin) [
+ ] ++ optionals (enableGoldPlugin) [
"-DLLVM_BINUTILS_INCDIR=${libbfd.dev}/include"
] ++ optionals isDarwin [
"-DLLVM_ENABLE_LIBCXX=ON"
diff --git a/pkgs/development/compilers/mit-scheme/default.nix b/pkgs/development/compilers/mit-scheme/default.nix
index 5a96242da7b13..da668b51e2785 100644
--- a/pkgs/development/compilers/mit-scheme/default.nix
+++ b/pkgs/development/compilers/mit-scheme/default.nix
@@ -49,6 +49,12 @@ stdenv.mkDerivation {
runHook postConfigure
'';
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-parameter"
+ "-Wno-error=use-after-free"
+ ];
+
buildPhase = ''
runHook preBuild
cd src
diff --git a/pkgs/development/compilers/openjdk/11.nix b/pkgs/development/compilers/openjdk/11.nix
index 72b25bff777b6..e5980a711a3c0 100644
--- a/pkgs/development/compilers/openjdk/11.nix
+++ b/pkgs/development/compilers/openjdk/11.nix
@@ -4,15 +4,15 @@
, libXcursor, libXrandr, fontconfig, openjdk11-bootstrap
, setJavaClassPath
, headless ? false
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
let
major = "11";
minor = "0";
- update = "17";
- build = "8";
+ update = "18";
+ build = "10";
openjdk = stdenv.mkDerivation rec {
pname = "openjdk" + lib.optionalString headless "-headless";
@@ -22,7 +22,7 @@ let
owner = "openjdk";
repo = "jdk${major}u";
rev = "jdk-${version}";
- sha256 = "sha256-kvgLYqQZPqyuigVyzbDHc3TMff0clvzM8IdzYLYcxPU=";
+ sha256 = "sha256-QGOpMIrWwOtIcUY/CLbTRDvcVTG2xioZu46v+n+IIQ4=";
};
nativeBuildInputs = [ pkg-config autoconf unzip ];
diff --git a/pkgs/development/compilers/openjdk/12.nix b/pkgs/development/compilers/openjdk/12.nix
index bd3defbd6b98c..682bb3263f74c 100644
--- a/pkgs/development/compilers/openjdk/12.nix
+++ b/pkgs/development/compilers/openjdk/12.nix
@@ -4,7 +4,7 @@
, libXcursor, libXrandr, fontconfig, openjdk11, fetchpatch
, setJavaClassPath
, headless ? false
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
diff --git a/pkgs/development/compilers/openjdk/13.nix b/pkgs/development/compilers/openjdk/13.nix
index 40dc753f7955c..72be3b050dd94 100644
--- a/pkgs/development/compilers/openjdk/13.nix
+++ b/pkgs/development/compilers/openjdk/13.nix
@@ -4,7 +4,7 @@
, libXcursor, libXrandr, fontconfig, openjdk13-bootstrap, fetchpatch
, setJavaClassPath
, headless ? false
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
diff --git a/pkgs/development/compilers/openjdk/14.nix b/pkgs/development/compilers/openjdk/14.nix
index 047e1a3908191..50e23ca1399c5 100644
--- a/pkgs/development/compilers/openjdk/14.nix
+++ b/pkgs/development/compilers/openjdk/14.nix
@@ -4,7 +4,7 @@
, libXcursor, libXrandr, fontconfig, openjdk14-bootstrap
, setJavaClassPath
, headless ? false
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
diff --git a/pkgs/development/compilers/openjdk/15.nix b/pkgs/development/compilers/openjdk/15.nix
index c33e937f9f24b..f013cddbae536 100644
--- a/pkgs/development/compilers/openjdk/15.nix
+++ b/pkgs/development/compilers/openjdk/15.nix
@@ -4,7 +4,7 @@
, libXcursor, libXrandr, fontconfig, openjdk15-bootstrap
, setJavaClassPath
, headless ? false
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
diff --git a/pkgs/development/compilers/openjdk/16.nix b/pkgs/development/compilers/openjdk/16.nix
index 461cd724144ed..eee569a7bfd67 100644
--- a/pkgs/development/compilers/openjdk/16.nix
+++ b/pkgs/development/compilers/openjdk/16.nix
@@ -4,7 +4,7 @@
, libXi, libXinerama, libXcursor, libXrandr, fontconfig, openjdk16-bootstrap
, setJavaClassPath
, headless ? false
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
diff --git a/pkgs/development/compilers/openjdk/17.nix b/pkgs/development/compilers/openjdk/17.nix
index 6d8087d7e948d..0d9ffb1f79f46 100644
--- a/pkgs/development/compilers/openjdk/17.nix
+++ b/pkgs/development/compilers/openjdk/17.nix
@@ -4,15 +4,15 @@
, libXi, libXinerama, libXcursor, libXrandr, fontconfig, openjdk17-bootstrap
, setJavaClassPath
, headless ? false
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
let
version = {
feature = "17";
- interim = ".0.5";
- build = "8";
+ interim = ".0.6";
+ build = "10";
};
openjdk = stdenv.mkDerivation {
@@ -23,7 +23,7 @@ let
owner = "openjdk";
repo = "jdk${version.feature}u";
rev = "jdk-${version.feature}${version.interim}+${version.build}";
- sha256 = "sha256-2k1Mm36ds6MZheZVsLvXkoqQG4zYeIRWzbP1aZ72Vqs=";
+ sha256 = "sha256-zPpINi++3Ct0PCwlwlfhceh/ploMkclw+MgeI9dULdc=";
};
nativeBuildInputs = [ pkg-config autoconf unzip ];
diff --git a/pkgs/development/compilers/openjdk/18.nix b/pkgs/development/compilers/openjdk/18.nix
index 37b51a1ee4ce0..4726e145d152b 100644
--- a/pkgs/development/compilers/openjdk/18.nix
+++ b/pkgs/development/compilers/openjdk/18.nix
@@ -4,7 +4,7 @@
, libXi, libXinerama, libXcursor, libXrandr, fontconfig, openjdk18-bootstrap
, setJavaClassPath
, headless ? false
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
diff --git a/pkgs/development/compilers/openjdk/19.nix b/pkgs/development/compilers/openjdk/19.nix
index 717bfedcb6354..c79c3d34bd44f 100644
--- a/pkgs/development/compilers/openjdk/19.nix
+++ b/pkgs/development/compilers/openjdk/19.nix
@@ -7,15 +7,15 @@
# TODO(@sternenseemann): gtk3 fails to evaluate in pkgsCross.ghcjs.buildPackages
# which should be fixable, this is a no-rebuild workaround for GHC.
, headless ? stdenv.targetPlatform.isGhcjs
-, enableJavaFX ? openjfx.meta.available, openjfx
+, enableJavaFX ? false, openjfx
, enableGnome2 ? true, gtk3, gnome_vfs, glib, GConf
}:
let
version = {
feature = "19";
- interim = ".0.1";
- build = "10";
+ interim = ".0.2";
+ build = "7";
};
openjdk = stdenv.mkDerivation {
@@ -26,7 +26,7 @@ let
owner = "openjdk";
repo = "jdk${version.feature}u";
rev = "jdk-${version.feature}${version.interim}+${version.build}";
- hash = "sha256-IS6ABnVdW1qJ4gu4YSgMVFXBTNdtWFdbNNz+kMaiyk8=";
+ hash = "sha256-pBEHmBtIgG4Czou4C/zpBBYZEDImvXiLoA5CjOzpeyI=";
};
nativeBuildInputs = [ pkg-config autoconf unzip ensureNewerSourcesForZipFilesHook ];
@@ -57,8 +57,8 @@ let
# Patch borrowed from Alpine to fix build errors with musl libc and recent gcc.
# This is applied anywhere to prevent patchrot.
(fetchpatch {
- url = "https://git.alpinelinux.org/aports/plain/testing/openjdk19/FixNullPtrCast.patch?id=b93d1fc37fcf106144958d957bb97c7db67bd41f";
- hash = "sha256-cnpeYcVoRYjuDgrl2x27frv6KUAnu1+1MVPehPZy/Cg=";
+ url = "https://git.alpinelinux.org/aports/plain/testing/openjdk19/FixNullPtrCast.patch?id=93dc07f97ff716b647c5f57c6224901ea06da560";
+ hash = "sha256-H4X3Yip5bCpXMH7MSu9BgXIOYRVUBMZPZW8EvZSWI5k=";
})
] ++ lib.optionals (!headless && enableGnome2) [
./swing-use-gtk-jdk13.patch
diff --git a/pkgs/development/compilers/openjdk/8.nix b/pkgs/development/compilers/openjdk/8.nix
index c65a9fcc66b68..e78e45b878efa 100644
--- a/pkgs/development/compilers/openjdk/8.nix
+++ b/pkgs/development/compilers/openjdk/8.nix
@@ -20,7 +20,7 @@ let
powerpc64le-linux = "ppc64le";
}.${stdenv.system} or (throw "Unsupported platform ${stdenv.system}");
- update = "352";
+ update = "362";
build = "ga";
openjdk8 = stdenv.mkDerivation rec {
@@ -31,7 +31,7 @@ let
owner = "openjdk";
repo = "jdk8u";
rev = "jdk${version}";
- sha256 = "sha256-xDiiALDjStD9IPhbBr997rm/v2Q/WdS10cILBCmdJIQ=";
+ sha256 = "sha256-C5dQwfIIpIrLeO3JWERyFCQHUSgG8gARuc3qXAeLkJ4=";
};
outputs = [ "out" "jre" ];
diff --git a/pkgs/development/compilers/openjdk/openjfx/11.nix b/pkgs/development/compilers/openjdk/openjfx/11.nix
index 164677c3b8dcd..276767fa37a82 100644
--- a/pkgs/development/compilers/openjdk/openjfx/11.nix
+++ b/pkgs/development/compilers/openjdk/openjfx/11.nix
@@ -1,26 +1,19 @@
{ stdenv, lib, fetchFromGitHub, writeText, gradle_7, pkg-config, perl, cmake
-, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib, ffmpeg_4-headless, python3, ruby, icu68
-, openjdk11-bootstrap }:
+, gperf, gtk3, libXtst, libXxf86vm, glib, alsa-lib, ffmpeg_4-headless, python3, ruby, icu68
+, openjdk11-bootstrap
+, withMedia ? true
+, withWebKit ? false
+}:
let
major = "11";
- update = ".0.17";
+ update = ".0.18";
build = "1";
repover = "${major}${update}+${build}";
gradle_ = (gradle_7.override {
java = openjdk11-bootstrap;
});
- NIX_CFLAGS_COMPILE = [
- # avoids errors about deprecation of GTypeDebugFlags, GTimeVal, etc.
- "-DGLIB_DISABLE_DEPRECATION_WARNINGS"
- # glib-2.62 deprecations
- # -fcommon: gstreamer workaround for -fno-common toolchains:
- # ld: gsttypefindelement.o:(.bss._gst_disable_registry_cache+0x0): multiple definition of
- # `_gst_disable_registry_cache'; gst.o:(.bss._gst_disable_registry_cache+0x0): first defined here
- "-fcommon"
- ];
-
makePackage = args: stdenv.mkDerivation ({
version = "${major}${update}-${build}";
@@ -28,10 +21,10 @@ let
owner = "openjdk";
repo = "jfx${major}u";
rev = repover;
- sha256 = "sha256-uKb6k+tIFdwy1BYiHWeGmKNz82X4CZjFlGYqLDpSFY0=";
+ sha256 = "sha256-46DjIzcBHkmp5vnhYnLu78CG72bIBRM4A6mgk2OLOko=";
};
- buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless icu68 ];
+ buildInputs = [ gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless icu68 ];
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
dontUseCmakeConfigure = true;
@@ -81,8 +74,8 @@ in makePackage {
pname = "openjfx-modular-sdk";
gradleProperties = ''
- COMPILE_MEDIA = true
- COMPILE_WEBKIT = false
+ COMPILE_MEDIA = ${lib.boolToString withMedia}
+ COMPILE_WEBKIT = ${lib.boolToString withWebKit}
'';
preBuild = ''
diff --git a/pkgs/development/compilers/openjdk/openjfx/15.nix b/pkgs/development/compilers/openjdk/openjfx/15.nix
index 788baabde848f..6e853efedcbba 100644
--- a/pkgs/development/compilers/openjdk/openjfx/15.nix
+++ b/pkgs/development/compilers/openjdk/openjfx/15.nix
@@ -1,6 +1,9 @@
{ stdenv, lib, fetchFromGitHub, writeText, openjdk11_headless, gradle_6
-, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib
-, ffmpeg_4-headless, python3, ruby }:
+, pkg-config, perl, cmake, gperf, gtk3, libXtst, libXxf86vm, glib, alsa-lib
+, ffmpeg_4-headless, python3, ruby
+, withMedia ? true
+, withWebKit ? false
+}:
let
major = "15";
@@ -21,7 +24,7 @@ let
sha256 = "019glq8rhn6amy3n5jc17vi2wpf1pxpmmywvyz1ga8n09w7xscq1";
};
- buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless ];
+ buildInputs = [ gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless ];
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
dontUseCmakeConfigure = true;
@@ -76,8 +79,8 @@ in makePackage {
pname = "openjfx-modular-sdk";
gradleProperties = ''
- COMPILE_MEDIA = true
- COMPILE_WEBKIT = false
+ COMPILE_MEDIA = ${lib.boolToString withMedia}
+ COMPILE_WEBKIT = ${lib.boolToString withWebKit}
'';
preBuild = ''
diff --git a/pkgs/development/compilers/openjdk/openjfx/17.nix b/pkgs/development/compilers/openjdk/openjfx/17.nix
index 8d4d47df32e7f..5c1d057a21880 100644
--- a/pkgs/development/compilers/openjdk/openjfx/17.nix
+++ b/pkgs/development/compilers/openjdk/openjfx/17.nix
@@ -1,11 +1,14 @@
{ stdenv, lib, fetchFromGitHub, writeText, openjdk17_headless, gradle_7
-, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst, libXxf86vm, glib, alsa-lib
-, ffmpeg_4-headless, python3, ruby, icu68 }:
+, pkg-config, perl, cmake, gperf, gtk3, libXtst, libXxf86vm, glib, alsa-lib
+, ffmpeg_4-headless, python3, ruby, icu68
+, withMedia ? true
+, withWebKit ? false
+}:
let
major = "17";
- update = ".0.5";
- build = "+1";
+ update = ".0.6";
+ build = "+3";
repover = "${major}${update}${build}";
gradle_ = (gradle_7.override {
java = openjdk17_headless;
@@ -18,10 +21,10 @@ let
owner = "openjdk";
repo = "jfx${major}u";
rev = repover;
- sha256 = "sha256-jzLOlWuhkUS0/4+nXtjd1/IYbAHHnJrusFRTh7aPt8U=";
+ sha256 = "sha256-9VfXk2EfMebMyVKPohPRP2QXRFf8XemUtfY0JtBCHyw=";
};
- buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless icu68 ];
+ buildInputs = [ gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4-headless icu68 ];
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
dontUseCmakeConfigure = true;
@@ -66,8 +69,8 @@ in makePackage {
pname = "openjfx-modular-sdk";
gradleProperties = ''
- COMPILE_MEDIA = true
- COMPILE_WEBKIT = false
+ COMPILE_MEDIA = ${lib.boolToString withMedia}
+ COMPILE_WEBKIT = ${lib.boolToString withWebKit}
'';
preBuild = ''
diff --git a/pkgs/development/compilers/openjdk/openjfx/19.nix b/pkgs/development/compilers/openjdk/openjfx/19.nix
index 96103734eb0a5..e0c23e4734b17 100644
--- a/pkgs/development/compilers/openjdk/openjfx/19.nix
+++ b/pkgs/development/compilers/openjdk/openjfx/19.nix
@@ -1,11 +1,14 @@
{ stdenv, lib, fetchFromGitHub, fetchpatch, writeText, openjdk17_headless
-, openjdk19_headless, gradle_7, pkg-config, perl, cmake, gperf, gtk2, gtk3, libXtst
-, libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, icu68 }:
+, openjdk19_headless, gradle_7, pkg-config, perl, cmake, gperf, gtk3, libXtst
+, libXxf86vm, glib, alsa-lib, ffmpeg_4, python3, ruby, icu68
+, withMedia ? true
+, withWebKit ? false
+}:
let
major = "19";
- update = "";
- build = "+11";
+ update = ".0.2.1";
+ build = "+1";
repover = "${major}${update}${build}";
gradle_ = (gradle_7.override {
# note: gradle does not yet support running on 19
@@ -19,7 +22,7 @@ let
owner = "openjdk";
repo = "jfx";
rev = repover;
- hash = "sha256-UXTaXtJ8py83V7IQK9wACIEWDAMRUaYNgH9e/Aeyuzc=";
+ hash = "sha256-A08GhCGpzWlUG1+f6mcjvkJmMNaOReacQKPEmNpUvLs=";
};
patches = [
@@ -35,7 +38,7 @@ let
})
];
- buildInputs = [ gtk2 gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4 icu68 ];
+ buildInputs = [ gtk3 libXtst libXxf86vm glib alsa-lib ffmpeg_4 icu68 ];
nativeBuildInputs = [ gradle_ perl pkg-config cmake gperf python3 ruby ];
dontUseCmakeConfigure = true;
@@ -83,8 +86,8 @@ in makePackage {
pname = "openjfx-modular-sdk";
gradleProperties = ''
- COMPILE_MEDIA = true
- COMPILE_WEBKIT = false
+ COMPILE_MEDIA = ${lib.boolToString withMedia}
+ COMPILE_WEBKIT = ${lib.boolToString withWebKit}
'';
preBuild = ''
diff --git a/pkgs/development/compilers/rust/1_66.nix b/pkgs/development/compilers/rust/1_66.nix
deleted file mode 100644
index 6aee98bdba063..0000000000000
--- a/pkgs/development/compilers/rust/1_66.nix
+++ /dev/null
@@ -1,64 +0,0 @@
-# New rust versions should first go to staging.
-# Things to check after updating:
-# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
-# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
-# This testing can be also done by other volunteers as part of the pull
-# request review, in case platforms cannot be covered.
-# 2. The LLVM version used for building should match with rust upstream.
-# Check the version number in the src/llvm-project git submodule in:
-# https://github.com/rust-lang/rust/blob//.gitmodules
-# 3. Firefox and Thunderbird should still build on x86_64-linux.
-
-{ stdenv, lib
-, buildPackages
-, newScope, callPackage
-, CoreFoundation, Security, SystemConfiguration
-, pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost
-, makeRustPlatform
-, llvmPackages_11
-, llvmPackages_14, llvm_14
-} @ args:
-
-import ./default.nix {
- rustcVersion = "1.66.1";
- rustcSha256 = "sha256-WzyTOpTHIYdwXU7ikxmLq/3QlEL1k3+9aF2zqB9JWbo=";
-
- llvmSharedForBuild = pkgsBuildBuild.llvmPackages_14.libllvm.override { enableSharedLibraries = true; };
- llvmSharedForHost = pkgsBuildHost.llvmPackages_14.libllvm.override { enableSharedLibraries = true; };
- llvmSharedForTarget = pkgsBuildTarget.llvmPackages_14.libllvm.override { enableSharedLibraries = true; };
-
- llvmBootstrapForDarwin = llvmPackages_11;
-
- # For use at runtime
- llvmShared = llvm_14.override { enableSharedLibraries = true; };
-
- # Expose llvmPackages used for rustc from rustc via passthru for LTO in Firefox
- llvmPackages = llvmPackages_14;
-
- # Note: the version MUST be one version prior to the version we're
- # building
- bootstrapVersion = "1.65.0";
-
- # fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
- bootstrapHashes = {
- i686-unknown-linux-gnu = "b29869f8e2c7029150a929b2c4e26843f363846ad99253a25be6abcfa8e84f46";
- x86_64-unknown-linux-gnu = "8f754fdd5af783fe9020978c64e414cb45f3ad0a6f44d045219bbf2210ca3cb9";
- x86_64-unknown-linux-musl = "716984def5509a844c2dde1c7be42bfadeb179f751d5c1a30c9c7198c8c089cd";
- arm-unknown-linux-gnueabihf = "e27f835c16bfcb66ad022a17d5c4602899e021e483a432ca4cc2cb4ecd39e938";
- armv7-unknown-linux-gnueabihf = "5376d467a29b32cacb771e0c76dc280bd623852709e7ffd92caabab076d5475f";
- aarch64-unknown-linux-gnu = "f406136010e6a1cdce3fb6573506f00d23858af49dd20a46723c3fa5257b7796";
- aarch64-unknown-linux-musl = "4b701dc3cbac04ebf0e336cff2f4ce5fc1a1984c183226863c9ed911eb00b07e";
- x86_64-apple-darwin = "139087a3937799415fd829e5a88162a69a32c23725a44457f9c96b98e4d64a7c";
- aarch64-apple-darwin = "7ddc335bd10fc32d3039ef36248a5d0c4865db2437c8aad20a2428a6cf41df09";
- powerpc64le-unknown-linux-gnu = "3f1d0d5bb13213348dc65e373f8c412fc0a12ee55abc1c864f7e0300932fc687";
- riscv64gc-unknown-linux-gnu = "aac7067348d218faa452b4bdc735778a51570a310ad645313ec767b5d7c88492";
- mips64el-unknown-linux-gnuabi64 = "d91ed3857c5256720da890f6533684b684e880bf9006dc4e4f4181213a5c4a09";
- };
-
- selectRustPackage = pkgs: pkgs.rust_1_66;
-
- rustcPatches = [
- ];
-}
-
-(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_11" "llvmPackages_14" "llvm_14"])
diff --git a/pkgs/development/compilers/rust/1_67.nix b/pkgs/development/compilers/rust/1_67.nix
new file mode 100644
index 0000000000000..2d22432798a41
--- /dev/null
+++ b/pkgs/development/compilers/rust/1_67.nix
@@ -0,0 +1,73 @@
+# New rust versions should first go to staging.
+# Things to check after updating:
+# 1. Rustc should produce rust binaries on x86_64-linux, aarch64-linux and x86_64-darwin:
+# i.e. nix-shell -p fd or @GrahamcOfBorg build fd on github
+# This testing can be also done by other volunteers as part of the pull
+# request review, in case platforms cannot be covered.
+# 2. The LLVM version used for building should match with rust upstream.
+# Check the version number in the src/llvm-project git submodule in:
+# https://github.com/rust-lang/rust/blob//.gitmodules
+# 3. Firefox and Thunderbird should still build on x86_64-linux.
+
+{ stdenv, lib
+, buildPackages
+, newScope, callPackage
+, CoreFoundation, Security, SystemConfiguration
+, pkgsBuildTarget, pkgsBuildBuild, pkgsBuildHost
+, makeRustPlatform
+, llvmPackages_11
+, llvmPackages_15, llvm_15
+, fetchpatch
+} @ args:
+
+import ./default.nix {
+ rustcVersion = "1.67.1";
+ rustcSha256 = "sha256-Rkg9Pl3oWjvUb456OuGDdJY5EGfb5xOiXTzwUbPZ/24=";
+
+ llvmSharedForBuild = pkgsBuildBuild.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
+ llvmSharedForHost = pkgsBuildHost.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
+ llvmSharedForTarget = pkgsBuildTarget.llvmPackages_15.libllvm.override { enableSharedLibraries = true; };
+
+ llvmBootstrapForDarwin = llvmPackages_11;
+
+ # For use at runtime
+ llvmShared = llvm_15.override { enableSharedLibraries = true; };
+
+ # Expose llvmPackages used for rustc from rustc via passthru for LTO in Firefox
+ llvmPackages = llvmPackages_15;
+
+ # Note: the version MUST be one version prior to the version we're
+ # building
+ bootstrapVersion = "1.66.1";
+
+ # fetch hashes by running `print-hashes.sh ${bootstrapVersion}`
+ bootstrapHashes = {
+ i686-unknown-linux-gnu = "823128f64e902ee8aff61488c552c983e17ccca10c3f46dd93fde924d5100eb3";
+ x86_64-unknown-linux-gnu = "7ecf79e9ea23d05917b0172f9f81fb1e47011d261a719998f8d5620a1e835023";
+ x86_64-unknown-linux-musl = "70b660148238b8a137c6f165b0bc7bdcb50204c22a314bed6174ecd672f02e57";
+ arm-unknown-linux-gnueabihf = "12c93efe71f3334ef6e718786f6a60b9566f097d23a7f1e8f38ed9add209126f";
+ armv7-unknown-linux-gnueabihf = "f43c8cd3fd7d1c1e08bd6317220b2ec9b25891f464604f80bb17985b09bbf62a";
+ aarch64-unknown-linux-gnu = "84b8a79803c1b91386460fe6a7d04c54002344452ff8e5c5631d5fa275ed0c9c";
+ aarch64-unknown-linux-musl = "b2665da33efd328cff192a67ad026ea84f9deab8d1971892f4bbc22647606163";
+ x86_64-apple-darwin = "0fcf341db2579aa6eb61a3430cd1dbc79b042dfe89686b93cc887d818d086c30";
+ aarch64-apple-darwin = "03469fcaa0d8c505e6db03c18ded73cfbb6a2ce159292f8cf06c042bfc9f7cf9";
+ powerpc64le-unknown-linux-gnu = "ccf915a0137bb83a9d9b133a234ae53cc099f2ba26e3cb09d209b47bbee2ade7";
+ riscv64gc-unknown-linux-gnu = "525cb05edaf3ed0560753b413c72dd1b06492df28bf3c427a66fda683fdca3fc";
+ mips64el-unknown-linux-gnuabi64 = "3c241cc80410fe389e8b04beda62c42496c225fe8776db9d55a498c53244f7a6";
+ };
+
+ selectRustPackage = pkgs: pkgs.rust_1_67;
+
+ rustcPatches = [
+ # Fixes ICE.
+ # https://github.com/rust-lang/rust/pull/107688
+ (fetchpatch {
+ name = "re-erased-regions-are-local.patch";
+ url = "https://github.com/rust-lang/rust/commit/9d110847ab7f6aef56a8cd20cb6cea4fbcc51cd9.patch";
+ excludes = [ "*tests/*" ];
+ hash = "sha256-EZH5K1BEOOfi97xZr1xEHFP4jjvJ1+xqtRMvxBoL8pU=";
+ })
+ ];
+}
+
+(builtins.removeAttrs args [ "fetchpatch" "pkgsBuildHost" "llvmPackages_11" "llvmPackages_15" "llvm_15"])
diff --git a/pkgs/development/compilers/rust/cargo.nix b/pkgs/development/compilers/rust/cargo.nix
index d04eebe7eadf4..481b4195891ca 100644
--- a/pkgs/development/compilers/rust/cargo.nix
+++ b/pkgs/development/compilers/rust/cargo.nix
@@ -1,6 +1,6 @@
{ lib, stdenv, pkgsHostHost
, file, curl, pkg-config, python3, openssl, cmake, zlib
-, installShellFiles, makeWrapper, cacert, rustPlatform, rustc
+, installShellFiles, makeWrapper, rustPlatform, rustc
, CoreFoundation, Security
, auditable ? false # TODO: change to true when this is the default
}:
@@ -28,7 +28,7 @@ rustPlatform.buildRustPackage {
(lib.getDev pkgsHostHost.curl)
zlib
];
- buildInputs = [ cacert file curl python3 openssl zlib ]
+ buildInputs = [ file curl python3 openssl zlib ]
++ lib.optionals stdenv.isDarwin [ CoreFoundation Security ];
# cargo uses git-rs which is made for a version of libgit2 from recent master that
@@ -39,14 +39,7 @@ rustPlatform.buildRustPackage {
RUSTC_BOOTSTRAP = 1;
postInstall = ''
- # NOTE: We override the `http.cainfo` option usually specified in
- # `.cargo/config`. This is an issue when users want to specify
- # their own certificate chain as environment variables take
- # precedence
- wrapProgram "$out/bin/cargo" \
- --suffix PATH : "${rustc}/bin" \
- --set CARGO_HTTP_CAINFO "${cacert}/etc/ssl/certs/ca-bundle.crt" \
- --set SSL_CERT_FILE "${cacert}/etc/ssl/certs/ca-bundle.crt"
+ wrapProgram "$out/bin/cargo" --suffix PATH : "${rustc}/bin"
installManPage src/tools/cargo/src/etc/man/*
diff --git a/pkgs/development/compilers/rust/rustc.nix b/pkgs/development/compilers/rust/rustc.nix
index 426f137788389..60f07a64299ab 100644
--- a/pkgs/development/compilers/rust/rustc.nix
+++ b/pkgs/development/compilers/rust/rustc.nix
@@ -165,7 +165,6 @@ in stdenv.mkDerivation rec {
];
buildInputs = [ openssl ]
- # TODO: remove libiconv once 1.66 is used to bootstrap
++ optionals stdenv.isDarwin [ libiconv Security ]
++ optional (!withBundledLLVM) llvmShared;
diff --git a/pkgs/development/compilers/tinycc/default.nix b/pkgs/development/compilers/tinycc/default.nix
index 159b1827fc8fd..ed1d7fc57a64f 100644
--- a/pkgs/development/compilers/tinycc/default.nix
+++ b/pkgs/development/compilers/tinycc/default.nix
@@ -38,7 +38,6 @@ stdenv.mkDerivation rec {
"-L${variables.libdir}"
"-Wl,--rpath ${variables.libdir}"
"-ltcc"
- "-ldl"
];
variables = rec {
prefix = "${placeholder "out"}";
diff --git a/pkgs/development/compilers/urweb/default.nix b/pkgs/development/compilers/urweb/default.nix
index 67ebaa04699e3..a881b2f1badb1 100644
--- a/pkgs/development/compilers/urweb/default.nix
+++ b/pkgs/development/compilers/urweb/default.nix
@@ -33,6 +33,11 @@ stdenv.mkDerivation rec {
-L${sqlite.out}/lib";
'';
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=use-after-free"
+ ];
+
# Be sure to keep the statically linked libraries
dontDisableStatic = true;
diff --git a/pkgs/development/interpreters/gnu-apl/default.nix b/pkgs/development/interpreters/gnu-apl/default.nix
index 3bcada9aa8f04..e413914aa39cd 100644
--- a/pkgs/development/interpreters/gnu-apl/default.nix
+++ b/pkgs/development/interpreters/gnu-apl/default.nix
@@ -21,6 +21,10 @@ stdenv.mkDerivation rec {
"-Wno-error=maybe-uninitialized"
# Needed with GCC 11
"-Wno-error=misleading-indentation"
+ # Needed with GCC 12
+ "-Wno-error=nonnull"
+ "-Wno-error=stringop-overflow"
+ "-Wno-error=use-after-free"
]) ++ optional stdenv.cc.isClang "-Wno-error=null-dereference");
patchPhase = lib.optionalString stdenv.isDarwin ''
diff --git a/pkgs/development/interpreters/lua-5/hooks/default.nix b/pkgs/development/interpreters/lua-5/hooks/default.nix
index fc92c59bb910c..6c303f770decc 100644
--- a/pkgs/development/interpreters/lua-5/hooks/default.nix
+++ b/pkgs/development/interpreters/lua-5/hooks/default.nix
@@ -27,7 +27,7 @@ in {
luarocksCheckHook = callPackage ({ luarocks }:
makeSetupHook {
name = "luarocks-check-hook";
- deps = [ luarocks ];
+ propagatedBuildInputs = [ luarocks ];
} ./luarocks-check-hook.sh) {};
# luarocks installs data in a non-overridable location. Until a proper luarocks patch,
@@ -35,6 +35,6 @@ in {
luarocksMoveDataFolder = callPackage ({ }:
makeSetupHook {
name = "luarocks-move-rock";
- deps = [ ];
+ propagatedBuildInputs = [ ];
} ./luarocks-move-data.sh) {};
}
diff --git a/pkgs/development/interpreters/lua-5/wrap-lua.nix b/pkgs/development/interpreters/lua-5/wrap-lua.nix
index c9ef151bea3c3..43ececd1e794c 100644
--- a/pkgs/development/interpreters/lua-5/wrap-lua.nix
+++ b/pkgs/development/interpreters/lua-5/wrap-lua.nix
@@ -8,7 +8,7 @@
# imported as wrapLua in lua-packages.nix and passed to build-lua-derivation to be used as buildInput
makeSetupHook {
name = "wrap-lua-hook";
- deps = makeWrapper;
+ propagatedBuildInputs = [ makeWrapper ];
substitutions.executable = lua.interpreter;
substitutions.lua = lua;
substitutions.LuaPathSearchPaths = lib.escapeShellArgs lua.LuaPathSearchPaths;
diff --git a/pkgs/development/interpreters/octave/wrap-octave.nix b/pkgs/development/interpreters/octave/wrap-octave.nix
index 1e4616136a1b9..2317a479f0e20 100644
--- a/pkgs/development/interpreters/octave/wrap-octave.nix
+++ b/pkgs/development/interpreters/octave/wrap-octave.nix
@@ -10,7 +10,7 @@
# Each of the substitutions is available in the wrap.sh script as @thingSubstituted@
makeSetupHook {
name = "${octave.name}-pkgs-setup-hook";
- deps = makeWrapper;
+ propagatedBuildInputs = [ makeWrapper ];
substitutions.executable = octave.interpreter;
substitutions.octave = octave;
} ./wrap.sh
diff --git a/pkgs/development/interpreters/python/hooks/default.nix b/pkgs/development/interpreters/python/hooks/default.nix
index 08dc3ea61ab76..001e477b9185b 100644
--- a/pkgs/development/interpreters/python/hooks/default.nix
+++ b/pkgs/development/interpreters/python/hooks/default.nix
@@ -11,7 +11,7 @@ in {
condaInstallHook = callPackage ({ makePythonHook, gnutar, lbzip2 }:
makePythonHook {
name = "conda-install-hook";
- deps = [ gnutar lbzip2 ];
+ propagatedBuildInputs = [ gnutar lbzip2 ];
substitutions = {
inherit pythonSitePackages;
};
@@ -20,19 +20,19 @@ in {
condaUnpackHook = callPackage ({ makePythonHook }:
makePythonHook {
name = "conda-unpack-hook";
- deps = [];
+ propagatedBuildInputs = [];
} ./conda-unpack-hook.sh) {};
eggBuildHook = callPackage ({ makePythonHook }:
makePythonHook {
name = "egg-build-hook.sh";
- deps = [ ];
+ propagatedBuildInputs = [ ];
} ./egg-build-hook.sh) {};
eggInstallHook = callPackage ({ makePythonHook, setuptools }:
makePythonHook {
name = "egg-install-hook.sh";
- deps = [ setuptools ];
+ propagatedBuildInputs = [ setuptools ];
substitutions = {
inherit pythonInterpreter pythonSitePackages;
};
@@ -41,13 +41,13 @@ in {
eggUnpackHook = callPackage ({ makePythonHook, }:
makePythonHook {
name = "egg-unpack-hook.sh";
- deps = [ ];
+ propagatedBuildInputs = [ ];
} ./egg-unpack-hook.sh) {};
flitBuildHook = callPackage ({ makePythonHook, flit }:
makePythonHook {
name = "flit-build-hook";
- deps = [ flit ];
+ propagatedBuildInputs = [ flit ];
substitutions = {
inherit pythonInterpreter;
};
@@ -56,7 +56,7 @@ in {
pipBuildHook = callPackage ({ makePythonHook, pip, wheel }:
makePythonHook {
name = "pip-build-hook.sh";
- deps = [ pip wheel ];
+ propagatedBuildInputs = [ pip wheel ];
substitutions = {
inherit pythonInterpreter pythonSitePackages;
};
@@ -65,7 +65,7 @@ in {
pipInstallHook = callPackage ({ makePythonHook, pip }:
makePythonHook {
name = "pip-install-hook";
- deps = [ pip ];
+ propagatedBuildInputs = [ pip ];
substitutions = {
inherit pythonInterpreter pythonSitePackages;
};
@@ -74,7 +74,7 @@ in {
pytestCheckHook = callPackage ({ makePythonHook, pytest }:
makePythonHook {
name = "pytest-check-hook";
- deps = [ pytest ];
+ propagatedBuildInputs = [ pytest ];
substitutions = {
inherit pythonCheckInterpreter;
};
@@ -123,7 +123,7 @@ in {
pythonRelaxDepsHook = callPackage ({ makePythonHook, wheel }:
makePythonHook {
name = "python-relax-deps-hook";
- deps = [ wheel ];
+ propagatedBuildInputs = [ wheel ];
substitutions = {
inherit pythonInterpreter;
};
@@ -145,7 +145,7 @@ in {
setuptoolsBuildHook = callPackage ({ makePythonHook, setuptools, wheel }:
makePythonHook {
name = "setuptools-setup-hook";
- deps = [ setuptools wheel ];
+ propagatedBuildInputs = [ setuptools wheel ];
substitutions = {
inherit pythonInterpreter pythonSitePackages setuppy;
};
@@ -154,7 +154,7 @@ in {
setuptoolsCheckHook = callPackage ({ makePythonHook, setuptools }:
makePythonHook {
name = "setuptools-check-hook";
- deps = [ setuptools ];
+ propagatedBuildInputs = [ setuptools ];
substitutions = {
inherit pythonCheckInterpreter setuppy;
};
@@ -171,7 +171,7 @@ in {
venvShellHook = disabledIf (!isPy3k) (callPackage ({ makePythonHook, ensureNewerSourcesForZipFilesHook }:
makePythonHook {
name = "venv-shell-hook";
- deps = [ ensureNewerSourcesForZipFilesHook ];
+ propagatedBuildInputs = [ ensureNewerSourcesForZipFilesHook ];
substitutions = {
inherit pythonInterpreter;
};
@@ -180,7 +180,7 @@ in {
wheelUnpackHook = callPackage ({ makePythonHook, wheel }:
makePythonHook {
name = "wheel-unpack-hook.sh";
- deps = [ wheel ];
+ propagatedBuildInputs = [ wheel ];
} ./wheel-unpack-hook.sh) {};
wrapPython = callPackage ../wrap-python.nix {
@@ -190,6 +190,6 @@ in {
sphinxHook = callPackage ({ makePythonHook, sphinx, installShellFiles }:
makePythonHook {
name = "python${python.pythonVersion}-sphinx-hook";
- deps = [ sphinx installShellFiles ];
+ propagatedBuildInputs = [ sphinx installShellFiles ];
} ./sphinx-hook.sh) {};
}
diff --git a/pkgs/development/interpreters/python/python-packages-base.nix b/pkgs/development/interpreters/python/python-packages-base.nix
index d5b02223fd6c3..de38fb1363206 100644
--- a/pkgs/development/interpreters/python/python-packages-base.nix
+++ b/pkgs/development/interpreters/python/python-packages-base.nix
@@ -16,17 +16,22 @@ let
# This function introduces `overridePythonAttrs` and it overrides the call to `buildPythonPackage`.
makeOverridablePythonPackage = f: origArgs:
let
- ff = f origArgs;
- overrideWith = newArgs: origArgs // (if pkgs.lib.isFunction newArgs then newArgs origArgs else newArgs);
+ args = lib.fix (lib.extends
+ (_: previousAttrs: {
+ passthru = (previousAttrs.passthru or { }) // {
+ overridePythonAttrs = newArgs: makeOverridablePythonPackage f (overrideWith newArgs);
+ };
+ })
+ (_: origArgs));
+ result = f args;
+ overrideWith = newArgs: args // (if pkgs.lib.isFunction newArgs then newArgs args else newArgs);
in
- if builtins.isAttrs ff then (ff // {
+ if builtins.isAttrs result then result
+ else if builtins.isFunction result then {
overridePythonAttrs = newArgs: makeOverridablePythonPackage f (overrideWith newArgs);
- })
- else if builtins.isFunction ff then {
- overridePythonAttrs = newArgs: makeOverridablePythonPackage f (overrideWith newArgs);
- __functor = self: ff;
+ __functor = self: result;
}
- else ff;
+ else result;
buildPythonPackage = makeOverridablePythonPackage (lib.makeOverridable (callPackage ./mk-python-derivation.nix {
inherit namePrefix; # We want Python libraries to be named like e.g. "python3.6-${name}"
diff --git a/pkgs/development/interpreters/python/wrap-python.nix b/pkgs/development/interpreters/python/wrap-python.nix
index 83da013bfd2d9..c67a8e0885149 100644
--- a/pkgs/development/interpreters/python/wrap-python.nix
+++ b/pkgs/development/interpreters/python/wrap-python.nix
@@ -5,7 +5,7 @@
makePythonHook {
name = "wrap-python-hook";
- deps = makeWrapper;
+ propagatedBuildInputs = [ makeWrapper ];
substitutions.sitePackages = python.sitePackages;
substitutions.executable = python.interpreter;
substitutions.python = python.pythonForBuild;
diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix
index 57d1e6d84fe1e..28c508cae8ba7 100644
--- a/pkgs/development/interpreters/ruby/default.nix
+++ b/pkgs/development/interpreters/ruby/default.nix
@@ -190,14 +190,7 @@ let
# Allow to override compiler. This is important for cross compiling as
# we need to set a compiler that is different from the build one.
- awk -i inplace -F' = ' \
- ' # operate on the line starting with
- /^ CONFIG\["CC"\]/ {
- # replace the right hand side
- sub($2, "ENV[\"CC\"] || \"1\"")
- }; { print }' "$rbConfig"
- # test that the line isn't mangled in case upstream made the above unnecessary
- grep -qx ' CONFIG\["CC"\] = ENV\["CC"\] || "1"' "$rbConfig"
+ sed -i 's/CONFIG\["CC"\] = "\(.*\)"/CONFIG["CC"] = if ENV["CC"].nil? || ENV["CC"].empty? then "\1" else ENV["CC"] end/' "$rbConfig"
# Remove unnecessary external intermediate files created by gems
extMakefiles=$(find $out/${passthru.gemPath} -name Makefile)
@@ -235,6 +228,21 @@ let
$rbConfig $out/lib/libruby*
'';
+ installCheckPhase = ''
+ overriden_cc=$(CC=foo $out/bin/ruby -rrbconfig -e 'puts RbConfig::CONFIG["CC"]')
+ if [[ "$overriden_cc" != "foo" ]]; then
+ echo "CC cannot be overwritten: $overriden_cc != foo" >&2
+ false
+ fi
+
+ fallback_cc=$(unset CC; $out/bin/ruby -rrbconfig -e 'puts RbConfig::CONFIG["CC"]')
+ if [[ "$fallback_cc" != "$CC" ]]; then
+ echo "CC='$fallback_cc' should be '$CC' by default" >&2
+ false
+ fi
+ '';
+ doInstallCheck = true;
+
disallowedRequisites = op (!jitSupport) stdenv.cc.cc
++ op useBaseRuby baseRuby;
@@ -273,13 +281,13 @@ in {
mkRuby = generic;
ruby_2_7 = generic {
- version = rubyVersion "2" "7" "6" "";
- sha256 = "042xrdk7hsv4072bayz3f8ffqh61i8zlhvck10nfshllq063n877";
+ version = rubyVersion "2" "7" "7" "";
+ sha256 = "sha256-4QEn22kdf/NkAs/oj0GMjQJaPx7qkgRLFi3XLwuMe5A=";
};
ruby_3_0 = generic {
- version = rubyVersion "3" "0" "4" "";
- sha256 = "0avj4g3s2839b2y4m6pk8kid74r8nj7k0qm2rsdcwjzhg8h7rd3h";
+ version = rubyVersion "3" "0" "5" "";
+ sha256 = "sha256-mvxjgKAnpP4a4aPi7MtrSXucWsBjHBLKVvm3vrSEh3Y=";
};
ruby_3_1 = generic {
diff --git a/pkgs/development/interpreters/ruby/patchsets.nix b/pkgs/development/interpreters/ruby/patchsets.nix
index bdc4cf3690fee..2bf5bc7296c6a 100644
--- a/pkgs/development/interpreters/ruby/patchsets.nix
+++ b/pkgs/development/interpreters/ruby/patchsets.nix
@@ -1,17 +1,15 @@
{ patchSet, useRailsExpress, ops, patchLevel, fetchpatch }:
{
- "2.7.6" = ops useRailsExpress [
- "${patchSet}/patches/ruby/2.7/head/railsexpress/01-fix-with-openssl-dir-option.patch"
- "${patchSet}/patches/ruby/2.7/head/railsexpress/02-fix-broken-tests-caused-by-ad.patch"
- "${patchSet}/patches/ruby/2.7/head/railsexpress/03-improve-gc-stats.patch"
- "${patchSet}/patches/ruby/2.7/head/railsexpress/04-more-detailed-stacktrace.patch"
- "${patchSet}/patches/ruby/2.7/head/railsexpress/05-malloc-trim.patch"
+ "2.7.7" = ops useRailsExpress [
+ "${patchSet}/patches/ruby/2.7/head/railsexpress/01-fix-broken-tests-caused-by-ad.patch"
+ "${patchSet}/patches/ruby/2.7/head/railsexpress/02-improve-gc-stats.patch"
+ "${patchSet}/patches/ruby/2.7/head/railsexpress/03-more-detailed-stacktrace.patch"
+ "${patchSet}/patches/ruby/2.7/head/railsexpress/04-malloc-trim.patch"
];
- "3.0.4" = ops useRailsExpress [
- "${patchSet}/patches/ruby/3.0/head/railsexpress/01-fix-with-openssl-dir-option.patch"
- "${patchSet}/patches/ruby/3.0/head/railsexpress/02-improve-gc-stats.patch"
- "${patchSet}/patches/ruby/3.0/head/railsexpress/03-malloc-trim.patch"
+ "3.0.5" = ops useRailsExpress [
+ "${patchSet}/patches/ruby/3.0/head/railsexpress/01-improve-gc-stats.patch"
+ "${patchSet}/patches/ruby/3.0/head/railsexpress/02-malloc-trim.patch"
];
"3.1.2" = ops useRailsExpress [
"${patchSet}/patches/ruby/3.1/head/railsexpress/01-improve-gc-stats.patch"
diff --git a/pkgs/development/interpreters/ruby/rvm-patchsets.nix b/pkgs/development/interpreters/ruby/rvm-patchsets.nix
index 51c0a9a7dfb3d..fbbfd4c973027 100644
--- a/pkgs/development/interpreters/ruby/rvm-patchsets.nix
+++ b/pkgs/development/interpreters/ruby/rvm-patchsets.nix
@@ -3,6 +3,6 @@
fetchFromGitHub {
owner = "skaes";
repo = "rvm-patchsets";
- rev = "a6429bb1a7fb9b5798c22f43338739a6c192b42d";
- sha256 = "sha256-NpSa+uGQA1rfHNcLzPNTK65J+Wk9ZlzhHFePDA4uuo0=";
+ rev = "e6574c54a34fe6e4d45aa1433872a22ddfe14cf3";
+ hash = "sha256-x2KvhgRVJ4Nc5v1j4DggKO1u3otG8HVMxhq4yuUKnds=";
}
diff --git a/pkgs/development/interpreters/tcl/generic.nix b/pkgs/development/interpreters/tcl/generic.nix
index 6351a08c1c071..6ce6e35189bf2 100644
--- a/pkgs/development/interpreters/tcl/generic.nix
+++ b/pkgs/development/interpreters/tcl/generic.nix
@@ -53,7 +53,7 @@ let
libdir = "lib/${libPrefix}";
tclPackageHook = callPackage ({ buildPackages }: makeSetupHook {
name = "tcl-package-hook";
- deps = [ buildPackages.makeWrapper ];
+ propagatedBuildInputs = [ buildPackages.makeWrapper ];
} ./tcl-package-hook.sh) {};
};
};
diff --git a/pkgs/development/interpreters/tcl/tcl-package-hook.sh b/pkgs/development/interpreters/tcl/tcl-package-hook.sh
index 41603037931ff..8548ac66402f0 100644
--- a/pkgs/development/interpreters/tcl/tcl-package-hook.sh
+++ b/pkgs/development/interpreters/tcl/tcl-package-hook.sh
@@ -41,6 +41,8 @@ findInstalledTclPkgs() {
# Wrap any freshly-installed binaries and set up their TCLLIBPATH
wrapTclBins() {
+ if [ "$dontWrapTclBinaries" ]; then return; fi
+
if [[ -z "${TCLLIBPATH-}" ]]; then
echo "skipping automatic Tcl binary wrapping (nothing to do)"
return
diff --git a/pkgs/development/libraries/accountsservice/default.nix b/pkgs/development/libraries/accountsservice/default.nix
index 694aab16d1abd..584b328d47001 100644
--- a/pkgs/development/libraries/accountsservice/default.nix
+++ b/pkgs/development/libraries/accountsservice/default.nix
@@ -62,8 +62,8 @@ stdenv.mkDerivation rec {
];
buildInputs = [
- gobject-introspection
dbus
+ gettext
glib
polkit
systemd
diff --git a/pkgs/development/libraries/assimp/default.nix b/pkgs/development/libraries/assimp/default.nix
index 81d9e54de435d..ed0476fea642c 100644
--- a/pkgs/development/libraries/assimp/default.nix
+++ b/pkgs/development/libraries/assimp/default.nix
@@ -23,6 +23,11 @@ stdenv.mkDerivation rec {
cmakeFlags = [ "-DASSIMP_BUILD_ASSIMP_TOOLS=ON" ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ ];
+
meta = with lib; {
description = "A library to import various 3D model formats";
homepage = "https://www.assimp.org/";
diff --git a/pkgs/development/libraries/audio/roc-toolkit/default.nix b/pkgs/development/libraries/audio/roc-toolkit/default.nix
index f52800e2e70ce..287ce2a700846 100644
--- a/pkgs/development/libraries/audio/roc-toolkit/default.nix
+++ b/pkgs/development/libraries/audio/roc-toolkit/default.nix
@@ -21,6 +21,8 @@ stdenv.mkDerivation rec {
pname = "roc-toolkit";
version = "0.2.1";
+ outputs = [ "out" "dev" ];
+
src = fetchFromGitHub {
owner = "roc-streaming";
repo = "roc-toolkit";
diff --git a/pkgs/development/libraries/belle-sip/default.nix b/pkgs/development/libraries/belle-sip/default.nix
index 152572c6b16a5..a760685481226 100644
--- a/pkgs/development/libraries/belle-sip/default.nix
+++ b/pkgs/development/libraries/belle-sip/default.nix
@@ -29,11 +29,14 @@ stdenv.mkDerivation rec {
# Do not build static libraries
cmakeFlags = [ "-DENABLE_STATIC=NO" ];
- NIX_CFLAGS_COMPILE = toString [
+ NIX_CFLAGS_COMPILE = [
"-Wno-error=cast-function-type"
"-Wno-error=deprecated-declarations"
"-Wno-error=format-truncation"
"-Wno-error=stringop-overflow"
+ ] ++ lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12") [
+ # Needed with GCC 12 but problematic with some old GCCs and probably clang
+ "-Wno-error=use-after-free"
];
propagatedBuildInputs = [ libantlr3c mbedtls_2 bctoolbox belr ];
diff --git a/pkgs/development/libraries/boost/generic.nix b/pkgs/development/libraries/boost/generic.nix
index 4c6ba700457ff..4268af7ee0bb6 100644
--- a/pkgs/development/libraries/boost/generic.nix
+++ b/pkgs/development/libraries/boost/generic.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, icu, expat, zlib, bzip2, python ? null, fixDarwinDylibNames, libiconv, libxcrypt
+{ lib, stdenv, icu, expat, zlib, bzip2, zstd, xz, python ? null, fixDarwinDylibNames, libiconv, libxcrypt
, boost-build
, fetchpatch
, which
@@ -226,6 +226,8 @@ stdenv.mkDerivation {
nativeBuildInputs = [ which boost-build ]
++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames;
buildInputs = [ expat zlib bzip2 libiconv ]
+ ++ lib.optional (lib.versionAtLeast version "1.69") zstd
+ ++ lib.optional (lib.versionAtLeast version "1.65") xz
++ lib.optional enableIcu icu
++ lib.optionals enablePython [ libxcrypt python ]
++ lib.optional enableNumpy python.pkgs.numpy;
diff --git a/pkgs/development/libraries/boringssl/default.nix b/pkgs/development/libraries/boringssl/default.nix
index 61c2a27f3d857..955157d055a2f 100644
--- a/pkgs/development/libraries/boringssl/default.nix
+++ b/pkgs/development/libraries/boringssl/default.nix
@@ -30,6 +30,11 @@ buildGoModule {
export GOARCH=$(go env GOHOSTARCH)
'';
+ NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [
+ # Needed with GCC 12 but breaks on darwin (with clang)
+ "-Wno-error=stringop-overflow"
+ ];
+
buildPhase = ''
ninjaBuildPhase
'';
diff --git a/pkgs/development/libraries/bzrtp/default.nix b/pkgs/development/libraries/bzrtp/default.nix
index 4bccc0c5cf2fa..5791924ad14a9 100644
--- a/pkgs/development/libraries/bzrtp/default.nix
+++ b/pkgs/development/libraries/bzrtp/default.nix
@@ -25,6 +25,11 @@ stdenv.mkDerivation rec {
# Do not build static libraries
cmakeFlags = [ "-DENABLE_STATIC=NO" "-DCMAKE_C_FLAGS=-Wno-error=cast-function-type" ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=stringop-overflow"
+ ];
+
meta = with lib; {
description = "An opensource implementation of ZRTP keys exchange protocol. Part of the Linphone project.";
homepage = "https://gitlab.linphone.org/BC/public/bzrtp";
diff --git a/pkgs/development/libraries/clucene-core/2.x.nix b/pkgs/development/libraries/clucene-core/2.x.nix
index 861e9179e0948..d928b814e826f 100644
--- a/pkgs/development/libraries/clucene-core/2.x.nix
+++ b/pkgs/development/libraries/clucene-core/2.x.nix
@@ -30,11 +30,14 @@ stdenv.mkDerivation rec {
"-DLUCENE_STATIC_CONSTANT_SYNTAX_EXITCODE__TRYRUN_OUTPUT="
];
- patches = # From debian
- [ ./Fix-pkgconfig-file-by-adding-clucene-shared-library.patch
- ./Fixing_ZLIB_configuration_in_shared_CMakeLists.patch
- ./Install-contribs-lib.patch
- ] ++ lib.optionals stdenv.isDarwin [ ./fix-darwin.patch ];
+ patches = [
+ # From debian
+ ./Fix-pkgconfig-file-by-adding-clucene-shared-library.patch
+ ./Fixing_ZLIB_configuration_in_shared_CMakeLists.patch
+ ./Install-contribs-lib.patch
+ # From arch
+ ./fix-missing-include-time.patch
+ ] ++ lib.optionals stdenv.isDarwin [ ./fix-darwin.patch ];
# fails with "Unable to find executable:
# /build/clucene-core-2.3.3.4/build/bin/cl_test"
diff --git a/pkgs/development/libraries/clucene-core/fix-missing-include-time.patch b/pkgs/development/libraries/clucene-core/fix-missing-include-time.patch
new file mode 100644
index 0000000000000..0ac26f76929ac
--- /dev/null
+++ b/pkgs/development/libraries/clucene-core/fix-missing-include-time.patch
@@ -0,0 +1,49 @@
+From c1c2000c35ff39b09cb70fbdf66a107d3b17a674 Mon Sep 17 00:00:00 2001
+From: Stephan Bergmann
+Date: Wed, 12 Oct 2022 08:40:49 +0200
+Subject: [PATCH] Fix missing #include
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+At least on recent Fedora 37 beta, building now failed with
+
+> CLucene/document/DateTools.cpp:26:19: error: ‘gmtime’ was not declared in this scope
+> 26 | tm *ptm = gmtime(&secs);
+> | ^~~~~~
+
+etc.
+
+As it turns out, after 22f9d40320e3deeaa8d6aaa7a770077c20a21dae "git-svn-id:
+https://clucene.svn.sourceforge.net/svnroot/clucene/branches/lucene2_3_2@2672
+20ef185c-fe11-0410-a618-ba9304b01011" on 2008-06-26 had commented out
+_CL_TIME_WITH_SYS_TIME in clucene-config.h.cmake as "not actually used for
+anything", then cceccfb52917b5f4da447f1cf20c135952d41442 "Presenting DateTools
+and deprecating DateField. DateTools still requires some testing and its own
+unit testing" on 2008-06-29 had introduced this use of it (into then
+src/CLucene/document/DateTools.H). And apparently most build environments have
+silently been happy ever since when the dead leading check for
+_CL_TIME_WITH_SYS_TIME didn't include both and , but the
+following check for _CL_HAVE_SYS_TIME_H only included but not
+.
+---
+ src/shared/CLucene/clucene-config.h.cmake | 3 +--
+ 1 file changed, 1 insertion(+), 2 deletions(-)
+
+diff --git a/src/shared/CLucene/clucene-config.h.cmake b/src/shared/CLucene/clucene-config.h.cmake
+index bd8683a5..6fe0f92b 100644
+--- a/src/shared/CLucene/clucene-config.h.cmake
++++ b/src/shared/CLucene/clucene-config.h.cmake
+@@ -100,8 +100,7 @@ ${SYMBOL__T}
+ //#cmakedefine _CL_STAT_MACROS_BROKEN
+
+ /* Define to 1 if you can safely include both and . */
+-//not actually used for anything...
+-//#cmakedefine _CL_TIME_WITH_SYS_TIME 1
++#cmakedefine _CL_TIME_WITH_SYS_TIME 1
+
+ /* Define that we will be using -fvisibility=hidden, and
+ * make public classes visible using __attribute__ ((visibility("default")))
+--
+2.37.3
+
diff --git a/pkgs/development/libraries/cmocka/default.nix b/pkgs/development/libraries/cmocka/default.nix
index ed78f4f9ec84a..746b47841580b 100644
--- a/pkgs/development/libraries/cmocka/default.nix
+++ b/pkgs/development/libraries/cmocka/default.nix
@@ -20,38 +20,42 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
- meta = with lib; {
- description = "Lightweight library to simplify and generalize unit tests for C";
+ cmakeFlags = lib.optional doCheck "-DUNIT_TESTING=ON"
+ ++ lib.optional stdenv.hostPlatform.isStatic "-DBUILD_SHARED_LIBS=OFF";
- longDescription =
- ''There are a variety of C unit testing frameworks available however
- many of them are fairly complex and require the latest compiler
- technology. Some development requires the use of old compilers which
- makes it difficult to use some unit testing frameworks. In addition
- many unit testing frameworks assume the code being tested is an
- application or module that is targeted to the same platform that will
- ultimately execute the test. Because of this assumption many
- frameworks require the inclusion of standard C library headers in the
- code module being tested which may collide with the custom or
- incomplete implementation of the C library utilized by the code under
- test.
-
- Cmocka only requires a test application is linked with the standard C
- library which minimizes conflicts with standard C library headers.
- Also, CMocka tries to avoid the use of some of the newer features of
- C compilers.
-
- This results in CMocka being a relatively small library that can be
- used to test a variety of exotic code. If a developer wishes to
- simply test an application with the latest compiler then other unit
- testing frameworks may be preferable.
-
- This is the successor of Google's Cmockery.'';
+ doCheck = true;
+ meta = with lib; {
+ description = "Lightweight library to simplify and generalize unit tests for C";
+ longDescription = ''
+ There are a variety of C unit testing frameworks available however
+ many of them are fairly complex and require the latest compiler
+ technology. Some development requires the use of old compilers which
+ makes it difficult to use some unit testing frameworks. In addition
+ many unit testing frameworks assume the code being tested is an
+ application or module that is targeted to the same platform that will
+ ultimately execute the test. Because of this assumption many
+ frameworks require the inclusion of standard C library headers in the
+ code module being tested which may collide with the custom or
+ incomplete implementation of the C library utilized by the code under
+ test.
+
+ Cmocka only requires a test application is linked with the standard C
+ library which minimizes conflicts with standard C library headers.
+ Also, CMocka tries to avoid the use of some of the newer features of
+ C compilers.
+
+ This results in CMocka being a relatively small library that can be
+ used to test a variety of exotic code. If a developer wishes to
+ simply test an application with the latest compiler then other unit
+ testing frameworks may be preferable.
+
+ This is the successor of Google's Cmockery.
+ '';
homepage = "https://cmocka.org/";
-
license = licenses.asl20;
platforms = platforms.all;
maintainers = with maintainers; [ kragniz rasendubi ];
+ broken = stdenv.hostPlatform.isStatic; # See https://github.com/NixOS/nixpkgs/issues/213623
};
}
diff --git a/pkgs/development/libraries/cpp-ipfs-http-client/default.nix b/pkgs/development/libraries/cpp-ipfs-http-client/default.nix
index 44fcbe5463cb0..38acb5def4a3a 100644
--- a/pkgs/development/libraries/cpp-ipfs-http-client/default.nix
+++ b/pkgs/development/libraries/cpp-ipfs-http-client/default.nix
@@ -24,6 +24,8 @@ stdenv.mkDerivation {
NIX_CFLAGS_COMPILE = [
"-Wno-error=range-loop-construct"
+ # Needed with GCC 12
+ "-Wno-error=deprecated-declarations"
];
meta = with lib; {
diff --git a/pkgs/development/libraries/dbus-cplusplus/default.nix b/pkgs/development/libraries/dbus-cplusplus/default.nix
index 005f1ac0302cb..1e38ddf44e196 100644
--- a/pkgs/development/libraries/dbus-cplusplus/default.nix
+++ b/pkgs/development/libraries/dbus-cplusplus/default.nix
@@ -29,6 +29,12 @@ stdenv.mkDerivation rec {
+ "dbus-c++-threading.patch?id=7f371172f5c";
sha256 = "1h362anx3wyxm5lq0v8girmip1jmkdbijrmbrq7k5pp47zkhwwrq";
})
+ (fetchurl {
+ name = "template-operators.patch"; # since gcc12
+ url = "https://src.fedoraproject.org/cgit/rpms/dbus-c++.git/plain/"
+ + "dbus-c++-template-operators.patch?id=d3f0d8bb519c0af";
+ sha256 = "N25Y7jXDbr0qb7MfRr2yz3zRySppgGOe+oCfNQhRvVc=";
+ })
];
nativeBuildInputs = [ pkg-config ];
diff --git a/pkgs/development/libraries/ffmpeg-full/default.nix b/pkgs/development/libraries/ffmpeg-full/default.nix
deleted file mode 100644
index a8acf7a7ce61d..0000000000000
--- a/pkgs/development/libraries/ffmpeg-full/default.nix
+++ /dev/null
@@ -1,511 +0,0 @@
-{ lib, stdenv, buildPackages, ffmpeg, addOpenGLRunpath, pkg-config, perl, texinfo, yasm
-/*
- * Licensing options (yes some are listed twice, filters and such are not listed)
- */
-, gplLicensing ? true # GPL: fdkaac,openssl,frei0r,cdio,samba,utvideo,vidstab,x265,x265,xavs,avid,zvbi,x11grab
-, version3Licensing ? true # (L)GPL3: libvmaf,opencore-amrnb,opencore-amrwb,samba,vo-aacenc,vo-amrwbenc
-, nonfreeLicensing ? false # NONFREE: openssl,fdkaac,blackmagic-design-desktop-video
-/*
- * Build options
- */
-, smallBuild ? false # Optimize for size instead of speed
-, runtimeCpuDetectBuild ? true # Detect CPU capabilities at runtime (disable to compile natively)
-, grayBuild ? true # Full grayscale support
-, swscaleAlphaBuild ? true # Alpha channel support in swscale
-, hardcodedTablesBuild ? true # Hardcode decode tables instead of runtime generation
-, safeBitstreamReaderBuild ? true # Buffer boundary checking in bitreaders
-, multithreadBuild ? true # Multithreading via pthreads/win32 threads
-, networkBuild ? true # Network support
-, pixelutilsBuild ? true # Pixel utils in libavutil
-, enableLto ? false # build with link-time optimization
-/*
- * Program options
- */
-, ffmpegProgram ? true # Build ffmpeg executable
-, ffplayProgram ? true # Build ffplay executable
-, ffprobeProgram ? true # Build ffprobe executable
-, qtFaststartProgram ? true # Build qt-faststart executable
-/*
- * Library options
- */
-, avcodecLibrary ? true # Build avcodec library
-, avdeviceLibrary ? true # Build avdevice library
-, avfilterLibrary ? true # Build avfilter library
-, avformatLibrary ? true # Build avformat library
-, avutilLibrary ? true # Build avutil library
-, postprocLibrary ? true # Build postproc library
-, swresampleLibrary ? true # Build swresample library
-, swscaleLibrary ? true # Build swscale library
-/*
- * Documentation options
- */
-, htmlpagesDocumentation ? false # HTML documentation pages
-, manpagesDocumentation ? true # Man documentation pages
-, podpagesDocumentation ? false # POD documentation pages
-, txtpagesDocumentation ? false # Text documentation pages
-/*
- * External libraries options
- */
-, alsa-lib ? null # Alsa in/output support
-#, avisynth ? null # Support for reading AviSynth scripts
-, bzip2 ? null
-, clang ? null
-, celt ? null # CELT decoder
-#, crystalhd ? null # Broadcom CrystalHD hardware acceleration
-, cuda ? !stdenv.isDarwin && !stdenv.isAarch64 # Dynamically linked CUDA
-, cuda-llvm ? !stdenv.isDarwin && !stdenv.isAarch64 # LLVM-based CUDA compilation
-, dav1d ? null # AV1 decoder (focused on speed and correctness)
-#, decklinkExtlib ? false, blackmagic-design-desktop-video ? null # Blackmagic Design DeckLink I/O support
-, fdkaacExtlib ? false, fdk_aac ? null # Fraunhofer FDK AAC de/encoder
-#, flite ? null # Flite (voice synthesis) support
-, fontconfig ? null # Needed for drawtext filter
-, freetype ? null # Needed for drawtext filter
-, frei0r ? null # frei0r video filtering
-, fribidi ? null # Needed for drawtext filter
-, game-music-emu ? null # Game Music Emulator
-, gnutls ? null
-, gsm ? null # GSM de/encoder
-#, ilbc ? null # iLBC de/encoder
-, libjack2 ? null # Jack audio (only version 2 is supported in this build)
-, ladspaH ? null # LADSPA audio filtering
-, lame ? null # LAME MP3 encoder
-, libass ? null # (Advanced) SubStation Alpha subtitle rendering
-, libaom ? null # AV1 encoder
-, libbluray ? null # BluRay reading
-, libbs2b ? null # bs2b DSP library
-, libcaca ? null # Textual display (ASCII art)
-#, libcdio-paranoia ? null # Audio CD grabbing
-, libdc1394 ? null, libraw1394 ? null # IIDC-1394 grabbing (ieee 1394)
-, libdrm ? null # libdrm support
-, libiconv ? null
-#, libiec61883 ? null, libavc1394 ? null # iec61883 (also uses libraw1394)
-, libmfx ? null # Hardware acceleration vis libmfx
-, libmodplug ? null # ModPlug support
-, libmysofa ? null # HRTF support via SOFAlizer
-#, libnut ? null # NUT (de)muxer, native (de)muser exists
-, libogg ? null # Ogg container used by vorbis & theora
-, libopenmpt ? null # Tracked music files decoder
-, libopus ? null # Opus de/encoder
-, librsvg ? null # SVG protocol
-, libssh ? null # SFTP protocol
-, libtheora ? null # Theora encoder
-, libv4l ? null # Video 4 Linux support
-, libva ? null # Vaapi hardware acceleration
-, libvdpau ? null # Vdpau hardware acceleration
-, libvmaf ? null # Netflix's VMAF (Video Multi-Method Assessment Fusion)
-, libvorbis ? null # Vorbis de/encoding, native encoder exists
-, libvpx ? null # VP8 & VP9 de/encoding
-, libwebp ? null # WebP encoder
-, libX11 ? null # Xlib support
-, libxcb ? null # X11 grabbing using XCB
-, libxcbshmExtlib ? true # X11 grabbing shm communication
-, libxcbxfixesExtlib ? true # X11 grabbing mouse rendering
-, libxcbshapeExtlib ? true # X11 grabbing shape rendering
-, libXv ? null # Xlib support
-, libXext ? null # Xlib support
-, libxml2 ? null # libxml2 support, for IMF and DASH demuxers
-, xz ? null # xz-utils
-, nv-codec-headers ? null
-, nvdec ? !stdenv.isDarwin && !stdenv.isAarch64 # NVIDIA NVDEC support
-, nvenc ? !stdenv.isDarwin && !stdenv.isAarch64 # NVIDIA NVENC support
-, openal ? null # OpenAL 1.1 capture support
-, ocl-icd ? null # OpenCL ICD
-, opencl-headers ? null # OpenCL headers
-, opencore-amr ? null # AMR-NB de/encoder & AMR-WB decoder
-#, opencv ? null # Video filtering
-, openglExtlib ? false, libGL ? null, libGLU ? null # OpenGL rendering
-, openh264 ? null # H.264/AVC encoder
-, openjpeg ? null # JPEG 2000 de/encoder
-, opensslExtlib ? false, openssl ? null
-, libpulseaudio ? null # Pulseaudio input support
-, rav1e ? null # AV1 encoder (focused on speed and safety)
-, svt-av1 ? null # AV1 encoder/decoder (focused on speed and correctness)
-, rtmpdump ? null # RTMP[E] support
-#, libquvi ? null # Quvi input support
-, samba ? null # Samba protocol
-#, schroedinger ? null # Dirac de/encoder
-, SDL2 ? null
-#, shine ? null # Fixed-point MP3 encoder
-, soxr ? null # Resampling via soxr
-, speex ? null # Speex de/encoder
-, srt ? null # Secure Reliable Transport (SRT) protocol
-#, twolame ? null # MP2 encoder
-#, utvideo ? null # Ut Video de/encoder
-, vid-stab ? null # Video stabilization
-#, vo-aacenc ? null # AAC encoder
-, vo-amrwbenc ? null # AMR-WB encoder
-, x264 ? null # H.264/AVC encoder
-, x265 ? null # H.265/HEVC encoder
-, xavs ? null # AVS encoder
-, xvidcore ? null # Xvid encoder, native encoder exists
-, zeromq4 ? null # Message passing
-, zimg ? null
-, zlib ? null
-, vulkan-loader ? null
-, glslang ? null
-#, zvbi ? null # Teletext support
-/*
- * Developer options
- */
-, debugDeveloper ? false
-, optimizationsDeveloper ? true
-, extraWarningsDeveloper ? false
-, strippingDeveloper ? false
-/*
- * Darwin frameworks
- */
-, Cocoa, CoreAudio, CoreServices, AVFoundation, MediaToolbox
-, VideoDecodeAcceleration, VideoToolbox
-}:
-
-/* Maintainer notes:
- *
- * Version bumps:
- * It should always be safe to bump patch releases (e.g. 2.1.x, x being a patch release)
- * If adding a new branch, note any configure flags that were added, changed, or deprecated/removed
- * and make the necessary changes.
- *
- * Packages with errors:
- * flite ilbc schroedinger
- * opencv - circular dependency issue
- *
- * Not packaged:
- * aacplus avisynth cdio-paranoia crystalhd libavc1394 libiec61883
- * libnut libquvi nvenc oss shine twolame
- * utvideo vo-aacenc vo-amrwbenc xvmc zvbi blackmagic-design-desktop-video
- *
- * Need fixes to support Darwin:
- * gsm libjack2 libmodplug libmfx(intel-media-sdk) nvenc pulseaudio samba
- * vid-stab
- *
- * Need fixes to support AArch64:
- * libmfx(intel-media-sdk) nvenc
- *
- * Not supported:
- * stagefright-h264(android only)
- *
- * Known issues:
- * flite: configure fails to find library
- * Tried modifying ffmpeg's configure script and flite to use pkg-config
- * Cross-compiling will disable features not present on host OS
- * (e.g. dxva2 support [DirectX] will not be enabled unless natively compiled on Cygwin)
- *
- */
-
-let
- inherit (stdenv) isCygwin isDarwin isFreeBSD isLinux isAarch64;
- inherit (lib) optional optionals optionalString enableFeature;
-in
-
-/*
- * Licensing dependencies
- */
-assert version3Licensing -> gplLicensing;
-assert nonfreeLicensing -> gplLicensing && version3Licensing;
-/*
- * Build dependencies
- */
-assert networkBuild -> gnutls != null || opensslExtlib;
-assert pixelutilsBuild -> avutilLibrary;
-/*
- * Platform dependencies
- */
-assert isDarwin -> !nvenc;
-/*
- * Program dependencies
- */
-assert ffmpegProgram -> avcodecLibrary
- && avfilterLibrary
- && avformatLibrary
- && swresampleLibrary;
-assert ffplayProgram -> avcodecLibrary
- && avformatLibrary
- && swscaleLibrary
- && swresampleLibrary
- && SDL2 != null;
-assert ffprobeProgram -> avcodecLibrary && avformatLibrary;
-/*
- * Library dependencies
- */
-assert avcodecLibrary -> avutilLibrary; # configure flag since 0.6
-assert avdeviceLibrary -> avformatLibrary
- && avcodecLibrary
- && avutilLibrary; # configure flag since 0.6
-assert avformatLibrary -> avcodecLibrary && avutilLibrary; # configure flag since 0.6
-assert postprocLibrary -> avutilLibrary;
-assert swresampleLibrary -> soxr != null;
-assert swscaleLibrary -> avutilLibrary;
-/*
- * External libraries
- */
-#assert decklinkExtlib -> blackmagic-design-desktop-video != null
-# && !isCygwin && multithreadBuild # POSIX threads required
-# && nonfreeLicensing;
-assert fdkaacExtlib -> fdk_aac != null && nonfreeLicensing;
-assert gnutls != null -> !opensslExtlib;
-assert libxcbshmExtlib -> libxcb != null;
-assert libxcbxfixesExtlib -> libxcb != null;
-assert libxcbshapeExtlib -> libxcb != null;
-assert openglExtlib -> libGL != null && libGLU != null;
-assert opensslExtlib -> gnutls == null && openssl != null && nonfreeLicensing;
-
-stdenv.mkDerivation rec {
- pname = "ffmpeg-full";
- inherit (ffmpeg) src version patches;
-
- prePatch = ''
- patchShebangs .
- '' + lib.optionalString stdenv.isDarwin ''
- sed -i 's/#ifndef __MAC_10_11/#if 1/' ./libavcodec/audiotoolboxdec.c
- '' + lib.optionalString (frei0r != null) ''
- substituteInPlace libavfilter/vf_frei0r.c \
- --replace /usr/local/lib/frei0r-1 ${frei0r}/lib/frei0r-1
- substituteInPlace doc/filters.texi \
- --replace /usr/local/lib/frei0r-1 ${frei0r}/lib/frei0r-1
- '';
-
- configurePlatforms = [];
- configureFlags = [
- "--target_os=${if stdenv.hostPlatform.isMinGW then "mingw64" else stdenv.hostPlatform.parsed.kernel.name}" #mingw32 and mingw64 doesn't have a difference here, it is internally rewritten as mingw32
- "--arch=${stdenv.hostPlatform.parsed.cpu.name}"
- /*
- * Licensing flags
- */
- (enableFeature gplLicensing "gpl")
- (enableFeature version3Licensing "version3")
- (enableFeature nonfreeLicensing "nonfree")
- /*
- * Build flags
- */
- # On some ARM platforms --enable-thumb
- "--enable-shared"
- (enableFeature true "pic")
- (enableFeature smallBuild "small")
- (enableFeature runtimeCpuDetectBuild "runtime-cpudetect")
- (enableFeature enableLto "lto")
- (enableFeature grayBuild "gray")
- (enableFeature swscaleAlphaBuild "swscale-alpha")
- (enableFeature hardcodedTablesBuild "hardcoded-tables")
- (enableFeature safeBitstreamReaderBuild "safe-bitstream-reader")
- (if multithreadBuild then (
- if stdenv.hostPlatform.isWindows then
- "--disable-pthreads --enable-w32threads"
- else # Use POSIX threads by default
- "--enable-pthreads --disable-w32threads")
- else
- "--disable-pthreads --disable-w32threads")
- "--disable-os2threads" # We don't support OS/2
- (enableFeature networkBuild "network")
- (enableFeature pixelutilsBuild "pixelutils")
- /*
- * Program flags
- */
- (enableFeature ffmpegProgram "ffmpeg")
- (enableFeature ffplayProgram "ffplay")
- (enableFeature ffprobeProgram "ffprobe")
- /*
- * Library flags
- */
- (enableFeature avcodecLibrary "avcodec")
- (enableFeature avdeviceLibrary "avdevice")
- (enableFeature avfilterLibrary "avfilter")
- (enableFeature avformatLibrary "avformat")
- (enableFeature avutilLibrary "avutil")
- (enableFeature (postprocLibrary && gplLicensing) "postproc")
- (enableFeature swresampleLibrary "swresample")
- (enableFeature swscaleLibrary "swscale")
- /*
- * Documentation flags
- */
- (enableFeature (htmlpagesDocumentation
- || manpagesDocumentation
- || podpagesDocumentation
- || txtpagesDocumentation) "doc")
- (enableFeature htmlpagesDocumentation "htmlpages")
- (enableFeature manpagesDocumentation "manpages")
- (enableFeature podpagesDocumentation "podpages")
- (enableFeature txtpagesDocumentation "txtpages")
- /*
- * External libraries
- */
- #(enableFeature avisynth "avisynth")
- (enableFeature (bzip2 != null) "bzlib")
- (enableFeature (celt != null) "libcelt")
- (enableFeature cuda "cuda")
- (enableFeature (clang != null && cuda-llvm) "cuda-llvm")
- #(enableFeature crystalhd "crystalhd")
- (enableFeature (dav1d != null) "libdav1d")
- #(enableFeature decklinkExtlib "decklink")
- (enableFeature (fdkaacExtlib && gplLicensing) "libfdk-aac")
- #(enableFeature (flite != null) "libflite")
- "--disable-libflite" # Force disable until a solution is found
- (enableFeature (fontconfig != null) "fontconfig")
- (enableFeature (freetype != null) "libfreetype")
- (enableFeature (frei0r != null && gplLicensing) "frei0r")
- (enableFeature (fribidi != null) "libfribidi")
- (enableFeature (game-music-emu != null) "libgme")
- (enableFeature (gnutls != null) "gnutls")
- (enableFeature (gsm != null) "libgsm")
- #(enableFeature (ilbc != null) "libilbc")
- (enableFeature (ladspaH !=null) "ladspa")
- (enableFeature (lame != null) "libmp3lame")
- (enableFeature (libaom != null) "libaom")
- (enableFeature (libass != null) "libass")
- #(enableFeature (libavc1394 != null) null null)
- (enableFeature (libbluray != null) "libbluray")
- (enableFeature (libbs2b != null) "libbs2b")
- #(enableFeature (libcaca != null) "libcaca")
- #(enableFeature (cdio-paranoia != null && gplLicensing) "libcdio")
- (enableFeature (if isLinux then libdc1394 != null && libraw1394 != null else false) "libdc1394")
- (enableFeature ((isLinux || isFreeBSD) && libdrm != null) "libdrm")
- (enableFeature (libiconv != null) "iconv")
- (enableFeature (libjack2 != null) "libjack")
- #(enableFeature (if isLinux then libiec61883 != null && libavc1394 != null && libraw1394 != null else false) "libiec61883")
- (enableFeature (if isLinux && !isAarch64 then libmfx != null else false) "libmfx")
- (enableFeature (libmodplug != null) "libmodplug")
- (enableFeature (libmysofa != null) "libmysofa")
- #(enableFeature (libnut != null) "libnut")
- (enableFeature (libopenmpt != null) "libopenmpt")
- (enableFeature (libopus != null) "libopus")
- (enableFeature (librsvg != null) "librsvg")
- (enableFeature (srt != null) "libsrt")
- (enableFeature (libssh != null) "libssh")
- (enableFeature (libtheora != null) "libtheora")
- (enableFeature (if isLinux then libv4l != null else false) "libv4l2")
- (enableFeature ((isLinux || isFreeBSD) && libva != null) "vaapi")
- (enableFeature (libvdpau != null) "vdpau")
- (enableFeature (libvorbis != null) "libvorbis")
- (enableFeature (!isAarch64 && libvmaf != null && version3Licensing) "libvmaf")
- (enableFeature (libvpx != null) "libvpx")
- (enableFeature (libwebp != null) "libwebp")
- (enableFeature (libX11 != null && libXv != null && libXext != null) "xlib")
- (enableFeature (libxcb != null) "libxcb")
- (enableFeature libxcbshmExtlib "libxcb-shm")
- (enableFeature libxcbxfixesExtlib "libxcb-xfixes")
- (enableFeature libxcbshapeExtlib "libxcb-shape")
- (enableFeature (libxml2 != null) "libxml2")
- (enableFeature (xz != null) "lzma")
- (enableFeature nvdec "cuvid")
- (enableFeature nvdec "nvdec")
- (enableFeature nvenc "nvenc")
- (enableFeature (openal != null) "openal")
- (enableFeature (ocl-icd != null && opencl-headers != null) "opencl")
- (enableFeature (opencore-amr != null && version3Licensing) "libopencore-amrnb")
- #(enableFeature (opencv != null) "libopencv")
- (enableFeature openglExtlib "opengl")
- (enableFeature (openh264 != null) "libopenh264")
- (enableFeature (openjpeg != null) "libopenjpeg")
- (enableFeature (opensslExtlib && gplLicensing) "openssl")
- (enableFeature (libpulseaudio != null) "libpulse")
- #(enableFeature quvi "libquvi")
- (enableFeature (rav1e != null) "librav1e")
- (enableFeature (svt-av1 != null) "libsvtav1")
- (enableFeature (rtmpdump != null) "librtmp")
- #(enableFeature (schroedinger != null) "libschroedinger")
- (enableFeature (SDL2 != null) "sdl2")
- (enableFeature (soxr != null) "libsoxr")
- (enableFeature (speex != null) "libspeex")
- #(enableFeature (twolame != null) "libtwolame")
- #(enableFeature (utvideo != null && gplLicensing) "libutvideo")
- (enableFeature (vid-stab != null && gplLicensing) "libvidstab") # Actual min. version 2.0
- #(enableFeature (vo-aacenc != null && version3Licensing) "libvo-aacenc")
- (enableFeature (vo-amrwbenc != null && version3Licensing) "libvo-amrwbenc")
- (enableFeature (x264 != null && gplLicensing) "libx264")
- (enableFeature (x265 != null && gplLicensing) "libx265")
- (enableFeature (xavs != null && gplLicensing) "libxavs")
- (enableFeature (xvidcore != null && gplLicensing) "libxvid")
- (enableFeature (zeromq4 != null) "libzmq")
- (enableFeature (zimg != null) "libzimg")
- (enableFeature (zlib != null) "zlib")
- (enableFeature (isLinux && vulkan-loader != null) "vulkan")
- (enableFeature (isLinux && vulkan-loader != null && glslang != null) "libglslang")
- (enableFeature (samba != null && gplLicensing && version3Licensing) "libsmbclient")
- #(enableFeature (zvbi != null && gplLicensing) "libzvbi")
- /*
- * Developer flags
- */
- (enableFeature debugDeveloper "debug")
- (enableFeature optimizationsDeveloper "optimizations")
- (enableFeature extraWarningsDeveloper "extra-warnings")
- (enableFeature strippingDeveloper "stripping")
- ] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
- "--cross-prefix=${stdenv.cc.targetPrefix}"
- "--enable-cross-compile"
- "--host-cc=${buildPackages.stdenv.cc}/bin/cc"
- ] ++ optionals stdenv.cc.isClang [
- "--cc=clang"
- "--cxx=clang++"
- ];
-
- nativeBuildInputs = [ addOpenGLRunpath perl pkg-config texinfo yasm ];
-
- buildInputs = [
- bzip2 celt dav1d fontconfig freetype frei0r fribidi game-music-emu gnutls gsm
- libjack2 ladspaH lame libaom libass libbluray libbs2b libcaca libdc1394 libmodplug libmysofa
- libogg libopenmpt libopus librsvg libssh libtheora libvdpau libvorbis libvpx libwebp libX11
- libxcb libXv libXext libxml2 xz openal ocl-icd opencl-headers openjpeg libpulseaudio rav1e svt-av1 rtmpdump opencore-amr
- samba SDL2 soxr speex srt vid-stab vo-amrwbenc x264 x265 xavs xvidcore
- zeromq4 zimg zlib openh264
- ] ++ optionals openglExtlib [ libGL libGLU ]
- ++ optionals nonfreeLicensing [ fdk_aac openssl ]
- ++ optional ((isLinux || isFreeBSD) && libva != null) libva
- ++ optional ((isLinux || isFreeBSD) && libdrm != null) libdrm
- ++ optional (!isAarch64 && libvmaf != null && version3Licensing) libvmaf
- ++ optionals isLinux [ alsa-lib libraw1394 libv4l vulkan-loader glslang ]
- ++ optional (isLinux && !isAarch64 && libmfx != null) libmfx
- ++ optional (nvdec || nvenc) nv-codec-headers
- ++ optional cuda-llvm clang
- ++ optionals stdenv.isDarwin [ Cocoa CoreServices CoreAudio AVFoundation
- MediaToolbox VideoDecodeAcceleration VideoToolbox
- libiconv ];
-
- buildFlags = [ "all" ]
- ++ optional qtFaststartProgram "tools/qt-faststart"; # Build qt-faststart executable
-
- doCheck = true;
- checkPhase = let
- ldLibraryPathEnv = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
- in ''
- ${ldLibraryPathEnv}="libavcodec:libavdevice:libavfilter:libavformat:libavutil:libpostproc:libswresample:libswscale:''${${ldLibraryPathEnv}}" \
- make check -j$NIX_BUILD_CORES
- '';
-
- # Hacky framework patching technique borrowed from the phantomjs2 package
- postInstall = optionalString qtFaststartProgram ''
- cp -a tools/qt-faststart $out/bin/
- '';
-
- postFixup = optionalString stdenv.isLinux ''
- # Set RUNPATH so that libnvcuvid and libcuda in /run/opengl-driver(-32)/lib can be found.
- # See the explanation in addOpenGLRunpath.
- addOpenGLRunpath $out/lib/libavcodec.so
- addOpenGLRunpath $out/lib/libavutil.so
- '';
-
- enableParallelBuilding = true;
-
- meta = with lib; {
- description = "A complete, cross-platform solution to record, convert and stream audio and video";
- homepage = "https://www.ffmpeg.org/";
- changelog = "https://github.com/FFmpeg/FFmpeg/blob/n${version}/Changelog";
- longDescription = ''
- FFmpeg is the leading multimedia framework, able to decode, encode, transcode,
- mux, demux, stream, filter and play pretty much anything that humans and machines
- have created. It supports the most obscure ancient formats up to the cutting edge.
- No matter if they were designed by some standards committee, the community or
- a corporation.
- '';
- license = (
- if nonfreeLicensing then
- licenses.unfreeRedistributable
- else if version3Licensing then
- licenses.gpl3
- else if gplLicensing then
- licenses.gpl2Plus
- else
- licenses.lgpl21Plus
- );
- platforms = platforms.all;
- maintainers = with maintainers; [ codyopel ];
- };
-}
diff --git a/pkgs/development/libraries/ffmpeg/4.nix b/pkgs/development/libraries/ffmpeg/4.nix
index ac88df930768a..7882c19da8f3f 100644
--- a/pkgs/development/libraries/ffmpeg/4.nix
+++ b/pkgs/development/libraries/ffmpeg/4.nix
@@ -1,8 +1,4 @@
-{ callPackage, ... }@args:
-
-callPackage ./generic.nix (rec {
+import ./generic.nix rec {
version = "4.4.3";
- branch = version;
- sha256 = "sha256-M7jC281TD+HbVxBBU0Vgm0yiJ70NoeOpMy27DxH9Jzo=";
-
-} // args)
+ sha256 = "sha256-zZDzG1hD+0AHqElzeGR6OVm+H5wqtdktloSPmEUzT/c=";
+}
diff --git a/pkgs/development/libraries/ffmpeg/5.nix b/pkgs/development/libraries/ffmpeg/5.nix
index b19c22a55f3a8..7ff9b1fc2e4cb 100644
--- a/pkgs/development/libraries/ffmpeg/5.nix
+++ b/pkgs/development/libraries/ffmpeg/5.nix
@@ -1,7 +1,4 @@
-{ callPackage, ... }@args:
-
-callPackage ./generic.nix (rec {
+import ./generic.nix rec {
version = "5.1.2";
- branch = version;
- sha256 = "sha256-OaC8yNmFSfFsVwYkZ4JGpqxzbAZs69tAn5UC6RWyLys=";
-} // args)
+ sha256 = "sha256-4jcfwIE0/DgP7ibwkrSm/aPiHIMFn34JNcXkCMx4ceI=";
+}
diff --git a/pkgs/development/libraries/ffmpeg/generic.nix b/pkgs/development/libraries/ffmpeg/generic.nix
index 01995e9237b15..dceada0f7f8f4 100644
--- a/pkgs/development/libraries/ffmpeg/generic.nix
+++ b/pkgs/development/libraries/ffmpeg/generic.nix
@@ -1,205 +1,660 @@
-{ lib, stdenv, buildPackages, fetchurl, pkg-config, addOpenGLRunpath, perl, texinfo, yasm
-, alsa-lib, bzip2, fontconfig, freetype, gnutls, libiconv, lame, libass, libogg
-, libssh, libtheora, libva, libdrm, libvorbis, xz, soxr
-, x264, x265, xvidcore, zimg, zlib, libopus, speex, nv-codec-headers, dav1d
-, vpxSupport ? !stdenv.isAarch32, libvpx
-, srtSupport ? true, srt
-, vaapiSupport ? ((stdenv.isLinux || stdenv.isFreeBSD) && !stdenv.isAarch32)
-, openglSupport ? false, libGLU, libGL
-, libmfxSupport ? false, intel-media-sdk
-, libaomSupport ? false, libaom
-# Build options
-, runtimeCpuDetectBuild ? true # Detect CPU capabilities at runtime
-, multithreadBuild ? true # Multithreading via pthreads/win32 threads
-, sdlSupport ? !stdenv.isAarch32, SDL2
-, vdpauSupport ? !stdenv.isAarch32, libvdpau
-# Developer options
-, debugDeveloper ? false
-, optimizationsDeveloper ? true
-, extraWarningsDeveloper ? false
-, Cocoa, CoreMedia, VideoToolbox
-# Inherit generics
-, branch, sha256, version, patches ? [], knownVulnerabilities ? []
-, doCheck ? true
-, pulseaudioSupport ? stdenv.isLinux
+{ version, sha256, extraPatches ? [], knownVulnerabilities ? [] }:
+
+{ lib, stdenv, buildPackages, removeReferencesTo, addOpenGLRunpath, pkg-config, perl, texinfo, yasm
+
+, ffmpegVariant ? "small" # Decides which dependencies are enabled by default
+
+ # Build with headless deps; excludes dependencies that are only necessary for
+ # GUI applications. To be used for purposes that don't generally need such
+ # components and i.e. only depend on libav
+, withHeadlessDeps ? ffmpegVariant == "headless" || withSmallDeps
+
+ # Dependencies a user might customarily expect from a regular ffmpeg build.
+ # /All/ packages that depend on ffmpeg and some of its feaures should depend
+ # on the small variant. Small means the minimal set of features that satisfies
+ # all dependants in Nixpkgs
+, withSmallDeps ? ffmpegVariant == "small" || withFullDeps
+
+ # Everything enabled; only guarded behind platform exclusivity or brokeness.
+ # If you need to depend on ffmpeg-full because ffmpeg is missing some feature
+ # your package needs, you should enable that feature in regular ffmpeg
+ # instead.
+, withFullDeps ? ffmpegVariant == "full"
+
+, fetchgit
+, fetchpatch
+
+ # Feature flags
+, withAlsa ? withHeadlessDeps && stdenv.isLinux # Alsa in/output supporT
+, withAom ? withFullDeps # AV1 reference encoder
+, withAss ? withHeadlessDeps && stdenv.hostPlatform == stdenv.buildPlatform # (Advanced) SubStation Alpha subtitle rendering
+, withBluray ? withFullDeps # BluRay reading
+, withBs2b ? withFullDeps # bs2b DSP library
+, withBzlib ? withHeadlessDeps
+, withCaca ? withFullDeps # Textual display (ASCII art)
+, withCelt ? withFullDeps # CELT decoder
+, withCrystalhd ? withFullDeps
+, withCuda ? withFullDeps && (with stdenv; (!isDarwin && !isAarch64))
+, withCudaLLVM ? withFullDeps
+, withDav1d ? withHeadlessDeps # AV1 decoder (focused on speed and correctness)
+, withDc1394 ? withFullDeps && !stdenv.isDarwin # IIDC-1394 grabbing (ieee 1394)
+, withDrm ? withHeadlessDeps && (with stdenv; isLinux || isFreeBSD) # libdrm support
+, withFdkAac ? withFullDeps && withUnfree # Fraunhofer FDK AAC de/encoder
+, withFontconfig ? withHeadlessDeps # Needed for drawtext filter
+, withFreetype ? withHeadlessDeps # Needed for drawtext filter
+, withFrei0r ? withFullDeps # frei0r video filtering
+, withFribidi ? withFullDeps # Needed for drawtext filter
+, withGlslang ? withFullDeps && !stdenv.isDarwin
+, withGme ? withFullDeps # Game Music Emulator
+, withGnutls ? withHeadlessDeps
+, withGsm ? withFullDeps # GSM de/encoder
+, withIconv ? withHeadlessDeps
+, withIlbc ? withFullDeps
+, withJack ? withFullDeps && !stdenv.isDarwin # Jack audio
+, withLadspa ? withFullDeps # LADSPA audio filtering
+, withLzma ? withHeadlessDeps # xz-utils
+, withMfx ? withFullDeps && (with stdenv.targetPlatform; isLinux && !isAarch) # Hardware acceleration via intel-media-sdk/libmfx
+, withModplug ? withFullDeps && !stdenv.isDarwin # ModPlug support
+, withMp3lame ? withHeadlessDeps # LAME MP3 encoder
+, withMysofa ? withFullDeps # HRTF support via SOFAlizer
+, withNvdec ? withHeadlessDeps && !stdenv.isDarwin && stdenv.hostPlatform == stdenv.buildPlatform
+, withNvenc ? withHeadlessDeps && !stdenv.isDarwin && stdenv.hostPlatform == stdenv.buildPlatform
+, withOgg ? withHeadlessDeps # Ogg container used by vorbis & theora
+, withOpenal ? withFullDeps # OpenAL 1.1 capture support
+, withOpencl ? withFullDeps
+, withOpencoreAmrnb ? withFullDeps # AMR-NB de/encoder & AMR-WB decoder
+, withOpengl ? false # OpenGL rendering
+, withOpenh264 ? withFullDeps # H.264/AVC encoder
+, withOpenjpeg ? withFullDeps # JPEG 2000 de/encoder
+, withOpenmpt ? withFullDeps # Tracked music files decoder
+, withOpus ? withHeadlessDeps # Opus de/encoder
+, withPulse ? withSmallDeps && !stdenv.isDarwin # Pulseaudio input support
+, withRav1e ? withFullDeps # AV1 encoder (focused on speed and safety)
+, withRtmp ? false # RTMP[E] support
+, withSamba ? withFullDeps && !stdenv.isDarwin # Samba protocol
+, withSdl2 ? withSmallDeps
+, withSoxr ? withHeadlessDeps # Resampling via soxr
+, withSpeex ? withHeadlessDeps # Speex de/encoder
+, withSrt ? withHeadlessDeps # Secure Reliable Transport (SRT) protocol
+, withSsh ? withHeadlessDeps # SFTP protocol
+, withSvg ? withFullDeps # SVG protocol
+, withSvtav1 ? withFullDeps && !stdenv.isAarch64 # AV1 encoder/decoder (focused on speed and correctness)
+, withTheora ? withHeadlessDeps # Theora encoder
+, withV4l2 ? withFullDeps && !stdenv.isDarwin # Video 4 Linux support
+, withV4l2M2m ? withV4l2
+, withVaapi ? withHeadlessDeps && (with stdenv; isLinux || isFreeBSD) # Vaapi hardware acceleration
+, withVdpau ? withSmallDeps # Vdpau hardware acceleration
+, withVidStab ? withFullDeps # Video stabilization
+, withVmaf ? withFullDeps && withGPLv3 && !stdenv.isAarch64 # Netflix's VMAF (Video Multi-Method Assessment Fusion)
+, withVoAmrwbenc ? withFullDeps # AMR-WB encoder
+, withVorbis ? withHeadlessDeps # Vorbis de/encoding, native encoder exists
+, withVpx ? withHeadlessDeps && stdenv.buildPlatform == stdenv.hostPlatform # VP8 & VP9 de/encoding
+, withVulkan ? withFullDeps && !stdenv.isDarwin
+, withWebp ? withFullDeps # WebP encoder
+, withX264 ? withHeadlessDeps # H.264/AVC encoder
+, withX265 ? withHeadlessDeps # H.265/HEVC encoder
+, withXavs ? withFullDeps # AVS encoder
+, withXcb ? withXcbShm || withXcbxfixes || withXcbShape # X11 grabbing using XCB
+, withXcbShape ? withFullDeps # X11 grabbing shape rendering
+, withXcbShm ? withFullDeps # X11 grabbing shm communication
+, withXcbxfixes ? withFullDeps # X11 grabbing mouse rendering
+, withXlib ? withFullDeps # Xlib support
+, withXml2 ? withFullDeps # libxml2 support, for IMF and DASH demuxers
+, withXvid ? withHeadlessDeps # Xvid encoder, native encoder exists
+, withZimg ? withHeadlessDeps
+, withZlib ? withHeadlessDeps
+, withZmq ? withFullDeps # Message passing
+
+/*
+ * Licensing options (yes some are listed twice, filters and such are not listed)
+ */
+, withGPL ? true
+, withGPLv3 ? true
+, withUnfree ? false
+
+/*
+ * Build options
+ */
+, withSmallBuild ? false # Optimize for size instead of speed
+, withRuntimeCPUDetection ? true # Detect CPU capabilities at runtime (disable to compile natively)
+, withGrayscale ? withFullDeps # Full grayscale support
+, withSwscaleAlpha ? buildSwscale # Alpha channel support in swscale. You probably want this when buildSwscale.
+, withHardcodedTables ? withHeadlessDeps # Hardcode decode tables instead of runtime generation
+, withSafeBitstreamReader ? withHeadlessDeps # Buffer boundary checking in bitreaders
+, withMultithread ? true # Multithreading via pthreads/win32 threads
+, withNetwork ? withHeadlessDeps # Network support
+, withPixelutils ? withHeadlessDeps # Pixel utils in libavutil
+, withLTO ? false # build with link-time optimization
+/*
+ * Program options
+ */
+, buildFfmpeg ? withHeadlessDeps # Build ffmpeg executable
+, buildFfplay ? withFullDeps # Build ffplay executable
+, buildFfprobe ? withHeadlessDeps # Build ffprobe executable
+, buildQtFaststart ? withFullDeps # Build qt-faststart executable
+, withBin ? buildFfmpeg || buildFfplay || buildFfprobe || buildQtFaststart
+/*
+ * Library options
+ */
+, buildAvcodec ? withHeadlessDeps # Build avcodec library
+, buildAvdevice ? withHeadlessDeps # Build avdevice library
+, buildAvfilter ? withHeadlessDeps # Build avfilter library
+, buildAvformat ? withHeadlessDeps # Build avformat library
+# Deprecated but depended upon by some packages.
+# https://github.com/NixOS/nixpkgs/pull/211834#issuecomment-1417435991)
+, buildAvresample ? withHeadlessDeps && lib.versionOlder version "5" # Build avresample library
+, buildAvutil ? withHeadlessDeps # Build avutil library
+, buildPostproc ? withHeadlessDeps # Build postproc library
+, buildSwresample ? withHeadlessDeps # Build swresample library
+, buildSwscale ? withHeadlessDeps # Build swscale library
+, withLib ? buildAvcodec
+ || buildAvdevice
+ || buildAvfilter
+ || buildAvformat
+ || buildAvutil
+ || buildPostproc
+ || buildSwresample
+ || buildSwscale
+/*
+ * Documentation options
+ */
+, withDocumentation ? withHtmlDoc || withManPages || withPodDoc || withTxtDoc
+, withHtmlDoc ? withHeadlessDeps # HTML documentation pages
+, withManPages ? withHeadlessDeps # Man documentation pages
+, withPodDoc ? withHeadlessDeps # POD documentation pages
+, withTxtDoc ? withHeadlessDeps # Text documentation pages
+# Whether a "doc" output will be produced. Note that withManPages does not produce
+# a "doc" output because its files go to "man".
+, withDoc ? withDocumentation && (withHtmlDoc || withPodDoc || withTxtDoc)
+
+/*
+ * Developer options
+ */
+, withDebug ? false
+, withOptimisations ? true
+, withExtraWarnings ? false
+, withStripping ? false
+
+/*
+ * External libraries options
+ */
+, alsa-lib
+, bzip2
+, clang
+, celt
+, dav1d
+, fdk_aac
+, fontconfig
+, freetype
+, frei0r
+, fribidi
+, game-music-emu
+, gnutls
+, gsm
+, libjack2
+, ladspaH
+, lame
+, libass
+, libaom
+, libbluray
+, libbs2b
+, libcaca
+, libdc1394
+, libraw1394
+, libdrm
+, libiconv
+, intel-media-sdk
+, libmodplug
+, libmysofa
+, libogg
+, libopenmpt
+, libopus
+, librsvg
+, libssh
+, libtheora
+, libv4l
+, libva
+, libva-minimal
+, libvdpau
+, libvmaf
+, libvorbis
+, libvpx
+, libwebp
+, libX11
+, libxcb
+, libXv
+, libXext
+, libxml2
+, xz
+, nv-codec-headers
+, openal
+, ocl-icd # OpenCL ICD
+, opencl-headers # OpenCL headers
+, opencore-amr
+, libGL
+, libGLU
+, openh264
+, openjpeg
, libpulseaudio
-, ...
+, rav1e
+, svt-av1
+, rtmpdump
+, samba
+, SDL2
+, soxr
+, speex
+, srt
+, vid-stab
+, vo-amrwbenc
+, x264
+, x265
+, xavs
+, xvidcore
+, zeromq4
+, zimg
+, zlib
+, vulkan-loader
+, glslang
+/*
+ * Darwin frameworks
+ */
+, AVFoundation
+, Cocoa
+, CoreAudio
+, CoreMedia
+, CoreServices
+, MediaToolbox
+, VideoDecodeAcceleration
+, VideoToolbox
}:
/* Maintainer notes:
*
- * THIS IS A MINIMAL BUILD OF FFMPEG, do not include dependencies unless
- * a build that depends on ffmpeg requires them to be compiled into ffmpeg,
- * see `ffmpeg-full' for an ffmpeg build with all features included.
- *
- * Need fixes to support Darwin:
- * pulseaudio
+ * Version bumps:
+ * It should always be safe to bump patch releases (e.g. 2.1.x, x being a patch release)
+ * If adding a new branch, note any configure flags that were added, changed, or deprecated/removed
+ * and make the necessary changes.
*
* Known issues:
- * ALL - Cross-compiling will disable features not present on host OS
- * (e.g. dxva2 support [DirectX] will not be enabled unless natively
- * compiled on Cygwin)
+ * Cross-compiling will disable features not present on host OS
+ * (e.g. dxva2 support [DirectX] will not be enabled unless natively compiled on Cygwin)
*
*/
let
- inherit (lib) optional optionals optionalString enableFeature filter;
+ inherit (stdenv) isCygwin isDarwin isFreeBSD isLinux isAarch64;
+ inherit (lib) optional optionals optionalString enableFeature;
+in
- reqMin = requiredVersion: (builtins.compareVersions requiredVersion branch != 1);
- ifMinVer = minVer: flag: if reqMin minVer then flag else null;
+assert lib.elem ffmpegVariant [ "headless" "small" "full" ];
- ifVerOlder = maxVer: flag: if (lib.versionOlder branch maxVer) then flag else null;
-in
+/*
+ * Licensing dependencies
+ */
+assert withGPLv3 -> withGPL;
+assert withUnfree -> withGPL && withGPLv3;
+/*
+ * Build dependencies
+ */
+assert withPixelutils -> buildAvutil;
+/*
+ * Program dependencies
+ */
+assert buildFfmpeg -> buildAvcodec
+ && buildAvfilter
+ && buildAvformat
+ && (buildSwresample || buildAvresample);
+assert buildFfplay -> buildAvcodec
+ && buildAvformat
+ && buildSwscale
+ && (buildSwresample || buildAvresample);
+assert buildFfprobe -> buildAvcodec && buildAvformat;
+/*
+ * Library dependencies
+ */
+assert buildAvcodec -> buildAvutil; # configure flag since 0.6
+assert buildAvdevice -> buildAvformat
+ && buildAvcodec
+ && buildAvutil; # configure flag since 0.6
+assert buildAvformat -> buildAvcodec && buildAvutil; # configure flag since 0.6
+assert buildPostproc -> buildAvutil;
+assert buildSwscale -> buildAvutil;
stdenv.mkDerivation rec {
- pname = "ffmpeg";
+ pname = "ffmpeg" + (if ffmpegVariant == "small" then "" else "-${ffmpegVariant}");
inherit version;
- src = fetchurl {
- url = "https://www.ffmpeg.org/releases/${pname}-${version}.tar.bz2";
+ src = fetchgit {
+ url = "https://git.ffmpeg.org/ffmpeg.git";
+ rev = "n${version}";
inherit sha256;
};
- postPatch = "patchShebangs .";
- inherit patches;
+ postPatch = ''
+ patchShebangs .
+ '' + lib.optionalString withFrei0r ''
+ substituteInPlace libavfilter/vf_frei0r.c \
+ --replace /usr/local/lib/frei0r-1 ${frei0r}/lib/frei0r-1
+ substituteInPlace doc/filters.texi \
+ --replace /usr/local/lib/frei0r-1 ${frei0r}/lib/frei0r-1
+ '';
- outputs = [ "bin" "dev" "out" "man" "doc" ];
- setOutputFlags = false; # doesn't accept all and stores configureFlags in libs!
+ patches = map (patch: fetchpatch patch) extraPatches;
configurePlatforms = [];
- configureFlags = filter (v: v != null) ([
- "--arch=${stdenv.hostPlatform.parsed.cpu.name}"
- "--target_os=${stdenv.hostPlatform.parsed.kernel.name}"
- "--pkg-config=${buildPackages.pkg-config.targetPrefix}pkg-config"
- # License
- "--enable-gpl"
- "--enable-version3"
- # Build flags
- "--enable-shared"
- "--enable-pic"
- (ifMinVer "4.0" (enableFeature srtSupport "libsrt"))
- (enableFeature runtimeCpuDetectBuild "runtime-cpudetect")
- "--enable-hardcoded-tables"
- ] ++
- (if multithreadBuild then (
- if stdenv.isCygwin then
- ["--disable-pthreads" "--enable-w32threads"]
- else # Use POSIX threads by default
- ["--enable-pthreads" "--disable-w32threads"])
- else
- ["--disable-pthreads" "--disable-w32threads"])
- ++ [
- "--disable-os2threads" # We don't support OS/2
- "--enable-network"
- "--enable-pixelutils"
- # Executables
- "--enable-ffmpeg"
- "--disable-ffplay"
- "--enable-ffprobe"
- (ifVerOlder "4" "--disable-ffserver")
- # Libraries
- "--enable-avcodec"
- "--enable-avdevice"
- "--enable-avfilter"
- "--enable-avformat"
- (ifVerOlder "5.0" "--enable-avresample")
- "--enable-avutil"
- "--enable-postproc"
- "--enable-swresample"
- "--enable-swscale"
- # Docs
- "--disable-doc"
- # External Libraries
- "--enable-libass"
- "--enable-bzlib"
- "--enable-gnutls"
- "--enable-fontconfig"
- "--enable-libfreetype"
- "--enable-libmp3lame"
- "--enable-iconv"
- "--enable-libtheora"
- "--enable-libssh"
- (enableFeature vaapiSupport "vaapi")
- (enableFeature vaapiSupport "libdrm")
- (enableFeature vdpauSupport "vdpau")
- "--enable-libvorbis"
- (enableFeature vpxSupport "libvpx")
- "--enable-lzma"
- (enableFeature openglSupport "opengl")
- (ifMinVer "4.2" (enableFeature libmfxSupport "libmfx"))
- (ifMinVer "4.2" (enableFeature libaomSupport "libaom"))
- (lib.optionalString pulseaudioSupport "--enable-libpulse")
- (enableFeature sdlSupport "sdl2")
- "--enable-libsoxr"
- "--enable-libx264"
- "--enable-libxvid"
- "--enable-libzimg"
- "--enable-zlib"
- "--enable-libopus"
- "--enable-libspeex"
- "--enable-libx265"
- (ifMinVer "4.2" (enableFeature (reqMin "4.2") "libdav1d"))
- # Developer flags
- (enableFeature debugDeveloper "debug")
- (enableFeature optimizationsDeveloper "optimizations")
- (enableFeature extraWarningsDeveloper "extra-warnings")
- "--disable-stripping"
+ setOutputFlags = false; # Only accepts some of them
+ configureFlags = [
+ #mingw64 is internally treated as mingw32, so 32 and 64 make no difference here
+ "--target_os=${if stdenv.hostPlatform.isMinGW then "mingw64" else stdenv.hostPlatform.parsed.kernel.name}"
+ "--arch=${stdenv.hostPlatform.parsed.cpu.name}"
+ "--pkg-config=${buildPackages.pkg-config.targetPrefix}pkg-config"
+ /*
+ * Licensing flags
+ */
+ (enableFeature withGPL "gpl")
+ (enableFeature withGPLv3 "version3")
+ (enableFeature withUnfree "nonfree")
+ /*
+ * Build flags
+ */
+ # On some ARM platforms --enable-thumb
+ "--enable-shared"
+ "--enable-pic"
+
+ (enableFeature withSmallBuild "small")
+ (enableFeature withRuntimeCPUDetection "runtime-cpudetect")
+ (enableFeature withLTO "lto")
+ (enableFeature withGrayscale "gray")
+ (enableFeature withSwscaleAlpha "swscale-alpha")
+ (enableFeature withHardcodedTables "hardcoded-tables")
+ (enableFeature withSafeBitstreamReader "safe-bitstream-reader")
+
+ (enableFeature (withMultithread && stdenv.targetPlatform.isUnix) "pthreads")
+ (enableFeature (withMultithread && stdenv.targetPlatform.isWindows) "w32threads")
+ "--disable-os2threads" # We don't support OS/2
+
+ (enableFeature withNetwork "network")
+ (enableFeature withPixelutils "pixelutils")
+
+ "--datadir=${placeholder "data"}/share/ffmpeg"
+
+ /*
+ * Program flags
+ */
+ (enableFeature buildFfmpeg "ffmpeg")
+ (enableFeature buildFfplay "ffplay")
+ (enableFeature buildFfprobe "ffprobe")
+ ] ++ optionals withBin [
+ "--bindir=${placeholder "bin"}/bin"
+ ] ++ [
+ /*
+ * Library flags
+ */
+ (enableFeature buildAvcodec "avcodec")
+ (enableFeature buildAvdevice "avdevice")
+ (enableFeature buildAvfilter "avfilter")
+ (enableFeature buildAvformat "avformat")
+ ] ++ optionals (lib.versionOlder version "5") [
+ # Ffmpeg > 4 doesn't know about the flag anymore
+ (enableFeature buildAvresample "avresample")
+ ] ++ [
+ (enableFeature buildAvutil "avutil")
+ (enableFeature (buildPostproc && withGPL) "postproc")
+ (enableFeature buildSwresample "swresample")
+ (enableFeature buildSwscale "swscale")
+ ] ++ optionals withLib [
+ "--libdir=${placeholder "lib"}/lib"
+ "--incdir=${placeholder "dev"}/include"
+ ] ++ [
+ /*
+ * Documentation flags
+ */
+ (enableFeature withDocumentation "doc")
+ (enableFeature withHtmlDoc "htmlpages")
+ (enableFeature withManPages "manpages")
+ ] ++ optionals withManPages [
+ "--mandir=${placeholder "man"}/share/man"
+ ] ++ [
+ (enableFeature withPodDoc "podpages")
+ (enableFeature withTxtDoc "txtpages")
+ ] ++ optionals withDoc [
+ "--docdir=${placeholder "doc"}/share/doc/ffmpeg"
+ ] ++ [
+ /*
+ * External libraries
+ */
+ (enableFeature withAlsa "alsa")
+ (enableFeature withBzlib "bzlib")
+ (enableFeature withCelt "libcelt")
+ (enableFeature withCuda "cuda")
+ (enableFeature withCudaLLVM "cuda-llvm")
+ (enableFeature withDav1d "libdav1d")
+ (enableFeature withFdkAac "libfdk-aac")
+ "--disable-libflite" # Force disable until a solution is found
+ (enableFeature withFontconfig "fontconfig")
+ (enableFeature withFreetype "libfreetype")
+ (enableFeature withFrei0r "frei0r")
+ (enableFeature withFribidi "libfribidi")
+ (enableFeature withGme "libgme")
+ (enableFeature withGnutls "gnutls")
+ (enableFeature withGsm "libgsm")
+ (enableFeature withLadspa "ladspa")
+ (enableFeature withMp3lame "libmp3lame")
+ (enableFeature withAom "libaom")
+ (enableFeature withAss "libass")
+ (enableFeature withBluray "libbluray")
+ (enableFeature withBs2b "libbs2b")
+ (enableFeature withDc1394 "libdc1394")
+ (enableFeature withDrm "libdrm")
+ (enableFeature withIconv "iconv")
+ (enableFeature withJack "libjack")
+ (enableFeature withMfx "libmfx")
+ (enableFeature withModplug "libmodplug")
+ (enableFeature withMysofa "libmysofa")
+ (enableFeature withOpus "libopus")
+ (enableFeature withSvg "librsvg")
+ (enableFeature withSrt "libsrt")
+ (enableFeature withSsh "libssh")
+ (enableFeature withTheora "libtheora")
+ (enableFeature withV4l2 "libv4l2")
+ (enableFeature withV4l2M2m "v4l2-m2m")
+ (enableFeature withVaapi "vaapi")
+ (enableFeature withVdpau "vdpau")
+ (enableFeature withVorbis "libvorbis")
+ (enableFeature withVmaf "libvmaf")
+ (enableFeature withVpx "libvpx")
+ (enableFeature withWebp "libwebp")
+ (enableFeature withXlib "xlib")
+ (enableFeature withXcb "libxcb")
+ (enableFeature withXcbShm "libxcb-shm")
+ (enableFeature withXcbxfixes "libxcb-xfixes")
+ (enableFeature withXcbShape "libxcb-shape")
+ (enableFeature withXml2 "libxml2")
+ (enableFeature withLzma "lzma")
+ (enableFeature withNvdec "cuvid")
+ (enableFeature withNvdec "nvdec")
+ (enableFeature withNvenc "nvenc")
+ (enableFeature withOpenal "openal")
+ (enableFeature withOpencl "opencl")
+ (enableFeature withOpencoreAmrnb "libopencore-amrnb")
+ (enableFeature withOpengl "opengl")
+ (enableFeature withOpenh264 "libopenh264")
+ (enableFeature withOpenjpeg "libopenjpeg")
+ (enableFeature withOpenmpt "libopenmpt")
+ (enableFeature withPulse "libpulse")
+ (enableFeature withRav1e "librav1e")
+ (enableFeature withSvtav1 "libsvtav1")
+ (enableFeature withRtmp "librtmp")
+ (enableFeature withSdl2 "sdl2")
+ (enableFeature withSoxr "libsoxr")
+ (enableFeature withSpeex "libspeex")
+ (enableFeature withVidStab "libvidstab") # Actual min. version 2.0
+ (enableFeature withVoAmrwbenc "libvo-amrwbenc")
+ (enableFeature withX264 "libx264")
+ (enableFeature withX265 "libx265")
+ (enableFeature withXavs "libxavs")
+ (enableFeature withXvid "libxvid")
+ (enableFeature withZmq "libzmq")
+ (enableFeature withZimg "libzimg")
+ (enableFeature withZlib "zlib")
+ (enableFeature withVulkan "vulkan")
+ (enableFeature withGlslang "libglslang")
+ (enableFeature withSamba "libsmbclient")
+ /*
+ * Developer flags
+ */
+ (enableFeature withDebug "debug")
+ (enableFeature withOptimisations "optimizations")
+ (enableFeature withExtraWarnings "extra-warnings")
+ (enableFeature withStripping "stripping")
] ++ optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
- "--cross-prefix=${stdenv.cc.targetPrefix}"
- "--enable-cross-compile"
- ] ++ optional stdenv.cc.isClang "--cc=clang");
-
- depsBuildBuild = [ buildPackages.stdenv.cc ];
- nativeBuildInputs = [ addOpenGLRunpath perl pkg-config texinfo yasm ];
-
- buildInputs = [
- bzip2 fontconfig freetype gnutls libiconv lame libass libogg libssh libtheora
- libvorbis xz soxr x264 x265 xvidcore zimg zlib libopus speex nv-codec-headers
- ] ++ optionals openglSupport [ libGL libGLU ]
- ++ optional libmfxSupport intel-media-sdk
- ++ optional libaomSupport libaom
- ++ optional vpxSupport libvpx
- ++ optionals (!stdenv.isDarwin && pulseaudioSupport) [ libpulseaudio ] # Need to be fixed on Darwin
- ++ optionals vaapiSupport [ libva libdrm ]
- ++ optional stdenv.isLinux alsa-lib
- ++ optionals stdenv.isDarwin [ Cocoa CoreMedia VideoToolbox ]
- ++ optional vdpauSupport libvdpau
- ++ optional sdlSupport SDL2
- ++ optional srtSupport srt
- ++ optional (reqMin "4.2") dav1d;
+ "--cross-prefix=${stdenv.cc.targetPrefix}"
+ "--enable-cross-compile"
+ "--host-cc=${buildPackages.stdenv.cc}/bin/cc"
+ ] ++ optionals stdenv.cc.isClang [
+ "--cc=clang"
+ "--cxx=clang++"
+ ];
- enableParallelBuilding = true;
+ # ffmpeg embeds the configureFlags verbatim in its binaries and because we
+ # configure binary, include, library dir etc., this causes references in
+ # outputs where we don't want them. Patch the generated config.h to remove all
+ # such references except for data.
+ postConfigure = let
+ toStrip = lib.remove "data" outputs; # We want to keep references to the data dir.
+ in
+ "remove-references-to ${lib.concatStringsSep " " (map (o: "-t ${placeholder o}") toStrip)} config.h";
- inherit doCheck;
+ nativeBuildInputs = [ removeReferencesTo addOpenGLRunpath perl pkg-config texinfo yasm ];
+
+ # TODO This was always in buildInputs before, why?
+ buildInputs = optionals withFullDeps [ libdc1394 ]
+ ++ optionals (withFullDeps && !stdenv.isDarwin) [ libraw1394 ] # TODO where does this belong to
+ ++ optionals (withNvdec || withNvenc) [ nv-codec-headers ]
+ ++ optionals withAlsa [ alsa-lib ]
+ ++ optionals withAom [ libaom ]
+ ++ optionals withAss [ libass ]
+ ++ optionals withBluray [ libbluray ]
+ ++ optionals withBs2b [ libbs2b ]
+ ++ optionals withBzlib [ bzip2 ]
+ ++ optionals withCaca [ libcaca ]
+ ++ optionals withCelt [ celt ]
+ ++ optionals withCudaLLVM [ clang ]
+ ++ optionals withDav1d [ dav1d ]
+ ++ optionals withDrm [ libdrm ]
+ ++ optionals withFdkAac [ fdk_aac ]
+ ++ optionals withFontconfig [ fontconfig ]
+ ++ optionals withFreetype [ freetype ]
+ ++ optionals withFrei0r [ frei0r ]
+ ++ optionals withFribidi [ fribidi ]
+ ++ optionals withGlslang [ glslang ]
+ ++ optionals withGme [ game-music-emu ]
+ ++ optionals withGnutls [ gnutls ]
+ ++ optionals withGsm [ gsm ]
+ ++ optionals withIconv [ libiconv ] # On Linux this should be in libc, do we really need it?
+ ++ optionals withJack [ libjack2 ]
+ ++ optionals withLadspa [ ladspaH ]
+ ++ optionals withLzma [ xz ]
+ ++ optionals withMfx [ intel-media-sdk ]
+ ++ optionals withModplug [ libmodplug ]
+ ++ optionals withMp3lame [ lame ]
+ ++ optionals withMysofa [ libmysofa ]
+ ++ optionals withOgg [ libogg ]
+ ++ optionals withOpenal [ openal ]
+ ++ optionals withOpencl [ ocl-icd opencl-headers ]
+ ++ optionals withOpencoreAmrnb [ opencore-amr ]
+ ++ optionals withOpengl [ libGL libGLU ]
+ ++ optionals withOpenh264 [ openh264 ]
+ ++ optionals withOpenjpeg [ openjpeg ]
+ ++ optionals withOpenmpt [ libopenmpt ]
+ ++ optionals withOpus [ libopus ]
+ ++ optionals withPulse [ libpulseaudio ]
+ ++ optionals withRav1e [ rav1e ]
+ ++ optionals withRtmp [ rtmpdump ]
+ ++ optionals withSamba [ samba ]
+ ++ optionals withSdl2 [ SDL2 ]
+ ++ optionals withSoxr [ soxr ]
+ ++ optionals withSpeex [ speex ]
+ ++ optionals withSrt [ srt ]
+ ++ optionals withSsh [ libssh ]
+ ++ optionals withSvg [ librsvg ]
+ ++ optionals withSvtav1 [ svt-av1 ]
+ ++ optionals withTheora [ libtheora ]
+ ++ optionals withVaapi [ (if withSmallDeps then libva else libva-minimal) ]
+ ++ optionals withVdpau [ libvdpau ]
+ ++ optionals withVidStab [ vid-stab ]
+ ++ optionals withVmaf [ libvmaf ]
+ ++ optionals withVoAmrwbenc [ vo-amrwbenc ]
+ ++ optionals withVorbis [ libvorbis ]
+ ++ optionals withVpx [ libvpx ]
+ ++ optionals withV4l2 [ libv4l ]
+ ++ optionals withVulkan [ vulkan-loader ]
+ ++ optionals withWebp [ libwebp ]
+ ++ optionals withX264 [ x264 ]
+ ++ optionals withX265 [ x265 ]
+ ++ optionals withXavs [ xavs ]
+ ++ optionals withXcb [ libxcb ]
+ ++ optionals withXlib [ libX11 libXv libXext ]
+ ++ optionals withXml2 [ libxml2 ]
+ ++ optionals withXvid [ xvidcore ]
+ ++ optionals withZimg [ zimg ]
+ ++ optionals withZlib [ zlib ]
+ ++ optionals withZmq [ zeromq4 ]
+ ++ optionals stdenv.isDarwin [
+ # TODO fine-grained flags
+ AVFoundation
+ Cocoa
+ CoreAudio
+ CoreMedia
+ CoreServices
+ MediaToolbox
+ VideoDecodeAcceleration
+ VideoToolbox
+ ];
+
+ buildFlags = [ "all" ]
+ ++ optional buildQtFaststart "tools/qt-faststart"; # Build qt-faststart executable
+
+ doCheck = stdenv.hostPlatform == stdenv.buildPlatform;
+
+ # Fails with SIGABRT otherwise FIXME: Why?
checkPhase = let
ldLibraryPathEnv = if stdenv.isDarwin then "DYLD_LIBRARY_PATH" else "LD_LIBRARY_PATH";
+ libsToLink = [ ]
+ ++ optional buildAvcodec "libavcodec"
+ ++ optional buildAvdevice "libavdevice"
+ ++ optional buildAvfilter "libavfilter"
+ ++ optional buildAvformat "libavformat"
+ ++ optional buildAvresample "libavresample"
+ ++ optional buildAvutil "libavutil"
+ ++ optional buildPostproc "libpostproc"
+ ++ optional buildSwresample "libswresample"
+ ++ optional buildSwscale "libswscale"
+ ;
in ''
- ${ldLibraryPathEnv}="libavcodec:libavdevice:libavfilter:libavformat:libavresample:libavutil:libpostproc:libswresample:libswscale:''${${ldLibraryPathEnv}}" \
- make check -j$NIX_BUILD_CORES
+ ${ldLibraryPathEnv}="${lib.concatStringsSep ":" libsToLink}" make check -j$NIX_BUILD_CORES
+ '';
+
+ outputs = optionals withBin [ "bin" ] # The first output is the one that gets symlinked by default!
+ ++ optionals withLib [ "lib" "dev" ]
+ ++ optionals withDoc [ "doc" ]
+ ++ optionals withManPages [ "man" ]
+ ++ [ "data" "out" ] # We need an "out" output because we get an error otherwise. It's just an empty dir.
+ ;
+
+ postInstall = optionalString buildQtFaststart ''
+ install -D tools/qt-faststart -t $bin/bin
'';
- # ffmpeg 3+ generates pkg-config (.pc) files that don't have the
- # form automatically handled by the multiple-outputs hooks.
- postFixup = ''
- moveToOutput bin "$bin"
- moveToOutput share/ffmpeg/examples "$doc"
- for pc in ''${!outputDev}/lib/pkgconfig/*.pc; do
- substituteInPlace $pc \
- --replace "includedir=$out" "includedir=''${!outputInclude}"
- done
- '' + optionalString stdenv.isLinux ''
- # Set RUNPATH so that libnvcuvid and libcuda in /run/opengl-driver(-32)/lib can be found.
- # See the explanation in addOpenGLRunpath.
+ # Set RUNPATH so that libnvcuvid and libcuda in /run/opengl-driver(-32)/lib can be found.
+ # See the explanation in addOpenGLRunpath.
+ postFixup = optionalString stdenv.isLinux ''
addOpenGLRunpath $out/lib/libavcodec.so
addOpenGLRunpath $out/lib/libavutil.so
'';
- installFlags = [ "install-man" ];
-
- passthru = {
- inherit vaapiSupport vdpauSupport;
- };
+ enableParallelBuilding = true;
meta = with lib; {
description = "A complete, cross-platform solution to record, convert and stream audio and video";
@@ -212,9 +667,11 @@ stdenv.mkDerivation rec {
No matter if they were designed by some standards committee, the community or
a corporation.
'';
- license = licenses.gpl3;
- maintainers = with maintainers; [ ];
+ license = with licenses; [ lgpl21Plus ]
+ ++ optional withGPL gpl2Plus
+ ++ optional withGPLv3 gpl3Plus
+ ++ optional withUnfree unfreeRedistributable;
platforms = platforms.all;
- inherit branch knownVulnerabilities;
+ maintainers = with maintainers; [ atemu ];
};
}
diff --git a/pkgs/development/libraries/gegl/default.nix b/pkgs/development/libraries/gegl/default.nix
index 61106d7f620e4..5400c1de59274 100644
--- a/pkgs/development/libraries/gegl/default.nix
+++ b/pkgs/development/libraries/gegl/default.nix
@@ -47,6 +47,15 @@ stdenv.mkDerivation rec {
sha256 = "zd6A0VpJ2rmmFO+Y+ATIzm5M/hM5o8JAw08/tFQ2uF0=";
};
+ patches = [
+ (fetchurl {
+ name = "libraw.patch";
+ url = "https://src.fedoraproject.org/cgit/rpms/gegl04.git/plain/"
+ + "libraw.patch?id=5efd0c16a7b0e73abcaecc48af544ef027f4531b";
+ hash = "sha256-ZgVigN1T7JmeBMwSdBsMsmXx0h7UW4Ft9HlSqeB0se8=";
+ })
+ ];
+
nativeBuildInputs = [
pkg-config
gettext
diff --git a/pkgs/development/libraries/gjs/default.nix b/pkgs/development/libraries/gjs/default.nix
index a6824f121d39b..3b39482519642 100644
--- a/pkgs/development/libraries/gjs/default.nix
+++ b/pkgs/development/libraries/gjs/default.nix
@@ -27,7 +27,6 @@
let
testDeps = [
- gobject-introspection # for Gio and cairo typelibs
gtk3 atk pango.out gdk-pixbuf harfbuzz
];
in stdenv.mkDerivation rec {
diff --git a/pkgs/development/libraries/glib/default.nix b/pkgs/development/libraries/glib/default.nix
index ac7977d0f62f2..de5e0b781f8dc 100644
--- a/pkgs/development/libraries/glib/default.nix
+++ b/pkgs/development/libraries/glib/default.nix
@@ -55,11 +55,11 @@ in
stdenv.mkDerivation (finalAttrs: {
pname = "glib";
- version = "2.74.3";
+ version = "2.74.5";
src = fetchurl {
url = "mirror://gnome/sources/glib/${lib.versions.majorMinor finalAttrs.version}/glib-${finalAttrs.version}.tar.xz";
- sha256 = "6bxB7NlpDZvGqXDMc4ARm4KOW2pLFsOTxjiz3CuHy8s=";
+ sha256 = "zrqDpZmc6zGkxPyZISB8uf//0qsdbsA8Fi0/YIpcFMg=";
};
patches = lib.optionals stdenv.isDarwin [
@@ -117,20 +117,6 @@ stdenv.mkDerivation (finalAttrs: {
# Disable flaky test.
# https://gitlab.gnome.org/GNOME/glib/-/issues/820
./skip-timer-test.patch
-
- # GVariant security fixes
- # https://discourse.gnome.org/t/multiple-fixes-for-gvariant-normalisation-issues-in-glib/12835
- (fetchpatch {
- url = "https://gitlab.gnome.org/GNOME/glib/-/merge_requests/3126.patch";
- sha256 = "CNCxouYy8xNHt4eJtPZ2eOi9b0SxzI2DkklNfQMk3d8=";
- })
-
- # Menu model security fix
- # https://discourse.gnome.org/t/fixes-for-gdbusmenumodel-crashes-in-glib/12846
- (fetchpatch {
- url = "https://gitlab.gnome.org/GNOME/glib/-/commit/4f4d770a1e40f719d5a310cffdac29cbb4e20c11.patch";
- sha256 = "+S44AnC86HfbMwkRe1ll54IK9pLxaFD3LqiVhPelnXI=";
- })
];
outputs = [ "bin" "out" "dev" "devdoc" ];
diff --git a/pkgs/development/libraries/gloox/default.nix b/pkgs/development/libraries/gloox/default.nix
index 8fc57d865fd74..69243a13ef300 100644
--- a/pkgs/development/libraries/gloox/default.nix
+++ b/pkgs/development/libraries/gloox/default.nix
@@ -14,6 +14,13 @@ stdenv.mkDerivation rec{
sha256 = "1jgrd07qr9jvbb5hcmhrqz4w4lvwc51m30jls1fgxf1f5az6455f";
};
+ # needed since gcc12
+ postPatch = ''
+ sed '1i#include ' -i \
+ src/tests/{tag/tag_perf.cpp,zlib/zlib_perf.cpp} \
+ src/examples/*.cpp
+ '';
+
buildInputs = [ ]
++ lib.optional zlibSupport zlib
++ lib.optional sslSupport openssl
diff --git a/pkgs/development/libraries/gsl/default.nix b/pkgs/development/libraries/gsl/default.nix
index 0d14630bda3b0..590a4508c9b91 100644
--- a/pkgs/development/libraries/gsl/default.nix
+++ b/pkgs/development/libraries/gsl/default.nix
@@ -4,6 +4,8 @@ stdenv.mkDerivation rec {
pname = "gsl";
version = "2.7.1";
+ outputs = [ "out" "dev" ];
+
src = fetchurl {
url = "mirror://gnu/gsl/${pname}-${version}.tar.gz";
sha256 = "sha256-3LD71DBIgyt1f/mUJpGo3XACbV2g/4VgHlJof23us0s=";
@@ -13,6 +15,10 @@ stdenv.mkDerivation rec {
MACOSX_DEPLOYMENT_TARGET=10.16
'' else null;
+ postInstall = ''
+ moveToOutput bin/gsl-config "$dev"
+ '';
+
# do not let -march=skylake to enable FMA (https://lists.gnu.org/archive/html/bug-gsl/2011-11/msg00019.html)
NIX_CFLAGS_COMPILE = lib.optionalString stdenv.isx86_64 "-mno-fma";
diff --git a/pkgs/development/libraries/gsmlib/default.nix b/pkgs/development/libraries/gsmlib/default.nix
index ec6646d98f572..f993eeedc33b9 100644
--- a/pkgs/development/libraries/gsmlib/default.nix
+++ b/pkgs/development/libraries/gsmlib/default.nix
@@ -2,13 +2,21 @@
stdenv.mkDerivation rec {
pname = "gsmlib";
version = "unstable-2017-10-06";
+
src = fetchFromGitHub {
owner = "x-logLT";
repo = "gsmlib";
rev = "4f794b14450132f81673f7d3570c5a859aecf7ae";
sha256 = "16v8aj914ac1ipf14a867ljib3gy7fhzd9ypxnsg9l0zi8mm3ml5";
};
+
nativeBuildInputs = [ autoreconfHook ];
+
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-std=c++14"
+ ];
+
meta = with lib; {
description = "Library to access GSM mobile phones through GSM modems";
homepage = "https://github.com/x-logLT/gsmlib";
diff --git a/pkgs/development/libraries/gtest/default.nix b/pkgs/development/libraries/gtest/default.nix
index 049d202a71ec0..8e60c08d36009 100644
--- a/pkgs/development/libraries/gtest/default.nix
+++ b/pkgs/development/libraries/gtest/default.nix
@@ -19,7 +19,13 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ninja ];
- cmakeFlags = [ "-DBUILD_SHARED_LIBS=ON" ];
+ cmakeFlags = [
+ "-DBUILD_SHARED_LIBS=ON"
+ ] ++ lib.optionals (stdenv.cc.isClang && (lib.versionOlder stdenv.cc.version "16.0")) [
+ # Enable C++17 support
+ # https://github.com/google/googletest/issues/3081
+ "-DCMAKE_CXX_STANDARD=17"
+ ];
meta = with lib; {
description = "Google's framework for writing C++ tests";
diff --git a/pkgs/development/libraries/harfbuzz/default.nix b/pkgs/development/libraries/harfbuzz/default.nix
index 782823cd67483..e2b0697de59b3 100644
--- a/pkgs/development/libraries/harfbuzz/default.nix
+++ b/pkgs/development/libraries/harfbuzz/default.nix
@@ -10,6 +10,8 @@
, meson
, ninja
, gobject-introspection
+, buildPackages
+, withIntrospection ? stdenv.hostPlatform.emulatorAvailable buildPackages
, icu
, graphite2
, harfbuzz # The icu variant uses and propagates the non-icu one.
@@ -61,6 +63,7 @@ stdenv.mkDerivation rec {
(lib.mesonEnable "coretext" withCoreText)
(lib.mesonEnable "graphite" withGraphite2)
(lib.mesonEnable "icu" withIcu)
+ (lib.mesonEnable "introspection" withIntrospection)
];
depsBuildBuild = [
@@ -70,14 +73,14 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [
meson
ninja
- gobject-introspection
libintl
pkg-config
python3
+ glib
gtk-doc
docbook-xsl-nons
docbook_xml_dtd_43
- ];
+ ] ++ lib.optional withIntrospection gobject-introspection;
buildInputs = [ glib freetype ]
++ lib.optionals withCoreText [ ApplicationServices CoreText ];
@@ -90,7 +93,6 @@ stdenv.mkDerivation rec {
# Slightly hacky; some pkgs expect them in a single directory.
postFixup = lib.optionalString withIcu ''
rm "$out"/lib/libharfbuzz.* "$dev/lib/pkgconfig/harfbuzz.pc"
- ln -s {'${harfbuzz.out}',"$out"}/lib/libharfbuzz.la
ln -s {'${harfbuzz.dev}',"$dev"}/lib/pkgconfig/harfbuzz.pc
${lib.optionalString stdenv.isDarwin ''
ln -s {'${harfbuzz.out}',"$out"}/lib/libharfbuzz.dylib
@@ -108,6 +110,6 @@ stdenv.mkDerivation rec {
homepage = "https://harfbuzz.github.io/";
maintainers = [ maintainers.eelco ];
license = licenses.mit;
- platforms = with platforms; linux ++ darwin;
+ platforms = platforms.unix;
};
}
diff --git a/pkgs/development/libraries/hidapi/default.nix b/pkgs/development/libraries/hidapi/default.nix
index b29b64c2a7577..2a6483d77b2a2 100644
--- a/pkgs/development/libraries/hidapi/default.nix
+++ b/pkgs/development/libraries/hidapi/default.nix
@@ -11,13 +11,13 @@
stdenv.mkDerivation rec {
pname = "hidapi";
- version = "0.12.0";
+ version = "0.13.1";
src = fetchFromGitHub {
owner = "libusb";
repo = "hidapi";
rev = "${pname}-${version}";
- sha256 = "sha256-SMhlcB7LcViC6UFVYACjunxsGkvSOKC3mbLBH4XQSzM=";
+ sha256 = "sha256-CEZP5n8qEAzsqn8dz3u1nG0YoT7J1P+WfN7urkRTuVg=";
};
nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/development/libraries/hunspell/default.nix b/pkgs/development/libraries/hunspell/default.nix
index 66441a911607d..324b4337c874c 100644
--- a/pkgs/development/libraries/hunspell/default.nix
+++ b/pkgs/development/libraries/hunspell/default.nix
@@ -1,14 +1,14 @@
{ lib, stdenv, fetchFromGitHub, ncurses, readline, autoreconfHook }:
stdenv.mkDerivation rec {
- version = "1.7.1";
+ version = "1.7.2";
pname = "hunspell";
src = fetchFromGitHub {
owner = "hunspell";
repo = "hunspell";
rev = "v${version}";
- sha256 = "sha256-J1kgNUElRO63mtU62qU7asf7hht9oyplMIO9I/E6BPU=";
+ sha256 = "sha256-x2FXxnVIqsf5/UEQcvchAndXBv/3mW8Z55djQAFgNA8=";
};
outputs = [ "bin" "dev" "out" "man" ];
diff --git a/pkgs/development/libraries/iqueue/default.nix b/pkgs/development/libraries/iqueue/default.nix
index 04fd7202d1d16..ab873f82c579a 100644
--- a/pkgs/development/libraries/iqueue/default.nix
+++ b/pkgs/development/libraries/iqueue/default.nix
@@ -12,6 +12,12 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ pkg-config ];
buildInputs = [ libbsd microsoft_gsl ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-parameter"
+ "-Wno-error=misleading-indentation"
+ ];
+
meta = with lib; {
homepage = "https://github.com/twosigma/iqueue";
description = "Indexed queue";
diff --git a/pkgs/development/libraries/iso-codes/default.nix b/pkgs/development/libraries/iso-codes/default.nix
index c38c72ccd04c2..aca509b3b036b 100644
--- a/pkgs/development/libraries/iso-codes/default.nix
+++ b/pkgs/development/libraries/iso-codes/default.nix
@@ -9,15 +9,10 @@ stdenv.mkDerivation rec {
sha256 = "sha256-QI95nfQTVGj6fKNetrBcQAS+pEPYHKWLibLkgkAagrs=";
};
- patchPhase = ''
- for i in `find . -name \*.py`
- do
- sed -i -e "s|#!/usr/bin/env python|#!${python3}/bin/python|" $i
- done
- '';
-
nativeBuildInputs = [ gettext python3 ];
+ enableParallelBuilding = true;
+
meta = with lib; {
homepage = "https://salsa.debian.org/iso-codes-team/iso-codes";
description = "Various ISO codes packaged as XML files";
diff --git a/pkgs/development/libraries/kerberos/krb5.nix b/pkgs/development/libraries/kerberos/krb5.nix
index 22b29151caa5b..4caea890e7051 100644
--- a/pkgs/development/libraries/kerberos/krb5.nix
+++ b/pkgs/development/libraries/kerberos/krb5.nix
@@ -57,6 +57,11 @@ stdenv.mkDerivation rec {
sourceRoot = "krb5-${version}/src";
+ postPatch = ''
+ substituteInPlace config/shlib.conf \
+ --replace "'ld " "'${stdenv.cc.targetPrefix}ld "
+ '';
+
libFolders = [ "util" "include" "lib" "build-tools" ];
buildPhase = lib.optionalString libOnly ''
diff --git a/pkgs/development/libraries/libassuan/default.nix b/pkgs/development/libraries/libassuan/default.nix
index 3a00ca498cbe3..e2fbb3f9287cf 100644
--- a/pkgs/development/libraries/libassuan/default.nix
+++ b/pkgs/development/libraries/libassuan/default.nix
@@ -16,6 +16,7 @@ stdenv.mkDerivation rec {
buildInputs = [ npth gettext ];
configureFlags = [
+ # Required for cross-compilation.
"--with-libgpg-error-prefix=${libgpg-error.dev}"
];
diff --git a/pkgs/development/libraries/libbladeRF/default.nix b/pkgs/development/libraries/libbladeRF/default.nix
index 4b2c48824fb7c..e5e51a447b484 100644
--- a/pkgs/development/libraries/libbladeRF/default.nix
+++ b/pkgs/development/libraries/libbladeRF/default.nix
@@ -46,6 +46,11 @@ in stdenv.mkDerivation rec {
"-DBLADERF_GROUP=bladerf"
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ ];
+
hardeningDisable = [ "fortify" ];
meta = with lib; {
diff --git a/pkgs/development/libraries/libbsd/default.nix b/pkgs/development/libraries/libbsd/default.nix
index b8f6aac0b3884..0c8040010e722 100644
--- a/pkgs/development/libraries/libbsd/default.nix
+++ b/pkgs/development/libraries/libbsd/default.nix
@@ -1,12 +1,18 @@
-{ lib, stdenv, fetchurl, autoreconfHook, libmd }:
+{ lib
+, stdenv
+, fetchurl
+, autoreconfHook
+, libmd
+, gitUpdater
+}:
stdenv.mkDerivation rec {
pname = "libbsd";
- version = "0.11.6";
+ version = "0.11.7";
src = fetchurl {
url = "https://libbsd.freedesktop.org/releases/${pname}-${version}.tar.xz";
- sha256 = "sha256-GbOPMXLq9pPm4caHFGNhkMfkiFHkUiTXILO1vASZtd8=";
+ hash = "sha256-m6oYYFnrvyXAYwjp+ZH9ox9xg8DySTGCbYOqar2KAmE=";
};
outputs = [ "out" "dev" "man" ];
@@ -18,6 +24,11 @@ stdenv.mkDerivation rec {
patches = [ ./darwin.patch ];
+ passthru.updateScript = gitUpdater {
+ # No nicer place to find latest release.
+ url = "https://gitlab.freedesktop.org/libbsd/libbsd.git";
+ };
+
meta = with lib; {
description = "Common functions found on BSD systems";
homepage = "https://libbsd.freedesktop.org/";
diff --git a/pkgs/development/libraries/libcamera/default.nix b/pkgs/development/libraries/libcamera/default.nix
index d03783f2fd903..11c8ce9e097ee 100644
--- a/pkgs/development/libraries/libcamera/default.nix
+++ b/pkgs/development/libraries/libcamera/default.nix
@@ -29,6 +29,8 @@ stdenv.mkDerivation rec {
hash = "sha256-0/wvH07bJRKFwYnOARRJNzH8enIX3TNnWQnJdfpfvgE=";
};
+ outputs = [ "out" "dev" "doc" ];
+
postPatch = ''
patchShebangs utils/
'';
diff --git a/pkgs/development/libraries/libcbor/default.nix b/pkgs/development/libraries/libcbor/default.nix
index 7abbd944ed014..8f8e33cbeab4d 100644
--- a/pkgs/development/libraries/libcbor/default.nix
+++ b/pkgs/development/libraries/libcbor/default.nix
@@ -13,28 +13,25 @@
stdenv.mkDerivation (finalAttrs: {
pname = "libcbor";
- version = "0.10.0";
+ version = "unstable-2023-01-29"; # Musl fix hasn't been released yet.
src = fetchFromGitHub {
owner = "PJK";
- repo = finalAttrs.pname;
- rev = "v${finalAttrs.version}";
- sha256 = "sha256-YJSIZ7o191/0QJf1fH6LUYykS2pvP17knSeRO2WcDeM=";
+ repo = "libcbor";
+ rev = "cb4162f40d94751141b4d43b07c4add83e738a68";
+ sha256 = "sha256-ZTa+wG1g9KsVoqJG/yqxo2fJ7OhPnaI9QcfOmpOT3pg=";
};
nativeBuildInputs = [ cmake ];
- cmakeFlags = [
- "-DCMAKE_INSTALL_LIBDIR=lib"
- "-DBUILD_SHARED_LIBS=on"
- ] ++ lib.optional finalAttrs.doCheck "-DWITH_TESTS=ON";
+ cmakeFlags = lib.optional finalAttrs.doCheck "-DWITH_TESTS=ON"
+ ++ lib.optional (!stdenv.hostPlatform.isStatic) "-DBUILD_SHARED_LIBS=ON";
- # 2 tests are not 32-bit clean: overflow size_t:
- # https://github.com/PJK/libcbor/issues/263
- doCheck =
- !stdenv.hostPlatform.is32bit
- && (!stdenv.hostPlatform.isStatic)
+ # Tests are restricted while pkgsStatic.cmocka is broken. Tracked at:
+ # https://github.com/NixOS/nixpkgs/issues/213623
+ doCheck = !stdenv.hostPlatform.isStatic
&& stdenv.hostPlatform == stdenv.buildPlatform;
+
nativeCheckInputs = [ cmocka ];
passthru.tests = {
diff --git a/pkgs/development/libraries/libcli/default.nix b/pkgs/development/libraries/libcli/default.nix
index da076a590e19a..6e38c1ab84f13 100644
--- a/pkgs/development/libraries/libcli/default.nix
+++ b/pkgs/development/libraries/libcli/default.nix
@@ -24,6 +24,11 @@ stdenv.mkDerivation rec {
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" "AR=${stdenv.cc.targetPrefix}ar" "PREFIX=$(out)" ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=address"
+ ];
+
meta = with lib; {
description = "Emulate a Cisco-style telnet command-line interface";
homepage = "http://sites.dparrish.com/libcli";
diff --git a/pkgs/development/libraries/libcryptui/fix-latest-gnupg.patch b/pkgs/development/libraries/libcryptui/fix-latest-gnupg.patch
index e12b584d16ebe..19aa27b549c26 100644
--- a/pkgs/development/libraries/libcryptui/fix-latest-gnupg.patch
+++ b/pkgs/development/libraries/libcryptui/fix-latest-gnupg.patch
@@ -17,7 +17,7 @@ index 4486e7b2..be5b28b4 100644
if test "$DO_CHECK" = "yes"; then
- accepted_versions="1.2 1.4 2.0"
-+ accepted_versions="1.2 1.4 2.0 2.2 2.3"
++ accepted_versions="1.2 1.4 2.0 2.2 2.3 2.4"
AC_PATH_PROGS(GNUPG, [gpg gpg2], no)
AC_DEFINE_UNQUOTED(GNUPG, "$GNUPG", [Path to gpg executable.])
ok="no"
diff --git a/pkgs/development/libraries/libdatrie/default.nix b/pkgs/development/libraries/libdatrie/default.nix
index 257673b1a96d2..57d30124a6fd1 100644
--- a/pkgs/development/libraries/libdatrie/default.nix
+++ b/pkgs/development/libraries/libdatrie/default.nix
@@ -22,7 +22,7 @@ stdenv.mkDerivation rec {
installShellFiles
];
- buildInputs = lib.optional stdenv.isDarwin libiconv;
+ buildInputs = [ libiconv ];
preAutoreconf = let
reports = "https://github.com/tlwg/libdatrie/issues";
diff --git a/pkgs/development/libraries/libde265/default.nix b/pkgs/development/libraries/libde265/default.nix
index 18b8d6ba5d6fe..c24209e4ab6c3 100644
--- a/pkgs/development/libraries/libde265/default.nix
+++ b/pkgs/development/libraries/libde265/default.nix
@@ -12,14 +12,14 @@
}:
stdenv.mkDerivation rec {
- version = "1.0.9";
+ version = "1.0.11";
pname = "libde265";
src = fetchFromGitHub {
owner = "strukturag";
repo = "libde265";
rev = "v${version}";
- sha256 = "sha256-OpiQapppuKCR27tIG5OW+KiNMP9ysv7CaobiBOW6VUI=";
+ sha256 = "sha256-0aRUh5h49fnjBjy42A5fWYHnhnQ4CFoeSIXZilZewW8=";
};
nativeBuildInputs = [ autoreconfHook pkg-config ];
diff --git a/pkgs/development/libraries/libdrm/default.nix b/pkgs/development/libraries/libdrm/default.nix
index 83a426a2afa4f..b34282dd37b10 100644
--- a/pkgs/development/libraries/libdrm/default.nix
+++ b/pkgs/development/libraries/libdrm/default.nix
@@ -20,12 +20,13 @@ stdenv.mkDerivation rec {
mesonFlags = [
"-Dinstall-test-programs=true"
- "-Domap=enabled"
"-Dcairo-tests=disabled"
- "-Dvalgrind=${if withValgrind then "enabled" else "disabled"}"
+ (lib.mesonEnable "omap" stdenv.hostPlatform.isLinux)
+ (lib.mesonEnable "valgrind" withValgrind)
] ++ lib.optionals stdenv.hostPlatform.isAarch [
"-Dtegra=enabled"
- "-Detnaviv=enabled"
+ ] ++ lib.optionals (!stdenv.hostPlatform.isLinux) [
+ "-Detnaviv=disabled"
];
meta = with lib; {
diff --git a/pkgs/development/libraries/libdynd/default.nix b/pkgs/development/libraries/libdynd/default.nix
index b418279e477b8..6018e00f944ec 100644
--- a/pkgs/development/libraries/libdynd/default.nix
+++ b/pkgs/development/libraries/libdynd/default.nix
@@ -15,14 +15,17 @@ stdenv.mkDerivation rec {
"-DDYND_BUILD_BENCHMARKS=OFF"
];
- # added to fix build with gcc7+
NIX_CFLAGS_COMPILE = builtins.toString [
+ # added to fix build with gcc7+
"-Wno-error=implicit-fallthrough"
"-Wno-error=nonnull"
"-Wno-error=tautological-compare"
"-Wno-error=class-memaccess"
"-Wno-error=parentheses"
"-Wno-error=deprecated-copy"
+ # Needed with GCC 12
+ "-Wno-error=deprecated-declarations"
+ "-Wno-error=maybe-uninitialized"
];
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/libepoxy/default.nix b/pkgs/development/libraries/libepoxy/default.nix
index 196ac1afaae53..8b35097778de9 100644
--- a/pkgs/development/libraries/libepoxy/default.nix
+++ b/pkgs/development/libraries/libepoxy/default.nix
@@ -50,8 +50,10 @@ stdenv.mkDerivation rec {
];
mesonFlags = [
- "-Dtests=${if doCheck then "true" else "false"}"
+ "-Degl=${if x11Support then "yes" else "no"}"
"-Dglx=${if x11Support then "yes" else "no"}"
+ "-Dtests=${lib.boolToString doCheck}"
+ "-Dx11=${lib.boolToString x11Support}"
];
NIX_CFLAGS_COMPILE = lib.optionalString x11Support ''-DLIBGL_PATH="${getLib libGL}/lib"'';
diff --git a/pkgs/development/libraries/libfaketime/default.nix b/pkgs/development/libraries/libfaketime/default.nix
index ac501c660b02a..e58c74f2c6756 100644
--- a/pkgs/development/libraries/libfaketime/default.nix
+++ b/pkgs/development/libraries/libfaketime/default.nix
@@ -1,19 +1,23 @@
-{ lib, stdenv, fetchFromGitHub, perl, coreutils }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, perl, coreutils }:
stdenv.mkDerivation rec {
pname = "libfaketime";
- version = "0.9.9";
+ version = "0.9.10";
src = fetchFromGitHub {
owner = "wolfcw";
repo = "libfaketime";
rev = "v${version}";
- sha256 = "sha256-P1guVggteGtoq8+eeE966hDPkRwsn0m7oLCohyPrIb4=";
+ sha256 = "sha256-DYRuQmIhQu0CNEboBAtHOr/NnWxoXecuPMSR/UQ/VIQ=";
};
patches = [
- ./no-date-in-gzip-man-page.patch
./nix-store-date.patch
+ (fetchpatch {
+ name = "0001-libfaketime.c-wrap-timespec_get-in-TIME_UTC-macro.patch";
+ url = "https://github.com/wolfcw/libfaketime/commit/e0e6b79568d36a8fd2b3c41f7214769221182128.patch";
+ sha256 = "sha256-KwwP76v0DXNW73p/YBvwUOPdKMAcVdbQSKexD/uFOYo=";
+ })
] ++ (lib.optionals stdenv.cc.isClang [
# https://github.com/wolfcw/libfaketime/issues/277
./0001-Remove-unsupported-clang-flags.patch
diff --git a/pkgs/development/libraries/libfaketime/nix-store-date.patch b/pkgs/development/libraries/libfaketime/nix-store-date.patch
index b88245dfe8fbf..e93a7ec765070 100644
--- a/pkgs/development/libraries/libfaketime/nix-store-date.patch
+++ b/pkgs/development/libraries/libfaketime/nix-store-date.patch
@@ -13,9 +13,9 @@ index af618f2..48e47da 100644
+++ b/src/faketime.c
@@ -50,11 +50,7 @@
- const char version[] = "0.9.9";
+ const char version[] = "0.9.10";
--#ifdef __APPLE__
+-#if (defined __APPLE__) || (defined __sun)
-static const char *date_cmd = "gdate";
-#else
-static const char *date_cmd = "date";
diff --git a/pkgs/development/libraries/libfaketime/no-date-in-gzip-man-page.patch b/pkgs/development/libraries/libfaketime/no-date-in-gzip-man-page.patch
deleted file mode 100644
index 7b7e362fbf0f8..0000000000000
--- a/pkgs/development/libraries/libfaketime/no-date-in-gzip-man-page.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -ur libfaketime-0.9.5.orig/man/Makefile libfaketime-0.9.5/man/Makefile
---- libfaketime-0.9.5.orig/man/Makefile 2013-10-13 11:19:30.000000000 +0200
-+++ libfaketime-0.9.5/man/Makefile 2014-04-13 01:22:14.362296519 +0200
-@@ -6,7 +6,7 @@
-
- install:
- $(INSTALL) -Dm0644 faketime.1 "${DESTDIR}${PREFIX}/share/man/man1/faketime.1"
-- gzip -f "${DESTDIR}${PREFIX}/share/man/man1/faketime.1"
-+ gzip -9nf "${DESTDIR}${PREFIX}/share/man/man1/faketime.1"
-
- uninstall:
- rm -f "${DESTDIR}${PREFIX}/share/man/man1/faketime.1.gz"
diff --git a/pkgs/development/libraries/libglvnd/default.nix b/pkgs/development/libraries/libglvnd/default.nix
index bf43bb1b50e43..0b983e6edf41f 100644
--- a/pkgs/development/libraries/libglvnd/default.nix
+++ b/pkgs/development/libraries/libglvnd/default.nix
@@ -5,14 +5,14 @@
stdenv.mkDerivation rec {
pname = "libglvnd";
- version = "1.5.0";
+ version = "1.6.0";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = "glvnd";
repo = "libglvnd";
rev = "v${version}";
- sha256 = "sha256-yXSuG8UwD5KZbn4ysDStTdOGD4uHigjOhazlHT9ndNs=";
+ sha256 = "sha256-p/vLxagN9nCYw1JpUmZetgctQbrp3Wo33OVFrtvmnjQ=";
};
nativeBuildInputs = [ autoreconfHook pkg-config python3 addOpenGLRunpath ];
diff --git a/pkgs/development/libraries/libgpg-error/default.nix b/pkgs/development/libraries/libgpg-error/default.nix
index fcd7946a1351f..d8c5d87b16565 100644
--- a/pkgs/development/libraries/libgpg-error/default.nix
+++ b/pkgs/development/libraries/libgpg-error/default.nix
@@ -17,17 +17,22 @@
};
in stdenv.mkDerivation (rec {
pname = "libgpg-error";
- version = "1.45";
+ version = "1.46";
src = fetchurl {
url = "mirror://gnupg/${pname}/${pname}-${version}.tar.bz2";
- sha256 = "sha256-Vw+O5PtL/3t0lc/5IMJ1ACrqIUfpodIgwGghMmf4CiY=";
+ sha256 = "sha256-t+EaZCRrvl7zd0jeQ7JFq9cs/NU8muXn/FylnxyBJo0=";
};
postPatch = ''
sed '/BUILD_TIMESTAMP=/s/=.*/=1970-01-01T00:01+0000/' -i ./configure
'';
+ configureFlags = [
+ # See https://dev.gnupg.org/T6257#164567
+ "--enable-install-gpg-error-config"
+ ];
+
outputs = [ "out" "dev" "info" ];
outputBin = "dev"; # deps want just the lib, most likely
diff --git a/pkgs/development/libraries/libgudev/default.nix b/pkgs/development/libraries/libgudev/default.nix
index 799e1d0f84517..59df64e63558a 100644
--- a/pkgs/development/libraries/libgudev/default.nix
+++ b/pkgs/development/libraries/libgudev/default.nix
@@ -55,7 +55,6 @@ stdenv.mkDerivation rec {
];
buildInputs = [
- gobject-introspection
udev
glib
];
diff --git a/pkgs/development/libraries/libical/default.nix b/pkgs/development/libraries/libical/default.nix
index 230cd3fc9196a..f85181d376a9d 100644
--- a/pkgs/development/libraries/libical/default.nix
+++ b/pkgs/development/libraries/libical/default.nix
@@ -59,7 +59,6 @@ stdenv.mkDerivation rec {
glib
libxml2
icu
- gobject-introspection
];
cmakeFlags = [
diff --git a/pkgs/development/libraries/libinput/default.nix b/pkgs/development/libraries/libinput/default.nix
index 83034b8dd6202..dfd5ce1a095b4 100644
--- a/pkgs/development/libraries/libinput/default.nix
+++ b/pkgs/development/libraries/libinput/default.nix
@@ -45,7 +45,7 @@ in
stdenv.mkDerivation rec {
pname = "libinput";
- version = "1.21.0";
+ version = "1.22.1";
outputs = [ "bin" "out" "dev" ];
@@ -54,7 +54,7 @@ stdenv.mkDerivation rec {
owner = "libinput";
repo = "libinput";
rev = version;
- sha256 = "R94BdrjI4szNbVtQ+ydRNUg9clR8mkRL7+GE9b2FcDs=";
+ sha256 = "RgwEp60Anr+CpJws6srIv/Qzk2r9NoekeNQ0UT3FRZ0=";
};
patches = [
diff --git a/pkgs/development/libraries/libmanette/default.nix b/pkgs/development/libraries/libmanette/default.nix
index 2320aa78bba7f..7629dd8a6f1ae 100644
--- a/pkgs/development/libraries/libmanette/default.nix
+++ b/pkgs/development/libraries/libmanette/default.nix
@@ -40,7 +40,6 @@ stdenv.mkDerivation rec {
];
buildInputs = [
- gobject-introspection
glib
libgudev
libevdev
diff --git a/pkgs/development/libraries/libmbim/default.nix b/pkgs/development/libraries/libmbim/default.nix
index eb32fca71641c..f9f15b683946a 100644
--- a/pkgs/development/libraries/libmbim/default.nix
+++ b/pkgs/development/libraries/libmbim/default.nix
@@ -1,46 +1,63 @@
{ lib
, stdenv
-, fetchurl
+, fetchFromGitLab
+, meson
+, ninja
, pkg-config
, glib
, python3
+, help2man
, systemd
+, bash-completion
, withIntrospection ? stdenv.hostPlatform == stdenv.buildPlatform
, gobject-introspection
}:
stdenv.mkDerivation rec {
pname = "libmbim";
- version = "1.26.4";
+ version = "1.28.2";
outputs = [ "out" "dev" "man" ];
- src = fetchurl {
- url = "https://www.freedesktop.org/software/libmbim/${pname}-${version}.tar.xz";
- sha256 = "sha256-9ojOxMRYahdXX14ydEjOYvIADvagfJ5FiYc9SmhWitk=";
+ src = fetchFromGitLab {
+ domain = "gitlab.freedesktop.org";
+ owner = "mobile-broadband";
+ repo = "libmbim";
+ rev = version;
+ hash = "sha256-EtjUaSNBT1e/eeTX4oHzQolGrisbsGKBK8Cfl3rRQTQ=";
};
- configureFlags = [
- "--with-udev-base-dir=${placeholder "out"}/lib/udev"
- (lib.enableFeature withIntrospection "introspection")
+ mesonFlags = [
+ "-Dudevdir=${placeholder "out"}/lib/udev"
+ (lib.mesonBool "introspection" withIntrospection)
];
nativeBuildInputs = [
+ meson
+ ninja
pkg-config
python3
+ help2man
gobject-introspection
];
buildInputs = [
glib
systemd
+ bash-completion
];
doCheck = true;
+ postPatch = ''
+ patchShebangs \
+ build-aux/mbim-codegen/mbim-codegen
+ '';
+
meta = with lib; {
homepage = "https://www.freedesktop.org/wiki/Software/libmbim/";
description = "Library for talking to WWAN modems and devices which speak the Mobile Interface Broadband Model (MBIM) protocol";
+ maintainers = teams.freedesktop.members;
platforms = platforms.linux;
license = licenses.gpl2Plus;
};
diff --git a/pkgs/development/libraries/libnotify/default.nix b/pkgs/development/libraries/libnotify/default.nix
index f1034781fb441..e047b34fa85a4 100644
--- a/pkgs/development/libraries/libnotify/default.nix
+++ b/pkgs/development/libraries/libnotify/default.nix
@@ -44,10 +44,6 @@ stdenv.mkDerivation rec {
gobject-introspection
];
- buildInputs = lib.optionals withIntrospection [
- gobject-introspection
- ];
-
propagatedBuildInputs = [
gdk-pixbuf
glib
diff --git a/pkgs/development/libraries/libpsl/default.nix b/pkgs/development/libraries/libpsl/default.nix
index 3dddc02aeabdc..10a12dbfa7713 100644
--- a/pkgs/development/libraries/libpsl/default.nix
+++ b/pkgs/development/libraries/libpsl/default.nix
@@ -25,11 +25,11 @@ let
;
in stdenv.mkDerivation rec {
pname = "libpsl";
- version = "0.21.1";
+ version = "0.21.2";
src = fetchurl {
url = "https://github.com/rockdaboot/libpsl/releases/download/${version}/libpsl-${version}.tar.lz";
- sha256 = "1a9kp2rj71jb9q030lmp3zhy33rqxscawbfzhp288fxvazapahv4";
+ sha256 = "sha256-qj1wbEUnhtE0XglNriAc022B8Dz4HWNtXPwQ02WQfxc=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libptytty/default.nix b/pkgs/development/libraries/libptytty/default.nix
index 63f50de287c6e..3ed0cf6a39d0c 100644
--- a/pkgs/development/libraries/libptytty/default.nix
+++ b/pkgs/development/libraries/libptytty/default.nix
@@ -4,6 +4,12 @@
, cmake
}:
+let
+ isCross = !stdenv.buildPlatform.canExecute stdenv.hostPlatform;
+ isStatic = stdenv.hostPlatform.isStatic;
+ isMusl = stdenv.hostPlatform.isMusl;
+in
+
stdenv.mkDerivation rec {
pname = "libptytty";
version = "2.0";
@@ -15,12 +21,24 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
+ cmakeFlags = lib.optional isStatic "-DBUILD_SHARED_LIBS=OFF"
+ ++ lib.optional (isCross || isStatic) "-DTTY_GID_SUPPORT=OFF"
+ # Musl lacks UTMP/WTMP built-in support
+ ++ lib.optionals isMusl [
+ "-DUTMP_SUPPORT=OFF"
+ "-DWTMP_SUPPORT=OFF"
+ "-DLASTLOG_SUPPORT=OFF"
+ ];
+
meta = with lib; {
description = "OS independent and secure pty/tty and utmp/wtmp/lastlog";
homepage = "http://dist.schmorp.de/libptytty";
maintainers = with maintainers; [ rnhmjoj ];
platforms = platforms.unix;
license = licenses.gpl2;
+ # pkgsMusl.pkgsStatic errors as:
+ # ln: failed to create symbolic link './include': File exists
+ broken = isStatic && isMusl;
};
}
diff --git a/pkgs/development/libraries/libqmi/default.nix b/pkgs/development/libraries/libqmi/default.nix
index b261967f5cf26..05a44980f83cc 100644
--- a/pkgs/development/libraries/libqmi/default.nix
+++ b/pkgs/development/libraries/libqmi/default.nix
@@ -1,40 +1,61 @@
{ lib
, stdenv
-, fetchurl
+, fetchFromGitLab
+, fetchpatch2
+, meson
+, ninja
, pkg-config
, gobject-introspection
, gtk-doc
, docbook-xsl-nons
, docbook_xml_dtd_43
+, help2man
, glib
, python3
, libgudev
+, bash-completion
, libmbim
, libqrtr-glib
}:
stdenv.mkDerivation rec {
pname = "libqmi";
- version = "1.30.8";
+ version = "1.32.2";
outputs = [ "out" "dev" "devdoc" ];
- src = fetchurl {
- url = "https://www.freedesktop.org/software/libqmi/${pname}-${version}.tar.xz";
- sha256 = "sha256-hiSCzp460L1l0mQzTuMRzblLnfKGO1txNjCbQbisGZA=";
+ src = fetchFromGitLab {
+ domain = "gitlab.freedesktop.org";
+ owner = "mobile-broadband";
+ repo = "libqmi";
+ rev = version;
+ hash = "sha256-XIbeWgkPiJL8hN8Rb6KFt5Q5sG3KsiEQr0EnhwmI6h8=";
};
+ patches = [
+ # Fix pkg-config file missing qrtr in Requires.
+ # https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/issues/99
+ (fetchpatch2 {
+ url = "https://gitlab.freedesktop.org/mobile-broadband/libqmi/-/commit/7d08150910974c6bd2c29f887c2c6d4a3526e085.patch";
+ hash = "sha256-LFrlm2ZqLqewLGO2FxL5kFYbZ7HaxdxvVHsFHYSgZ4Y=";
+ })
+ ];
+
nativeBuildInputs = [
+ meson
+ ninja
pkg-config
gobject-introspection
python3
gtk-doc
docbook-xsl-nons
docbook_xml_dtd_43
+ help2man
];
buildInputs = [
libgudev
+ bash-completion
libmbim
];
@@ -43,16 +64,19 @@ stdenv.mkDerivation rec {
libqrtr-glib
];
- configureFlags = [
- "--with-udev-base-dir=${placeholder "out"}/lib/udev"
- "--enable-gtk-doc=${if (stdenv.buildPlatform == stdenv.hostPlatform) then "yes" else "no"}"
- "--enable-introspection=${if (stdenv.buildPlatform == stdenv.hostPlatform) then "yes" else "no"}"
+ mesonFlags = [
+ "-Dudevdir=${placeholder "out"}/lib/udev"
+ (lib.mesonBool "gtk_doc" (stdenv.buildPlatform == stdenv.hostPlatform))
+ (lib.mesonBool "introspection" (stdenv.buildPlatform == stdenv.hostPlatform))
];
- enableParallelBuilding = true;
-
doCheck = true;
+ postPatch = ''
+ patchShebangs \
+ build-aux/qmi-codegen/qmi-codegen
+ '';
+
meta = with lib; {
homepage = "https://www.freedesktop.org/wiki/Software/libqmi/";
description = "Modem protocol helper library";
diff --git a/pkgs/development/libraries/libqrtr-glib/default.nix b/pkgs/development/libraries/libqrtr-glib/default.nix
index 6e01cda916256..9309c48a8c6a7 100644
--- a/pkgs/development/libraries/libqrtr-glib/default.nix
+++ b/pkgs/development/libraries/libqrtr-glib/default.nix
@@ -45,7 +45,6 @@ stdenv.mkDerivation rec {
];
buildInputs = [
- gobject-introspection
glib
];
diff --git a/pkgs/development/libraries/libraw/default.nix b/pkgs/development/libraries/libraw/default.nix
index 758b00febf5fc..26d7616ba8f00 100644
--- a/pkgs/development/libraries/libraw/default.nix
+++ b/pkgs/development/libraries/libraw/default.nix
@@ -1,14 +1,14 @@
{ lib, stdenv, fetchFromGitHub, autoreconfHook, lcms2, pkg-config }:
-stdenv.mkDerivation {
+stdenv.mkDerivation rec {
pname = "libraw";
- version = "0.20.2.p2";
+ version = "0.21.1";
src = fetchFromGitHub {
owner = "LibRaw";
repo = "LibRaw";
- rev = "fedad11e87daad7b7d389a3ef84ccf10b5e84710"; # current 0.20-stable branch
- sha256 = "1mklf8lzybzyg75ja34822xlv6h9nw93griyrjjna7darl1dyvja";
+ rev = version;
+ sha256 = "sha256-K9mULf6V/TCl5Vu4iuIdSGF9HzQlgNQLRFHIpNbmAlY";
};
outputs = [ "out" "lib" "dev" "doc" ];
@@ -22,7 +22,7 @@ stdenv.mkDerivation {
meta = with lib; {
description = "Library for reading RAW files obtained from digital photo cameras (CRW/CR2, NEF, RAF, DNG, and others)";
homepage = "https://www.libraw.org/";
- license = licenses.gpl2Plus;
+ license = with licenses; [ cddl lgpl2Plus ];
platforms = platforms.unix;
};
}
diff --git a/pkgs/development/libraries/libraw/unstable.nix b/pkgs/development/libraries/libraw/unstable.nix
deleted file mode 100644
index 3f19bb53c4e64..0000000000000
--- a/pkgs/development/libraries/libraw/unstable.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ libraw, fetchFromGitHub }:
-
-libraw.overrideAttrs (_: rec {
- version = "unstable-2021-12-03";
-
- src = fetchFromGitHub {
- owner = "LibRaw";
- repo = "LibRaw";
- rev = "52b2fc52e93a566e7e05eaa44cada58e3360b6ad";
- sha256 = "kW0R4iPuqnFuWYDrl46ok3kaPcGgY2MqZT7mqVX+BDQ=";
- };
-})
diff --git a/pkgs/development/libraries/librsvg/default.nix b/pkgs/development/libraries/librsvg/default.nix
index a60da602e0709..a78bf86a18c3e 100644
--- a/pkgs/development/libraries/librsvg/default.nix
+++ b/pkgs/development/libraries/librsvg/default.nix
@@ -71,8 +71,6 @@ stdenv.mkDerivation rec {
bzip2
pango
libintl
- ] ++ lib.optionals withIntrospection [
- gobject-introspection
] ++ lib.optionals stdenv.isDarwin [
ApplicationServices
Foundation
diff --git a/pkgs/development/libraries/libsecret/default.nix b/pkgs/development/libraries/libsecret/default.nix
index fd2cadf1602db..4a2ad99af4d9c 100644
--- a/pkgs/development/libraries/libsecret/default.nix
+++ b/pkgs/development/libraries/libsecret/default.nix
@@ -52,7 +52,6 @@ stdenv.mkDerivation rec {
buildInputs = [
libgcrypt
- gobject-introspection
];
propagatedBuildInputs = [
@@ -88,7 +87,7 @@ stdenv.mkDerivation rec {
dbus-run-session \
--config-file=${dbus}/share/dbus-1/session.conf \
- meson test --print-errorlogs
+ meson test --print-errorlogs --timeout-multiplier 0
runHook postCheck
'';
diff --git a/pkgs/development/libraries/libssh/default.nix b/pkgs/development/libraries/libssh/default.nix
index dd202d4a2954d..b1cb2fc4570c2 100644
--- a/pkgs/development/libraries/libssh/default.nix
+++ b/pkgs/development/libraries/libssh/default.nix
@@ -15,11 +15,11 @@
stdenv.mkDerivation rec {
pname = "libssh";
- version = "0.10.0";
+ version = "0.10.4";
src = fetchurl {
url = "https://www.libssh.org/files/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
- sha256 = "sha256-DcFYxTTNg4rQt4WoLexYbeQNp+CWUjrmwIybe9KvC1c=";
+ sha256 = "sha256-BzksVKthR2KI0cHwp8VXtQIReXrQDDTDryu8TbxL2X0=";
};
postPatch = ''
diff --git a/pkgs/development/libraries/libtiff/default.nix b/pkgs/development/libraries/libtiff/default.nix
index 892ed71583d32..f2147632eb7c8 100644
--- a/pkgs/development/libraries/libtiff/default.nix
+++ b/pkgs/development/libraries/libtiff/default.nix
@@ -1,5 +1,6 @@
{ lib, stdenv
, fetchFromGitLab
+, fetchpatch
, nix-update-script
, autoreconfHook
@@ -38,6 +39,11 @@ stdenv.mkDerivation rec {
# libc++abi 11 has an `#include `, this picks up files name
# `version` in the project's include paths
./rename-version.patch
+ (fetchpatch {
+ name = "CVE-2022-48281.patch";
+ url = "https://gitlab.com/libtiff/libtiff/-/commit/d1b6b9c1b3cae2d9e37754506c1ad8f4f7b646b5.diff";
+ sha256 = "sha256-FWUlyJyHXac6fuM5f9PG33kcF5Bm4fyFmYnaDal46iM=";
+ })
];
postPatch = ''
diff --git a/pkgs/development/libraries/libunistring/default.nix b/pkgs/development/libraries/libunistring/default.nix
index 7da2c46fafe23..8c899268f7d1c 100644
--- a/pkgs/development/libraries/libunistring/default.nix
+++ b/pkgs/development/libraries/libunistring/default.nix
@@ -37,7 +37,8 @@ stdenv.mkDerivation rec {
./unistdio/test-u16-vasnprintf3.sh: line 16: ./test-u16-vasnprintf1: No such file or directory
FAIL unistdio/test-u16-vasnprintf3.sh (exit status: 1)
*/
- enableParallelBuilding = false;
+ enableParallelChecking = false;
+ enableParallelBuilding = true;
meta = {
homepage = "https://www.gnu.org/software/libunistring/";
diff --git a/pkgs/development/libraries/libuv/default.nix b/pkgs/development/libraries/libuv/default.nix
index a350cd378bce9..8a86bc46d4da2 100644
--- a/pkgs/development/libraries/libuv/default.nix
+++ b/pkgs/development/libraries/libuv/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, fetchFromGitHub, autoconf, automake, libtool, pkg-config, ApplicationServices, CoreServices }:
+{ stdenv, lib, fetchFromGitHub, fetchpatch, autoconf, automake, libtool, pkg-config, ApplicationServices, CoreServices, pkgsStatic }:
stdenv.mkDerivation rec {
version = "1.44.2";
@@ -11,6 +11,15 @@ stdenv.mkDerivation rec {
sha256 = "sha256-K6v+00basjI32ON27ZjC5spQi/zWCcslDwQwyosq2iY=";
};
+ patches = [
+ # Fix tests for statically linked variant upstream PR is
+ # https://github.com/libuv/libuv/pull/3735
+ (fetchpatch {
+ url = "https://github.com/libuv/libuv/commit/9d898acc564351dde74e9ed9865144e5c41f5beb.patch";
+ sha256 = "sha256-6XsjrseD8a+ny887EKOX0NmHocLMXGf2YL13vkNHUZ0=";
+ })
+ ];
+
postPatch = let
toDisable = [
"getnameinfo_basic" "udp_send_hang_loop" # probably network-dependent
@@ -21,6 +30,10 @@ stdenv.mkDerivation rec {
"get_passwd" # passed on NixOS but failed on other Linuxes
"tcp_writealot" "udp_multicast_join" "udp_multicast_join6" # times out sometimes
"fs_fstat" # https://github.com/libuv/libuv/issues/2235#issuecomment-1012086927
+
+ # Assertion failed in test/test-tcp-bind6-error.c on line 60: r == UV_EADDRINUSE
+ # Assertion failed in test/test-tcp-bind-error.c on line 99: r == UV_EADDRINUSE
+ "tcp_bind6_error_addrinuse" "tcp_bind_error_addrinuse_listen"
] ++ lib.optionals stdenv.isDarwin [
# Sometimes: timeout (no output), failed uv_listen. Someone
# should report these failures to libuv team. There tests should
@@ -66,6 +79,8 @@ stdenv.mkDerivation rec {
# Some of the tests use localhost networking.
__darwinAllowLocalNetworking = true;
+ passthru.tests.static = pkgsStatic.libuv;
+
meta = with lib; {
description = "A multi-platform support library with a focus on asynchronous I/O";
homepage = "https://libuv.org/";
diff --git a/pkgs/development/libraries/libvirt-glib/default.nix b/pkgs/development/libraries/libvirt-glib/default.nix
index 566a1c1b83fa7..cff3b32cb7b2e 100644
--- a/pkgs/development/libraries/libvirt-glib/default.nix
+++ b/pkgs/development/libraries/libvirt-glib/default.nix
@@ -55,8 +55,6 @@ stdenv.mkDerivation rec {
libxml2
] ++ lib.optionals stdenv.isLinux [
libcap_ng
- ] ++ lib.optionals withIntrospection [
- gobject-introspection
];
strictDeps = true;
diff --git a/pkgs/development/libraries/libvisual/default.nix b/pkgs/development/libraries/libvisual/default.nix
index 3e61ee8a6a134..ea62117951ee9 100644
--- a/pkgs/development/libraries/libvisual/default.nix
+++ b/pkgs/development/libraries/libvisual/default.nix
@@ -1,22 +1,52 @@
-{ lib, stdenv, fetchurl, pkg-config, glib }:
+{ lib
+, stdenv
+, fetchurl
+, fetchpatch
+, SDL
+, autoreconfHook
+, glib
+, pkg-config
+}:
stdenv.mkDerivation rec {
pname = "libvisual";
- version = "0.4.0";
+ version = "0.4.1";
src = fetchurl {
url = "mirror://sourceforge/libvisual/${pname}-${version}.tar.gz";
- sha256 = "1my1ipd5k1ixag96kwgf07bgxkjlicy9w22jfxb2kq95f6wgsk8b";
+ hash = "sha256-qhKHdBf3bTZC2fTHIzAjgNgzF1Y51jpVZB0Bkopd230=";
};
- nativeBuildInputs = [ pkg-config ];
- buildInputs = [ glib ];
+ patches = [
+ # pull upstream fix for SDL1 cross-compilation.
+ # https://github.com/Libvisual/libvisual/pull/238
+ (fetchpatch {
+ name = "sdl-cross-prereq.patch";
+ url = "https://github.com/Libvisual/libvisual/commit/7902d24aa1a552619a5738339b3823e90dd3b865.patch";
+ hash = "sha256-84u8klHDAw/q4d+9L4ROAr7XsbXItHrhaEKkTEMSPcc=";
+ # remove extra libvisual prefix
+ stripLen = 1;
+ # pull in only useful configure.ac changes.
+ excludes = [ "Makefile.am" ];
+ })
+ (fetchpatch {
+ name = "sdl-cross-pc.patch";
+ url = "https://github.com/Libvisual/libvisual/commit/f79a2e8d21ad1d7fe26e2aa83cea4c9f48f9e392.patch";
+ hash = "sha256-8c7SdLxXC8K9BAwj7DzozsZAcbs5l1xuBqky9LJ1MfM=";
+ # remove extra libvisual prefix
+ stripLen = 1;
+ })
+ ];
- hardeningDisable = [ "format" ];
+ strictDeps = true;
+ nativeBuildInputs = [ autoreconfHook pkg-config ];
+ buildInputs = [ SDL glib ];
configureFlags = lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
"ac_cv_func_malloc_0_nonnull=yes"
"ac_cv_func_realloc_0_nonnull=yes"
+ # Remove once "sdl-cross-prereq.patch" patch above is removed.
+ "--disable-lv-tool"
];
meta = {
diff --git a/pkgs/development/libraries/libvmaf/default.nix b/pkgs/development/libraries/libvmaf/default.nix
index e7add08871a6c..c0fc4d1556f3c 100644
--- a/pkgs/development/libraries/libvmaf/default.nix
+++ b/pkgs/development/libraries/libvmaf/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchFromGitHub, meson, ninja, nasm }:
+{ lib, stdenv, fetchFromGitHub, fetchpatch, meson, ninja, nasm }:
stdenv.mkDerivation rec {
pname = "libvmaf";
@@ -13,6 +13,15 @@ stdenv.mkDerivation rec {
sourceRoot = "source/libvmaf";
+ patches = [
+ # Backport fix for non-Linux, non-Darwin platforms.
+ (fetchpatch {
+ url = "https://github.com/Netflix/vmaf/commit/f47640f9ffee9494571bd7c9622e353660c93fc4.patch";
+ stripLen = 1;
+ sha256 = "rsTKuqp8VJG5DBDpixPke3LrdfjKzUO945i+iL0n7CY=";
+ })
+ ];
+
nativeBuildInputs = [ meson ninja nasm ];
mesonFlags = [ "-Denable_avx512=true" ];
diff --git a/pkgs/development/libraries/libvterm-neovim/default.nix b/pkgs/development/libraries/libvterm-neovim/default.nix
index ca16063cca6b9..bbbceab3ab78a 100644
--- a/pkgs/development/libraries/libvterm-neovim/default.nix
+++ b/pkgs/development/libraries/libvterm-neovim/default.nix
@@ -8,11 +8,11 @@
stdenv.mkDerivation rec {
pname = "libvterm-neovim";
# Releases are not tagged, look at commit history to find latest release
- version = "0.3";
+ version = "0.3.1";
src = fetchurl {
url = "https://www.leonerd.org.uk/code/libvterm/libvterm-${version}.tar.gz";
- sha256 = "sha256-YesNZijFK98CkA39RGiqhqGnElIourimcyiYGIdIM1g=";
+ sha256 = "sha256-JaitnBVIU2jf0Kip3KGuyP6lwn2j+nTsUY1dN4fww5c=";
};
nativeBuildInputs = [ perl libtool ];
diff --git a/pkgs/development/libraries/libwacom/default.nix b/pkgs/development/libraries/libwacom/default.nix
index 24092d3286958..dbc5008a1a491 100644
--- a/pkgs/development/libraries/libwacom/default.nix
+++ b/pkgs/development/libraries/libwacom/default.nix
@@ -12,7 +12,7 @@
stdenv.mkDerivation rec {
pname = "libwacom";
- version = "2.4.0";
+ version = "2.6.0";
outputs = [ "out" "dev" ];
@@ -20,7 +20,7 @@ stdenv.mkDerivation rec {
owner = "linuxwacom";
repo = "libwacom";
rev = "libwacom-${version}";
- sha256 = "sha256-9uhnO+MqB7tAnSXjBcJWCzHGiz9izun4nVjFb17G8Gg=";
+ sha256 = "sha256-9zqW6zPrFcxv/yAAtFgdVavKVMXeDBoMP3E/XriUcT0=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/libraries/libxkbcommon/libxkbcommon_7.nix b/pkgs/development/libraries/libxkbcommon/libxkbcommon_7.nix
index 6578a86e35b1b..3997ceb623f38 100644
--- a/pkgs/development/libraries/libxkbcommon/libxkbcommon_7.nix
+++ b/pkgs/development/libraries/libxkbcommon/libxkbcommon_7.nix
@@ -19,6 +19,11 @@ stdenv.mkDerivation rec {
"--with-x-locale-root=${libX11.out}/share/X11/locale"
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ ];
+
preBuild = lib.optionalString stdenv.isDarwin ''
sed -i 's/,--version-script=.*$//' Makefile
'';
diff --git a/pkgs/development/libraries/libxml2/default.nix b/pkgs/development/libraries/libxml2/default.nix
index 6e8936f7ce63d..23123940057dc 100644
--- a/pkgs/development/libraries/libxml2/default.nix
+++ b/pkgs/development/libraries/libxml2/default.nix
@@ -11,7 +11,10 @@
, ncurses
, findXMLCatalogs
, libiconv
-, pythonSupport ? enableShared
+# Python limits cross-compilation to an allowlist of host OSes.
+# https://github.com/python/cpython/blob/dfad678d7024ab86d265d84ed45999e031a03691/configure.ac#L534-L562
+, pythonSupport ? enableShared &&
+ (stdenv.hostPlatform == stdenv.buildPlatform || stdenv.hostPlatform.isCygwin || stdenv.hostPlatform.isLinux || stdenv.hostPlatform.isWasi)
, icuSupport ? false
, icu
, enableShared ? stdenv.hostPlatform.libc != "msvcrt" && !stdenv.hostPlatform.isStatic
diff --git a/pkgs/development/libraries/maplibre-gl-native/default.nix b/pkgs/development/libraries/maplibre-gl-native/default.nix
index 568f3fbe64e2f..8d6c0664ca131 100644
--- a/pkgs/development/libraries/maplibre-gl-native/default.nix
+++ b/pkgs/development/libraries/maplibre-gl-native/default.nix
@@ -9,6 +9,7 @@
, libuv
, glfw3
, rapidjson
+, stdenv
}:
mkDerivation rec {
@@ -55,6 +56,11 @@ mkDerivation rec {
"-DMBGL_WITH_QT_HEADLESS=OFF"
];
+ NIX_CFLAGS_COMPILE = lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12") [
+ # Needed with GCC 12 but problematic with some old GCCs
+ "-Wno-error=use-after-free"
+ ];
+
meta = with lib; {
description = "Open-source alternative to Mapbox GL Native";
homepage = "https://maplibre.org/";
diff --git a/pkgs/development/libraries/mesa/default.nix b/pkgs/development/libraries/mesa/default.nix
index 56fa74e5c0c51..52633a6d21649 100644
--- a/pkgs/development/libraries/mesa/default.nix
+++ b/pkgs/development/libraries/mesa/default.nix
@@ -28,9 +28,9 @@
"tegra" # Nvidia Tegra SoCs
"v3d" # Broadcom VC5 (Raspberry Pi 4)
"vc4" # Broadcom VC4 (Raspberry Pi 0-3)
- ] ++ lib.optionals stdenv.isx86_64 [
- "iris" # new Intel, could work on non-x86_64 with PCIe cards, but doesn't build as of 22.3.4
- "crocus" # Intel legacy, x86_64 only
+ ] ++ lib.optionals stdenv.hostPlatform.isx86 [
+ "iris" # new Intel, could work on non-x86 with PCIe cards, but doesn't build as of 22.3.4
+ "crocus" # Intel legacy, x86 only
]
else [ "auto" ]
, vulkanDrivers ?
@@ -326,10 +326,6 @@ self = stdenv.mkDerivation {
NIX_CFLAGS_COMPILE = lib.optionals stdenv.isDarwin [ "-fno-common" ] ++ lib.optionals enableOpenCL [
"-UPIPE_SEARCH_DIR"
"-DPIPE_SEARCH_DIR=\"${placeholder "opencl"}/lib/gallium-pipe\""
-
- # Work around regression from https://github.com/NixOS/nixpkgs/pull/210004
- # TODO(trofi): remove
- "--sysroot=/"
];
passthru = {
diff --git a/pkgs/development/libraries/newt/default.nix b/pkgs/development/libraries/newt/default.nix
index 6114c4c70d0f7..3ba07c7b5be9a 100644
--- a/pkgs/development/libraries/newt/default.nix
+++ b/pkgs/development/libraries/newt/default.nix
@@ -5,11 +5,11 @@ let
in
stdenv.mkDerivation rec {
pname = "newt";
- version = "0.52.21";
+ version = "0.52.23";
src = fetchurl {
url = "https://releases.pagure.org/${pname}/${pname}-${version}.tar.gz";
- sha256 = "0cdvbancr7y4nrj8257y5n45hmhizr8isynagy4fpsnpammv8pi6";
+ sha256 = "sha256-yqNykHsU7Oz+KY8NUSpi9B0zspBhAkSliu0Hu8WtoSo=";
};
postPatch = ''
diff --git a/pkgs/development/libraries/octomap/default.nix b/pkgs/development/libraries/octomap/default.nix
index 9b1635511ec62..5a2064eb595dc 100644
--- a/pkgs/development/libraries/octomap/default.nix
+++ b/pkgs/development/libraries/octomap/default.nix
@@ -10,10 +10,16 @@ stdenv.mkDerivation rec {
rev = "v${version}";
hash = "sha256-qE5i4dGugm7tR5tgDCpbla/R7hYR/PI8BzrZQ4y6Yz8=";
};
+
sourceRoot = "source/octomap";
nativeBuildInputs = [ cmake ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=deprecated-declarations"
+ ];
+
meta = with lib; {
description = "A probabilistic, flexible, and compact 3D mapping library for robotic systems";
homepage = "https://octomap.github.io/";
diff --git a/pkgs/development/libraries/openbabel/2.nix b/pkgs/development/libraries/openbabel/2.nix
index 3e989561470c6..0cc752d993fb2 100644
--- a/pkgs/development/libraries/openbabel/2.nix
+++ b/pkgs/development/libraries/openbabel/2.nix
@@ -19,6 +19,10 @@ stdenv.mkDerivation rec {
})
];
+ postPatch = ''
+ sed '1i#include ' -i include/openbabel/obutil.h # gcc12
+ '';
+
buildInputs = [ zlib libxml2 eigen python3 cairo pcre ];
nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/development/libraries/openbabel/default.nix b/pkgs/development/libraries/openbabel/default.nix
index a23382d3f892b..fe12bbffa531d 100644
--- a/pkgs/development/libraries/openbabel/default.nix
+++ b/pkgs/development/libraries/openbabel/default.nix
@@ -11,6 +11,10 @@ stdenv.mkDerivation rec {
sha256 = "sha256-wQpgdfCyBAoh4pmj9j7wPTlMtraJ62w/EShxi/olVMY=";
};
+ postPatch = ''
+ sed '1i#include ' -i include/openbabel/obutil.h # gcc12
+ '';
+
buildInputs = [ zlib libxml2 eigen python cairo pcre swig rapidjson ];
nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/development/libraries/opencv/4.x.nix b/pkgs/development/libraries/opencv/4.x.nix
index 2c676e008f00d..4a9af9a5388fb 100644
--- a/pkgs/development/libraries/opencv/4.x.nix
+++ b/pkgs/development/libraries/opencv/4.x.nix
@@ -15,6 +15,7 @@
, ocl-icd
, buildPackages
, qimgv
+, opencv4
, enableJPEG ? true
, libjpeg
@@ -31,8 +32,8 @@
, openjpeg
, enableEigen ? true
, eigen
-, enableOpenblas ? true
-, openblas
+, enableBlas ? true
+, blas
, enableContrib ? true
, enableCuda ? (config.cudaSupport or false) && stdenv.hostPlatform.isx86_64
@@ -74,6 +75,7 @@
, CoreMedia
, MediaToolbox
, bzip2
+, callPackage
}:
let
@@ -93,6 +95,13 @@ let
sha256 = "sha256-meya0J3RdOIeMM46e/6IOVwrKn3t/c0rhwP2WQaybkE=";
};
+ testDataSrc = fetchFromGitHub {
+ owner = "opencv";
+ repo = "opencv_extra";
+ rev = version;
+ sha256 = "sha256-6hAdJdaUgtRGQanQKuY/q6fcXWXFZ3K/oLbGxvksry0=";
+ };
+
# Contrib must be built in order to enable Tesseract support:
buildContrib = enableContrib || enableTesseract || enableOvis;
@@ -171,10 +180,10 @@ let
ade = rec {
src = fetchurl {
url = "https://github.com/opencv/ade/archive/${name}";
- sha256 = "04n9na2bph706bdxnnqfcbga4cyj8kd9s9ni7qyvnpj5v98jwvlm";
+ sha256 = "sha256-TjLRbFbC7MDY9PxIy560ryviBI58cbQwqgc7A7uOHkg=";
};
- name = "v0.1.1f.zip";
- md5 = "b624b995ec9c439cbc2e9e6ee940d3a2";
+ name = "v0.1.2a.zip";
+ md5 = "fa4b3e25167319cb0fa9432ef8281945";
dst = ".cache/ade";
};
@@ -208,13 +217,24 @@ let
opencvFlag = name: enabled: "-DWITH_${name}=${printEnabled enabled}";
+ runAccuracyTests = true;
+ runPerformanceTests = false;
printEnabled = enabled: if enabled then "ON" else "OFF";
+ withOpenblas = (enableBlas && blas.provider.pname == "openblas");
+ #multithreaded openblas conflicts with opencv multithreading, which manifest itself in hung tests
+ #https://github.com/xianyi/OpenBLAS/wiki/Faq/4bded95e8dc8aadc70ce65267d1093ca7bdefc4c#multi-threaded
+ openblas_ = blas.provider.override { singleThreaded = true; };
in
stdenv.mkDerivation {
pname = "opencv";
inherit version src;
+ outputs = [
+ "out"
+ "package_tests"
+ ];
+
postUnpack = lib.optionalString buildContrib ''
cp --no-preserve=mode -r "${contribSrc}/modules" "$NIX_BUILD_TOP/source/opencv_contrib"
'';
@@ -263,12 +283,12 @@ stdenv.mkDerivation {
++ lib.optional enableFfmpeg ffmpeg
++ lib.optionals (enableFfmpeg && stdenv.isDarwin)
[ VideoDecodeAcceleration bzip2 ]
- ++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base ])
+ ++ lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good ])
++ lib.optional enableOvis ogre
++ lib.optional enableGPhoto2 libgphoto2
++ lib.optional enableDC1394 libdc1394
++ lib.optional enableEigen eigen
- ++ lib.optional enableOpenblas openblas
+ ++ lib.optional enableBlas blas.provider
# There is seemingly no compile-time flag for Tesseract. It's
# simply enabled automatically if contrib is built, and it detects
# tesseract & leptonica.
@@ -290,7 +310,8 @@ stdenv.mkDerivation {
NIX_CFLAGS_COMPILE = lib.optionalString enableEXR "-I${ilmbase.dev}/include/OpenEXR";
# Configure can't find the library without this.
- OpenBLAS_HOME = lib.optionalString enableOpenblas openblas;
+ OpenBLAS_HOME = lib.optionalString withOpenblas openblas_.dev;
+ OpenBLAS = lib.optionalString withOpenblas openblas_;
cmakeFlags = [
"-DOPENCV_GENERATE_PKGCONFIG=ON"
@@ -299,8 +320,9 @@ stdenv.mkDerivation {
"-DProtobuf_PROTOC_EXECUTABLE=${lib.getExe buildPackages.protobuf}"
"-DPROTOBUF_UPDATE_FILES=ON"
"-DOPENCV_ENABLE_NONFREE=${printEnabled enableUnfree}"
- "-DBUILD_TESTS=OFF"
- "-DBUILD_PERF_TESTS=OFF"
+ "-DBUILD_TESTS=${printEnabled runAccuracyTests}"
+ "-DBUILD_PERF_TESTS=${printEnabled runPerformanceTests}"
+ "-DCMAKE_SKIP_BUILD_RPATH=ON"
"-DBUILD_DOCS=${printEnabled enableDocs}"
# "OpenCV disables pkg-config to avoid using of host libraries. Consider using PKG_CONFIG_LIBDIR to specify target SYSROOT"
# but we have proper separation of build and host libs :), fixes cross
@@ -334,6 +356,14 @@ stdenv.mkDerivation {
make doxygen
'';
+ preInstall =
+ lib.optionalString (runAccuracyTests || runPerformanceTests) ''
+ mkdir $package_tests
+ cp -R $src/samples $package_tests/
+ ''
+ + lib.optionalString runAccuracyTests "mv ./bin/*test* $package_tests/ \n"
+ + lib.optionalString runPerformanceTests "mv ./bin/*perf* $package_tests/";
+
# By default $out/lib/pkgconfig/opencv4.pc looks something like this:
#
# prefix=/nix/store/g0wnfyjjh4rikkvp22cpkh41naa43i4i-opencv-4.0.0
@@ -368,16 +398,23 @@ stdenv.mkDerivation {
passthru = {
tests = {
- inherit qimgv;
inherit (gst_all_1) gst-plugins-bad;
- } // lib.optionalAttrs (!enablePython) { pythonEnabled = pythonPackages.opencv4; };
+ }
+ // lib.optionalAttrs (!stdenv.isDarwin) { inherit qimgv; }
+ // lib.optionalAttrs (!enablePython) { pythonEnabled = pythonPackages.opencv4; }
+ // lib.optionalAttrs (stdenv.buildPlatform != "x86_64-darwin") {
+ opencv4-tests = callPackage ./tests.nix {
+ inherit enableGStreamer enableGtk2 enableGtk3 runAccuracyTests runPerformanceTests testDataSrc;
+ inherit opencv4;
+ };
+ };
} // lib.optionalAttrs enablePython { pythonPath = [ ]; };
meta = with lib; {
description = "Open Computer Vision Library with more than 500 algorithms";
homepage = "https://opencv.org/";
license = with licenses; if enableUnfree then unfree else bsd3;
- maintainers = with maintainers; [ mdaiter basvandijk ];
+ maintainers = with maintainers; [ basvandijk ];
platforms = with platforms; linux ++ darwin;
};
}
diff --git a/pkgs/development/libraries/opencv/tests.nix b/pkgs/development/libraries/opencv/tests.nix
new file mode 100644
index 0000000000000..5a155a9119b05
--- /dev/null
+++ b/pkgs/development/libraries/opencv/tests.nix
@@ -0,0 +1,70 @@
+{ opencv4
+, testDataSrc
+, stdenv
+, lib
+, runCommand
+, gst_all_1
+, runAccuracyTests
+, runPerformanceTests
+, enableGStreamer
+, enableGtk2
+, enableGtk3
+, xvfb-run
+}:
+let
+ testNames = [
+ "calib3d"
+ "core"
+ "features2d"
+ "flann"
+ "imgcodecs"
+ "imgproc"
+ "ml"
+ "objdetect"
+ "photo"
+ "stitching"
+ "video"
+ #"videoio" # - a lot of GStreamer warnings and failed tests
+ #"dnn" #- some caffe tests failed, probably because github workflow also downloads additional models
+ ] ++ lib.optionals (!stdenv.isAarch64 && enableGStreamer) [ "gapi" ]
+ ++ lib.optionals (enableGtk2 || enableGtk3) [ "highgui" ];
+ perfTestNames = [
+ "calib3d"
+ "core"
+ "features2d"
+ "imgcodecs"
+ "imgproc"
+ "objdetect"
+ "photo"
+ "stitching"
+ "video"
+ ] ++ lib.optionals (!stdenv.isAarch64 && enableGStreamer) [ "gapi" ];
+ testRunner = if stdenv.isDarwin then "" else "${lib.getExe xvfb-run} -a ";
+ testsPreparation = ''
+ touch $out
+ # several tests want a write access, so we have to copy files
+ tmpPath="$(mktemp -d "/tmp/opencv_extra_XXXXXX")"
+ cp -R ${testDataSrc} $tmpPath/opencv_extra
+ chmod -R +w $tmpPath/opencv_extra
+ export OPENCV_TEST_DATA_PATH="$tmpPath/opencv_extra/testdata"
+ export OPENCV_SAMPLES_DATA_PATH="${opencv4.package_tests}/samples/data"
+
+ #ignored tests because of gtest error - "Test code is not available due to compilation error with GCC 11"
+ export GTEST_FILTER="-AsyncAPICancelation/cancel*"
+ '';
+ accuracyTests = lib.optionalString runAccuracyTests ''
+ ${ builtins.concatStringsSep "\n"
+ (map (test: "${testRunner}${opencv4.package_tests}/opencv_test_${test} --test_threads=$NIX_BUILD_CORES --gtest_filter=$GTEST_FILTER" ) testNames)
+ }
+ '';
+ perfomanceTests = lib.optionalString runPerformanceTests ''
+ ${ builtins.concatStringsSep "\n"
+ (map (test: "${testRunner}${opencv4.package_tests}/opencv_perf_${test} --perf_impl=plain --perf_min_samples=10 --perf_force_samples=10 --perf_verify_sanity --skip_unstable=1 --gtest_filter=$GTEST_FILTER") perfTestNames)
+ }
+ '';
+in
+runCommand "opencv4-tests"
+{
+ nativeBuildInputs = lib.optionals enableGStreamer (with gst_all_1; [ gstreamer gst-plugins-base gst-plugins-good ]);
+}
+ (testsPreparation + accuracyTests + perfomanceTests)
diff --git a/pkgs/development/libraries/opendbx/default.nix b/pkgs/development/libraries/opendbx/default.nix
index 0460f012424c3..ce8064cdc1eb9 100644
--- a/pkgs/development/libraries/opendbx/default.nix
+++ b/pkgs/development/libraries/opendbx/default.nix
@@ -19,6 +19,11 @@ stdenv.mkDerivation rec {
buildInputs = [ readline libmysqlclient postgresql sqlite ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-std=c++14"
+ ];
+
meta = with lib; {
broken = stdenv.isDarwin;
description = "Extremely lightweight but extensible database access library written in C";
diff --git a/pkgs/development/libraries/openjpeg/default.nix b/pkgs/development/libraries/openjpeg/default.nix
index ad4206eedfbb4..5c6d6b8a13467 100644
--- a/pkgs/development/libraries/openjpeg/default.nix
+++ b/pkgs/development/libraries/openjpeg/default.nix
@@ -55,10 +55,10 @@ stdenv.mkDerivation rec {
++ lib.optional (jpipLibSupport) jdk;
doCheck = (!stdenv.isAarch64 && !stdenv.hostPlatform.isPower64); # tests fail on aarch64-linux and powerpc64
-
+ nativeCheckInputs = [ jpylyzer ];
checkPhase = ''
substituteInPlace ../tools/ctest_scripts/travis-ci.cmake \
- --replace "JPYLYZER_EXECUTABLE=" "JPYLYZER_EXECUTABLE=\"${jpylyzer}/bin/jpylyzer\" # "
+ --replace "JPYLYZER_EXECUTABLE=" "JPYLYZER_EXECUTABLE=\"$(command -v jpylyzer)\" # "
OPJ_SOURCE_DIR=.. ctest -S ../tools/ctest_scripts/travis-ci.cmake
'';
diff --git a/pkgs/development/libraries/openssl/3.0/CVE-2022-3996.patch b/pkgs/development/libraries/openssl/3.0/CVE-2022-3996.patch
deleted file mode 100644
index 2acedda0e3a49..0000000000000
--- a/pkgs/development/libraries/openssl/3.0/CVE-2022-3996.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 7725e7bfe6f2ce8146b6552b44e0d226be7638e7 Mon Sep 17 00:00:00 2001
-From: Pauli
-Date: Fri, 11 Nov 2022 09:40:19 +1100
-Subject: [PATCH] x509: fix double locking problem
-
-This reverts commit 9aa4be691f5c73eb3c68606d824c104550c053f7 and removed the
-redundant flag setting.
-
-Fixes #19643
-
-Fixes LOW CVE-2022-3996
-
-Reviewed-by: Dmitry Belyavskiy
-Reviewed-by: Tomas Mraz
-(Merged from https://github.com/openssl/openssl/pull/19652)
-
-(cherry picked from commit 4d0340a6d2f327700a059f0b8f954d6160f8eef5)
----
- crypto/x509/pcy_map.c | 4 ----
- 1 file changed, 4 deletions(-)
-
-diff --git a/crypto/x509/pcy_map.c b/crypto/x509/pcy_map.c
-index 05406c6493fc..60dfd1e3203b 100644
---- a/crypto/x509/pcy_map.c
-+++ b/crypto/x509/pcy_map.c
-@@ -73,10 +73,6 @@ int ossl_policy_cache_set_mapping(X509 *x, POLICY_MAPPINGS *maps)
-
- ret = 1;
- bad_mapping:
-- if (ret == -1 && CRYPTO_THREAD_write_lock(x->lock)) {
-- x->ex_flags |= EXFLAG_INVALID_POLICY;
-- CRYPTO_THREAD_unlock(x->lock);
-- }
- sk_POLICY_MAPPING_pop_free(maps, POLICY_MAPPING_free);
- return ret;
-
diff --git a/pkgs/development/libraries/openssl/default.nix b/pkgs/development/libraries/openssl/default.nix
index 4c322997963a6..488613fd489ae 100644
--- a/pkgs/development/libraries/openssl/default.nix
+++ b/pkgs/development/libraries/openssl/default.nix
@@ -216,8 +216,8 @@ in {
openssl_1_1 = common {
- version = "1.1.1s";
- sha256 = "sha256-xawB52Dub/Dath1rK70wFGck0GPrMiGAxvGKb3Tktqo=";
+ version = "1.1.1t";
+ sha256 = "sha256-je6bJL2x3L8MPR6bAvuPa/IhZegH9Fret8lndTaFnTs=";
patches = [
./1.1/nix-ssl-cert-file.patch
@@ -229,8 +229,8 @@ in {
};
openssl_3 = common {
- version = "3.0.7";
- sha256 = "sha256-gwSdBComDmlvYkBqxcCL9wb9hDg/lFzyG9YentlcOW4=";
+ version = "3.0.8";
+ sha256 = "sha256-bBPSvzj98x6sPOKjRwc2c/XWMmM5jx9p0N9KQSU+Sz4=";
patches = [
./3.0/nix-ssl-cert-file.patch
@@ -241,9 +241,6 @@ in {
(if stdenv.hostPlatform.isDarwin
then ./use-etc-ssl-certs-darwin.patch
else ./use-etc-ssl-certs.patch)
-
- # Remove with 3.0.8 release
- ./3.0/CVE-2022-3996.patch
];
withDocs = true;
diff --git a/pkgs/development/libraries/pango/default.nix b/pkgs/development/libraries/pango/default.nix
index 662437659147c..50e2d5736ff0e 100644
--- a/pkgs/development/libraries/pango/default.nix
+++ b/pkgs/development/libraries/pango/default.nix
@@ -16,15 +16,16 @@
, ninja
, glib
, python3
-, gobject-introspection
, x11Support? !stdenv.isDarwin, libXft
+, withIntrospection ? stdenv.hostPlatform.emulatorAvailable buildPackages
+, buildPackages, gobject-introspection
}:
stdenv.mkDerivation rec {
pname = "pango";
version = "1.50.12";
- outputs = [ "bin" "out" "dev" "devdoc" ];
+ outputs = [ "bin" "out" "dev" ] ++ lib.optional withIntrospection "devdoc";
src = fetchurl {
url = "mirror://gnome/sources/${pname}/${lib.versions.majorMinor version}/${pname}-${version}.tar.xz";
@@ -39,9 +40,10 @@ stdenv.mkDerivation rec {
meson ninja
glib # for glib-mkenum
pkg-config
- gobject-introspection
- gi-docgen
python3
+ ] ++ lib.optionals withIntrospection [
+ gi-docgen
+ gobject-introspection
];
buildInputs = [
@@ -64,9 +66,9 @@ stdenv.mkDerivation rec {
];
mesonFlags = [
- "-Dgtk_doc=true"
- ] ++ lib.optionals (!x11Support) [
- "-Dxft=disabled" # only works with x11
+ (lib.mesonBool "gtk_doc" withIntrospection)
+ (lib.mesonEnable "introspection" withIntrospection)
+ (lib.mesonEnable "xft" x11Support)
];
# Fontconfig error: Cannot load default config file
@@ -116,6 +118,6 @@ stdenv.mkDerivation rec {
license = licenses.lgpl2Plus;
maintainers = with maintainers; [ raskin ] ++ teams.gnome.members;
- platforms = platforms.linux ++ platforms.darwin;
+ platforms = platforms.unix;
};
}
diff --git a/pkgs/development/libraries/pipewire/default.nix b/pkgs/development/libraries/pipewire/default.nix
index 8da35364e2b83..53d465542b2bd 100644
--- a/pkgs/development/libraries/pipewire/default.nix
+++ b/pkgs/development/libraries/pipewire/default.nix
@@ -109,8 +109,16 @@ let
url = "https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/fba7083f8ceb210c7c20aceafeb5c9a8767cf705.patch";
hash = "sha256-aZQ4OzK0B5YPq+jQNygxPE0coG2qB0ukbYzyI8E24XM=";
})
+
+ # backport a fix for rust-cbindgen errors in downstream packages
+ # See https://github.com/NixOS/nixpkgs/pull/211872#issuecomment-1415981135 for details.
+ (fetchpatch {
+ url = "https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/caf58ecffb4dc8e2bfa7898d0ed910cf0a82d65f.patch";
+ hash = "sha256-kCQNG0j3lwT01WNfGsdUmKvDHg8tvMfS2eunPyXBV1E=";
+ })
];
+ strictDeps = true;
nativeBuildInputs = [
docutils
doxygen
@@ -119,6 +127,7 @@ let
ninja
pkg-config
python3
+ glib
];
buildInputs = [
diff --git a/pkgs/development/libraries/pmdk/default.nix b/pkgs/development/libraries/pmdk/default.nix
deleted file mode 100644
index 1f02bfa0dab30..0000000000000
--- a/pkgs/development/libraries/pmdk/default.nix
+++ /dev/null
@@ -1,42 +0,0 @@
-{ lib, stdenv, fetchFromGitHub
-, autoconf, libndctl, pkg-config, gnum4, pandoc
-}:
-
-stdenv.mkDerivation rec {
- pname = "pmdk";
- version = "1.11.1";
-
- src = fetchFromGitHub {
- owner = "pmem";
- repo = "pmdk";
- rev = "refs/tags/${version}";
- hash = "sha256-8bnyLtgkKfgIjJkfY/ZS1I9aCYcrz0nrdY7m/TUVWAk=";
- };
-
- nativeBuildInputs = [ autoconf pkg-config gnum4 pandoc ];
- buildInputs = [ libndctl ];
- enableParallelBuilding = true;
-
- outputs = [ "out" "lib" "dev" "man" ];
-
- patchPhase = "patchShebangs utils";
-
- NIX_CFLAGS_COMPILE = "-Wno-error";
-
- installPhase = ''
- make install prefix=$out
-
- mkdir -p $lib $dev $man/share
- mv $out/share/man $man/share/man
- mv $out/include $dev/include
- mv $out/lib $lib/lib
- '';
-
- meta = with lib; {
- description = "Persistent Memory Development Kit";
- homepage = "https://github.com/pmem/pmdk";
- license = licenses.lgpl21;
- maintainers = with maintainers; [ thoughtpolice ];
- platforms = [ "x86_64-linux" ]; # aarch64 is experimental
- };
-}
diff --git a/pkgs/development/libraries/polkit/default.nix b/pkgs/development/libraries/polkit/default.nix
index 5c67eb1b65db4..ec05f890f7794 100644
--- a/pkgs/development/libraries/polkit/default.nix
+++ b/pkgs/development/libraries/polkit/default.nix
@@ -90,7 +90,6 @@ stdenv.mkDerivation rec {
];
buildInputs = [
- gobject-introspection
expat
pam
dbus
diff --git a/pkgs/development/libraries/portaudio/default.nix b/pkgs/development/libraries/portaudio/default.nix
index 22ff1e450c192..d0e9935032ed6 100644
--- a/pkgs/development/libraries/portaudio/default.nix
+++ b/pkgs/development/libraries/portaudio/default.nix
@@ -2,6 +2,7 @@
, stdenv
, fetchurl
, alsa-lib
+, libjack2
, pkg-config
, which
, AudioUnit
@@ -21,7 +22,7 @@ stdenv.mkDerivation rec {
strictDeps = true;
nativeBuildInputs = [ pkg-config which ];
- buildInputs = lib.optional (!stdenv.isDarwin) alsa-lib;
+ buildInputs = [ libjack2 ] ++ lib.optionals (!stdenv.isDarwin) [ alsa-lib ];
configureFlags = [ "--disable-mac-universal" "--enable-cxx" ];
diff --git a/pkgs/development/libraries/qcoro/default.nix b/pkgs/development/libraries/qcoro/default.nix
index 4a288702e2f29..fb5c7570b75ba 100644
--- a/pkgs/development/libraries/qcoro/default.nix
+++ b/pkgs/development/libraries/qcoro/default.nix
@@ -1,5 +1,5 @@
{ stdenv
-, gcc11Stdenv
+, gcc12Stdenv
, lib
, fetchFromGitHub
, cmake
@@ -9,7 +9,7 @@
, wrapQtAppsHook
}:
-gcc11Stdenv.mkDerivation rec {
+gcc12Stdenv.mkDerivation rec {
pname = "qcoro";
version = "0.7.0";
diff --git a/pkgs/development/libraries/qt-5/5.15/default.nix b/pkgs/development/libraries/qt-5/5.15/default.nix
index 2829bb0be0278..31de73b25edcf 100644
--- a/pkgs/development/libraries/qt-5/5.15/default.nix
+++ b/pkgs/development/libraries/qt-5/5.15/default.nix
@@ -64,6 +64,12 @@ let
extraPrefix = "src/3rdparty/";
hash = "sha256-MZGYeMdGzwypfKoSUaa56K3inbcGRx7he/+AFyk5ekA=";
})
+ (fetchpatch {
+ url = "https://raw.githubusercontent.com/Homebrew/formula-patches/7ae178a617d1e0eceb742557e63721af949bd28a/qt5/qt5-webengine-gcc12.patch";
+ stripLen = 1;
+ extraPrefix = "src/3rdparty/";
+ hash = "sha256-s4GsGMJTBNWw2gTJuIEP3tqT82AmTsR2mbj59m2p6rM=";
+ })
] ++ lib.optionals stdenv.isDarwin [
./qtwebengine-darwin-no-platform-check.patch
./qtwebengine-mac-dont-set-dsymutil-path.patch
@@ -205,7 +211,7 @@ let
qmake = makeSetupHook {
name = "qmake-hook";
- deps = [ self.qtbase.dev ];
+ propagatedBuildInputs = [ self.qtbase.dev ];
substitutions = {
inherit debug;
fix_qmake_libtool = ../hooks/fix-qmake-libtool.sh;
@@ -214,7 +220,7 @@ let
wrapQtAppsHook = makeSetupHook {
name = "wrap-qt5-apps-hook";
- deps = [ self.qtbase.dev buildPackages.makeWrapper ]
+ propagatedBuildInputs = [ self.qtbase.dev buildPackages.makeWrapper ]
++ lib.optional stdenv.isLinux self.qtwayland.dev;
} ../hooks/wrap-qt-apps-hook.sh;
};
diff --git a/pkgs/development/libraries/qt-5/5.15/srcs.nix b/pkgs/development/libraries/qt-5/5.15/srcs.nix
index 19f36c337e5c0..0603ae077e478 100644
--- a/pkgs/development/libraries/qt-5/5.15/srcs.nix
+++ b/pkgs/development/libraries/qt-5/5.15/srcs.nix
@@ -42,7 +42,7 @@ lib.mapAttrs mk (lib.importJSON ./srcs-generated.json)
qtwebengine =
let
- branchName = "5.15.11";
+ branchName = "5.15.12";
rev = "v${branchName}-lts";
in
{
@@ -50,7 +50,7 @@ lib.mapAttrs mk (lib.importJSON ./srcs-generated.json)
src = fetchgit {
url = "https://github.com/qt/qtwebengine.git";
- sha256 = "sha256-yrKPof18G10VjrwCn/4E/ywlpATJQZjvmVeM+9hLY0U=";
+ sha256 = "sha256-8EQqSvxw9rqf+64CIbcCb1VXhNx1GNC8eDIgLyYDyvk=";
inherit rev branchName;
fetchSubmodules = true;
leaveDotGit = true;
diff --git a/pkgs/development/libraries/qt-5/hooks/wrap-qt-apps-hook.sh b/pkgs/development/libraries/qt-5/hooks/wrap-qt-apps-hook.sh
index c085cdaca52ea..2127be5e0a2a0 100644
--- a/pkgs/development/libraries/qt-5/hooks/wrap-qt-apps-hook.sh
+++ b/pkgs/development/libraries/qt-5/hooks/wrap-qt-apps-hook.sh
@@ -34,7 +34,7 @@ qtHostPathHook() {
qtWrapperArgs+=(--prefix QML2_IMPORT_PATH : "$qmlDir")
fi
}
-addEnvHooks "$hostOffset" qtHostPathHook
+addEnvHooks "$targetOffset" qtHostPathHook
makeQtWrapper() {
local original="$1"
diff --git a/pkgs/development/libraries/qt-6/default.nix b/pkgs/development/libraries/qt-6/default.nix
index b09521e34e3cc..2577806b5c436 100644
--- a/pkgs/development/libraries/qt-6/default.nix
+++ b/pkgs/development/libraries/qt-6/default.nix
@@ -141,12 +141,12 @@ let
wrapQtAppsHook = makeSetupHook {
name = "wrap-qt6-apps-hook";
- deps = [ buildPackages.makeWrapper ];
+ propagatedBuildInputs = [ buildPackages.makeWrapper ];
} ./hooks/wrap-qt-apps-hook.sh;
qmake = makeSetupHook {
name = "qmake6-hook";
- deps = [ self.qtbase.dev ];
+ propagatedBuildInputs = [ self.qtbase.dev ];
substitutions = {
inherit debug;
fix_qmake_libtool = ./hooks/fix-qmake-libtool.sh;
diff --git a/pkgs/development/libraries/re2/default.nix b/pkgs/development/libraries/re2/default.nix
index dafc91e6dcfa6..8b6d945d25529 100644
--- a/pkgs/development/libraries/re2/default.nix
+++ b/pkgs/development/libraries/re2/default.nix
@@ -12,13 +12,13 @@
stdenv.mkDerivation rec {
pname = "re2";
- version = "2022-12-01";
+ version = "2023-02-01";
src = fetchFromGitHub {
owner = "google";
repo = "re2";
rev = version;
- hash = "sha256-RmPXfavSKVnnl/RJ5aTjc/GbkPz+EXiFg1n5e4s6wjw=";
+ hash = "sha256-YENgO5Ig6SLNdGEsdhKNb4THhocyAv1MMcg4FVYBB7U=";
};
outputs = [ "out" "dev" ];
diff --git a/pkgs/development/libraries/rocksdb/default.nix b/pkgs/development/libraries/rocksdb/default.nix
index 40b927ff0b8f5..79cd1b86fadb7 100644
--- a/pkgs/development/libraries/rocksdb/default.nix
+++ b/pkgs/development/libraries/rocksdb/default.nix
@@ -40,8 +40,16 @@ stdenv.mkDerivation rec {
"tools"
];
- NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isGNU "-Wno-error=deprecated-copy -Wno-error=pessimizing-move"
- + lib.optionalString stdenv.cc.isClang "-Wno-error=unused-private-field -faligned-allocation";
+ NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [
+ "-Wno-error=deprecated-copy"
+ "-Wno-error=pessimizing-move"
+ # Needed with GCC 12
+ "-Wno-error=format-truncation"
+ "-Wno-error=maybe-uninitialized"
+ ] ++ lib.optionals stdenv.cc.isClang [
+ "-Wno-error=unused-private-field"
+ "-faligned-allocation"
+ ];
cmakeFlags = [
"-DPORTABLE=1"
diff --git a/pkgs/development/libraries/roctracer/default.nix b/pkgs/development/libraries/roctracer/default.nix
index ee844bb417ba9..87cf7d0819ad1 100644
--- a/pkgs/development/libraries/roctracer/default.nix
+++ b/pkgs/development/libraries/roctracer/default.nix
@@ -62,6 +62,11 @@ stdenv.mkDerivation (finalAttrs: {
"-DCMAKE_INSTALL_INCLUDEDIR=include"
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ ];
+
postPatch = ''
export HIP_DEVICE_LIB_PATH=${rocm-device-libs}/amdgcn/bitcode
'' + lib.optionalString (!buildTests) ''
diff --git a/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix b/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
index c4faadd2a5eb9..7144a17c18b40 100644
--- a/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
+++ b/pkgs/development/libraries/science/astronomy/indilib/indi-3rdparty.nix
@@ -48,6 +48,8 @@ stdenv.mkDerivation rec {
--replace "/etc/udev/rules.d" "lib/udev/rules.d" \
--replace "/lib/firmware" "lib/firmware"
done
+
+ sed '1i#include ' -i indi-duino/libfirmata/src/firmata.cpp # gcc12
'';
cmakeFlags = [
diff --git a/pkgs/development/libraries/spirv-headers/default.nix b/pkgs/development/libraries/spirv-headers/default.nix
index 78dc373d4ab6e..706d3449286e2 100644
--- a/pkgs/development/libraries/spirv-headers/default.nix
+++ b/pkgs/development/libraries/spirv-headers/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "spirv-headers";
- version = "1.3.236.0";
+ version = "1.3.239.0";
src = fetchFromGitHub {
owner = "KhronosGroup";
repo = "SPIRV-Headers";
rev = "sdk-${version}";
- hash = "sha256-eWI1MyIWxcg1JepRsnHBmitehDigDa+dR8kXvIkYejY=";
+ hash = "sha256-bjiWGSmpEbydXtCLP8fRZfPBvdCzBoJxKXTx3BroQbg=";
};
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/libraries/swiftshader/default.nix b/pkgs/development/libraries/swiftshader/default.nix
index 2c508a3735f96..28aabc03682be 100644
--- a/pkgs/development/libraries/swiftshader/default.nix
+++ b/pkgs/development/libraries/swiftshader/default.nix
@@ -13,6 +13,12 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake python3 jq ];
buildInputs = [ libX11 libXext zlib ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ "-Wno-error=uninitialized"
+ ];
+
# Make sure we include the drivers and icd files in the output as the cmake
# generated install command only puts in the spirv-tools stuff.
installPhase = ''
diff --git a/pkgs/development/libraries/tbb/default.nix b/pkgs/development/libraries/tbb/default.nix
index 21fddb1656270..e0c48bc6dcefb 100644
--- a/pkgs/development/libraries/tbb/default.nix
+++ b/pkgs/development/libraries/tbb/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
pname = "tbb";
version = "2020.3";
+ outputs = [ "out" "dev" ];
+
src = fetchFromGitHub {
owner = "oneapi-src";
repo = "oneTBB";
diff --git a/pkgs/development/libraries/umockdev/default.nix b/pkgs/development/libraries/umockdev/default.nix
index 6b7f58bcd6daa..a6d2a9ea00cd6 100644
--- a/pkgs/development/libraries/umockdev/default.nix
+++ b/pkgs/development/libraries/umockdev/default.nix
@@ -48,7 +48,6 @@ stdenv.mkDerivation rec {
];
buildInputs = [
- gobject-introspection
glib
systemd
libgudev
diff --git a/pkgs/development/libraries/unittest-cpp/default.nix b/pkgs/development/libraries/unittest-cpp/default.nix
index 6f27a71b3ee46..e9f67a74f9a3e 100644
--- a/pkgs/development/libraries/unittest-cpp/default.nix
+++ b/pkgs/development/libraries/unittest-cpp/default.nix
@@ -1,4 +1,9 @@
-{lib, stdenv, fetchFromGitHub, cmake}:
+{ lib
+, stdenv
+, fetchFromGitHub
+, fetchpatch
+, cmake
+}:
stdenv.mkDerivation rec {
pname = "unittest-cpp";
@@ -11,6 +16,14 @@ stdenv.mkDerivation rec {
sha256 = "0sxb3835nly1jxn071f59fwbdzmqi74j040r81fanxyw3s1azw0i";
};
+ patches = [
+ # GCC12 Patch
+ (fetchpatch {
+ url = "https://github.com/unittest-cpp/unittest-cpp/pull/185/commits/f361c2a1034c02ba8059648f9a04662d6e2b5553.patch";
+ hash = "sha256-xyhV2VBelw/uktUXSZ3JBxgG+8/Mout/JiXEZVV2+2Y=";
+ })
+ ];
+
nativeBuildInputs = [ cmake ];
doCheck = false;
diff --git a/pkgs/development/libraries/uri/default.nix b/pkgs/development/libraries/uri/default.nix
index 980d073f1281e..6189fcf016de2 100644
--- a/pkgs/development/libraries/uri/default.nix
+++ b/pkgs/development/libraries/uri/default.nix
@@ -11,7 +11,12 @@ stdenv.mkDerivation rec {
sha256 = "148361pixrm94q6v04k13s1msa04bx9yc3djb0lxpa7dlw19vhcd";
};
- NIX_CFLAGS_COMPILE = "-Wno-error=parentheses";
+ NIX_CFLAGS_COMPILE = [
+ "-Wno-error=parentheses"
+ # Needed with GCC 12
+ "-Wno-error=deprecated-declarations"
+ "-Wno-error=nonnull"
+ ];
nativeBuildInputs = [ cmake doxygen ];
diff --git a/pkgs/development/libraries/v8/default.nix b/pkgs/development/libraries/v8/default.nix
index 7ca5080cb74ca..f61d0b6964ab5 100644
--- a/pkgs/development/libraries/v8/default.nix
+++ b/pkgs/development/libraries/v8/default.nix
@@ -110,6 +110,7 @@ stdenv.mkDerivation rec {
--replace "-Wl,-fatal_warnings" ""
''}
touch build/config/gclient_args.gni
+ sed '1i#include ' -i src/heap/cppgc/prefinalizer-handler.h # gcc12
'';
llvmCcAndBintools = symlinkJoin { name = "llvmCcAndBintools"; paths = [ stdenv.cc llvmPackages.llvm ]; };
diff --git a/pkgs/development/libraries/vk-bootstrap/default.nix b/pkgs/development/libraries/vk-bootstrap/default.nix
index ef76d6db9dbc7..bc43da3567d8d 100644
--- a/pkgs/development/libraries/vk-bootstrap/default.nix
+++ b/pkgs/development/libraries/vk-bootstrap/default.nix
@@ -9,14 +9,14 @@
stdenv.mkDerivation rec {
pname = "vk-bootstrap";
- version = "0.6";
+ version = "0.7";
outputs = [ "out" "dev" ];
src = fetchFromGitHub {
owner = "charles-lunarg";
repo = "vk-bootstrap";
rev = "v${version}";
- sha256 = "sha256-T24SCJSGta4yuK58NcQnMeiO3sg9P9/O3kaFJFO/eOE=";
+ hash = "sha256-X3ANqfplrCF1R494+H5/plcwMH7rbW6zpLA4MZrYaoE=";
};
postPatch = ''
diff --git a/pkgs/development/libraries/vulkan-headers/default.nix b/pkgs/development/libraries/vulkan-headers/default.nix
index 8f1202088e58e..e34cf98d5106e 100644
--- a/pkgs/development/libraries/vulkan-headers/default.nix
+++ b/pkgs/development/libraries/vulkan-headers/default.nix
@@ -1,7 +1,7 @@
{ lib, stdenv, fetchFromGitHub, cmake }:
stdenv.mkDerivation rec {
pname = "vulkan-headers";
- version = "1.3.236.0";
+ version = "1.3.239.0";
nativeBuildInputs = [ cmake ];
@@ -9,7 +9,7 @@ stdenv.mkDerivation rec {
owner = "KhronosGroup";
repo = "Vulkan-Headers";
rev = "sdk-${version}";
- hash = "sha256-b1q9QugFH4lieS8CTOyZ3uoQ7bd44G8NPEwRtUPD+24=";
+ hash = "sha256-mzxT6s4ZHShB9tGyyf8jDtVWVEclHPYW+9oKy7v0bC4=";
};
meta = with lib; {
diff --git a/pkgs/development/libraries/vulkan-loader/default.nix b/pkgs/development/libraries/vulkan-loader/default.nix
index 8d38f725a64d6..b45bf4c66be85 100644
--- a/pkgs/development/libraries/vulkan-loader/default.nix
+++ b/pkgs/development/libraries/vulkan-loader/default.nix
@@ -3,14 +3,14 @@
stdenv.mkDerivation rec {
pname = "vulkan-loader";
- version = "1.3.236.0";
+ version = "1.3.239.0";
src = (assert version == vulkan-headers.version;
fetchFromGitHub {
owner = "KhronosGroup";
repo = "Vulkan-Loader";
rev = "sdk-${version}";
- hash = "sha256-Y6OakowZlb40ZatITQCFBK/qSZqSdgTNew1XUFD/jMo=";
+ hash = "sha256-4oxynsbFLmsrpI5NEs7gI50g0XVcaUWuZRn6JKB/+hA=";
});
patches = [ ./fix-pkgconfig.patch ];
diff --git a/pkgs/development/libraries/vulkan-loader/fix-pkgconfig.patch b/pkgs/development/libraries/vulkan-loader/fix-pkgconfig.patch
index b5c3bf4428ab4..42295a67d4667 100644
--- a/pkgs/development/libraries/vulkan-loader/fix-pkgconfig.patch
+++ b/pkgs/development/libraries/vulkan-loader/fix-pkgconfig.patch
@@ -5,10 +5,10 @@ index 153815577..584b15273 100644
@@ -1,7 +1,5 @@
-prefix=@CMAKE_INSTALL_PREFIX@
-exec_prefix=${prefix}
--libdir=${exec_prefix}/@CMAKE_INSTALL_LIBDIR@
--includedir=${prefix}/@CMAKE_INSTALL_INCLUDEDIR@
+-libdir=${exec_prefix}/@CMAKE_INSTALL_REL_LIBDIR_PC@
+-includedir=${prefix}/@CMAKE_INSTALL_REL_INCLUDEDIR_PC@
+libdir=@CMAKE_INSTALL_LIBDIR@
+includedir=@CMAKE_INSTALL_INCLUDEDIR@
-
+
Name: @CMAKE_PROJECT_NAME@
Description: Vulkan Loader
diff --git a/pkgs/development/libraries/wildmidi/default.nix b/pkgs/development/libraries/wildmidi/default.nix
index 5e8adaf0c4258..8877365e1dd6a 100644
--- a/pkgs/development/libraries/wildmidi/default.nix
+++ b/pkgs/development/libraries/wildmidi/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "wildmidi";
- version = "0.4.4";
+ version = "0.4.5";
src = fetchFromGitHub {
owner = "Mindwerks";
repo = "wildmidi";
rev = "${pname}-${version}";
- sha256 = "08fbbsvw6pkwwqarjwcvdp8mq4zn5sgahf025hynwc6rvf4sp167";
+ sha256 = "sha256-5El8aDpAgjrW0/4lphZEF+Hfv9Xr7J4DMk1b/Tb+0TU=";
};
nativeBuildInputs = [ cmake ];
diff --git a/pkgs/development/perl-modules/strip-nondeterminism/default.nix b/pkgs/development/perl-modules/strip-nondeterminism/default.nix
index d33362d4a1708..806ad65b737b9 100644
--- a/pkgs/development/perl-modules/strip-nondeterminism/default.nix
+++ b/pkgs/development/perl-modules/strip-nondeterminism/default.nix
@@ -11,7 +11,7 @@
buildPerlPackage rec {
pname = "strip-nondeterminism";
- version = "1.13.0";
+ version = "1.13.1";
outputs = [ "out" "dev" ]; # no "devdoc"
@@ -20,7 +20,7 @@ buildPerlPackage rec {
repo = "strip-nondeterminism";
domain = "salsa.debian.org";
rev = version;
- sha256 = "sha256-KZQeoJYBPJzUvz4wlUZbiGODbpCp7/52dsg5OemKDkI=";
+ sha256 = "czx9UhdgTsQSfDNo1mMOXCM/3/nuNe+cPZeyy2xdnKs=";
};
strictDeps = true;
diff --git a/pkgs/development/python-modules/Cython/default.nix b/pkgs/development/python-modules/Cython/default.nix
index 00aef53cc1b29..5366fb078678c 100644
--- a/pkgs/development/python-modules/Cython/default.nix
+++ b/pkgs/development/python-modules/Cython/default.nix
@@ -24,12 +24,12 @@ let
in buildPythonPackage rec {
pname = "cython";
- version = "0.29.32";
+ version = "0.29.33";
src = fetchPypi {
pname = "Cython";
inherit version;
- hash = "sha256-hzPPR1i3kwTypOOev6xekjQbzke8zrJsElQ5iy+MGvc=";
+ hash = "sha256-UEB2TEpNLOlko5XaJPDRrlgUSZXauSxrlvRMP01yKGo=";
};
nativeBuildInputs = [
@@ -46,11 +46,7 @@ in buildPythonPackage rec {
# backport Cython 3.0 trashcan support (https://github.com/cython/cython/pull/2842) to 0.X series.
# it does not affect Python code unless the code explicitly uses the feature.
# trashcan support is needed to avoid stack overflows during object deallocation in sage (https://trac.sagemath.org/ticket/27267)
- (fetchpatch {
- name = "trashcan.patch";
- url = "https://github.com/cython/cython/commit/f781880b6780117660b2026caadf4a6d7905722f.patch";
- sha256 = "sha256-SnjaJdBZxm3O5gJ5Dxut6+eeVtZv+ygUUNwAwgoiFxg=";
- })
+ ./trashcan.patch
# The above commit introduces custom trashcan macros, as well as
# compiler changes to use them in Cython-emitted code. The latter
# change is still useful, but the former has been upstreamed as of
@@ -79,6 +75,7 @@ in buildPythonPackage rec {
# doCheck = !stdenv.isDarwin;
meta = {
+ changelog = "https://github.com/cython/cython/blob/${version}/CHANGES.rst";
description = "An optimising static compiler for both the Python programming language and the extended Cython programming language";
homepage = "https://cython.org";
license = lib.licenses.asl20;
diff --git a/pkgs/development/python-modules/Cython/trashcan.patch b/pkgs/development/python-modules/Cython/trashcan.patch
new file mode 100644
index 0000000000000..398422e76f395
--- /dev/null
+++ b/pkgs/development/python-modules/Cython/trashcan.patch
@@ -0,0 +1,354 @@
+From 1b77e35d848340f2c5f4c9b82965c25a0572d48f Mon Sep 17 00:00:00 2001
+From: Jeroen Demeyer
+Date: Thu, 14 Feb 2019 10:02:41 +0100
+Subject: [PATCH] @cython.trashcan directive to enable the Python trashcan for
+ deallocations
+
+---
+ Cython/Compiler/ModuleNode.py | 10 +++
+ Cython/Compiler/Options.py | 2 +
+ Cython/Compiler/PyrexTypes.py | 8 +-
+ Cython/Compiler/Symtab.py | 18 +++-
+ Cython/Utility/ExtensionTypes.c | 43 ++++++++++
+ tests/run/trashcan.pyx | 148 ++++++++++++++++++++++++++++++++
+ 6 files changed, 227 insertions(+), 2 deletions(-)
+ create mode 100644 tests/run/trashcan.pyx
+
+diff --git a/Cython/Compiler/ModuleNode.py b/Cython/Compiler/ModuleNode.py
+index 56845330d..3a3e8a956 100644
+--- a/Cython/Compiler/ModuleNode.py
++++ b/Cython/Compiler/ModuleNode.py
+@@ -1443,6 +1443,7 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
+
+ is_final_type = scope.parent_type.is_final_type
+ needs_gc = scope.needs_gc()
++ needs_trashcan = scope.needs_trashcan()
+
+ weakref_slot = scope.lookup_here("__weakref__") if not scope.is_closure_class_scope else None
+ if weakref_slot not in scope.var_entries:
+@@ -1481,6 +1482,11 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
+ # running this destructor.
+ code.putln("PyObject_GC_UnTrack(o);")
+
++ if needs_trashcan:
++ code.globalstate.use_utility_code(
++ UtilityCode.load_cached("PyTrashcan", "ExtensionTypes.c"))
++ code.putln("__Pyx_TRASHCAN_BEGIN(o, %s)" % slot_func_cname)
++
+ # call the user's __dealloc__
+ self.generate_usr_dealloc_call(scope, code)
+
+@@ -1554,6 +1560,10 @@ class ModuleNode(Nodes.Node, Nodes.BlockNode):
+ code.putln("(*Py_TYPE(o)->tp_free)(o);")
+ if freelist_size:
+ code.putln("}")
++
++ if needs_trashcan:
++ code.putln("__Pyx_TRASHCAN_END")
++
+ code.putln(
+ "}")
+
+diff --git a/Cython/Compiler/Options.py b/Cython/Compiler/Options.py
+index d03119fca..05a728135 100644
+--- a/Cython/Compiler/Options.py
++++ b/Cython/Compiler/Options.py
+@@ -319,6 +319,7 @@ directive_types = {
+ 'freelist': int,
+ 'c_string_type': one_of('bytes', 'bytearray', 'str', 'unicode'),
+ 'c_string_encoding': normalise_encoding_name,
++ 'trashcan': bool,
+ 'cpow': bool
+ }
+
+@@ -362,6 +363,7 @@ directive_scopes = { # defaults to available everywhere
+ 'np_pythran': ('module',),
+ 'fast_gil': ('module',),
+ 'iterable_coroutine': ('module', 'function'),
++ 'trashcan' : ('cclass',),
+ }
+
+
+diff --git a/Cython/Compiler/PyrexTypes.py b/Cython/Compiler/PyrexTypes.py
+index c309bd04b..9231130b5 100644
+--- a/Cython/Compiler/PyrexTypes.py
++++ b/Cython/Compiler/PyrexTypes.py
+@@ -1129,6 +1129,7 @@ class PyObjectType(PyrexType):
+ is_extern = False
+ is_subclassed = False
+ is_gc_simple = False
++ builtin_trashcan = False # builtin type using trashcan
+
+ def __str__(self):
+ return "Python object"
+@@ -1183,10 +1184,14 @@ class PyObjectType(PyrexType):
+
+
+ builtin_types_that_cannot_create_refcycles = set([
+- 'bool', 'int', 'long', 'float', 'complex',
++ 'object', 'bool', 'int', 'long', 'float', 'complex',
+ 'bytearray', 'bytes', 'unicode', 'str', 'basestring'
+ ])
+
++builtin_types_with_trashcan = set([
++ 'dict', 'list', 'set', 'frozenset', 'tuple', 'type',
++])
++
+
+ class BuiltinObjectType(PyObjectType):
+ # objstruct_cname string Name of PyObject struct
+@@ -1211,6 +1216,7 @@ class BuiltinObjectType(PyObjectType):
+ self.typeptr_cname = "(&%s)" % cname
+ self.objstruct_cname = objstruct_cname
+ self.is_gc_simple = name in builtin_types_that_cannot_create_refcycles
++ self.builtin_trashcan = name in builtin_types_with_trashcan
+ if name == 'type':
+ # Special case the type type, as many C API calls (and other
+ # libraries) actually expect a PyTypeObject* for type arguments.
+diff --git a/Cython/Compiler/Symtab.py b/Cython/Compiler/Symtab.py
+index 7361a55ae..f0c311ba6 100644
+--- a/Cython/Compiler/Symtab.py
++++ b/Cython/Compiler/Symtab.py
+@@ -2043,7 +2043,7 @@ class PyClassScope(ClassScope):
+ class CClassScope(ClassScope):
+ # Namespace of an extension type.
+ #
+- # parent_type CClassType
++ # parent_type PyExtensionType
+ # #typeobj_cname string or None
+ # #objstruct_cname string
+ # method_table_cname string
+@@ -2087,6 +2087,22 @@ class CClassScope(ClassScope):
+ return not self.parent_type.is_gc_simple
+ return False
+
++ def needs_trashcan(self):
++ # If the trashcan directive is explicitly set to False,
++ # unconditionally disable the trashcan.
++ directive = self.directives.get('trashcan')
++ if directive is False:
++ return False
++ # If the directive is set to True and the class has Python-valued
++ # C attributes, then it should use the trashcan in tp_dealloc.
++ if directive and self.has_cyclic_pyobject_attrs:
++ return True
++ # Use the trashcan if the base class uses it
++ base_type = self.parent_type.base_type
++ if base_type and base_type.scope is not None:
++ return base_type.scope.needs_trashcan()
++ return self.parent_type.builtin_trashcan
++
+ def needs_tp_clear(self):
+ """
+ Do we need to generate an implementation for the tp_clear slot? Can
+diff --git a/Cython/Utility/ExtensionTypes.c b/Cython/Utility/ExtensionTypes.c
+index dc187ab49..f359165df 100644
+--- a/Cython/Utility/ExtensionTypes.c
++++ b/Cython/Utility/ExtensionTypes.c
+@@ -119,6 +119,49 @@ static int __Pyx_PyType_Ready(PyTypeObject *t) {
+ return r;
+ }
+
++/////////////// PyTrashcan.proto ///////////////
++
++// These macros are taken from https://github.com/python/cpython/pull/11841
++// Unlike the Py_TRASHCAN_SAFE_BEGIN/Py_TRASHCAN_SAFE_END macros, they
++// allow dealing correctly with subclasses.
++
++// This requires CPython version >= 2.7.4
++// (or >= 3.2.4 but we don't support such old Python 3 versions anyway)
++#if CYTHON_COMPILING_IN_CPYTHON && PY_VERSION_HEX >= 0x02070400
++#define __Pyx_TRASHCAN_BEGIN_CONDITION(op, cond) \
++ do { \
++ PyThreadState *_tstate = NULL; \
++ // If "cond" is false, then _tstate remains NULL and the deallocator
++ // is run normally without involving the trashcan
++ if (cond) { \
++ _tstate = PyThreadState_GET(); \
++ if (_tstate->trash_delete_nesting >= PyTrash_UNWIND_LEVEL) { \
++ // Store the object (to be deallocated later) and jump past
++ // Py_TRASHCAN_END, skipping the body of the deallocator
++ _PyTrash_thread_deposit_object((PyObject*)(op)); \
++ break; \
++ } \
++ ++_tstate->trash_delete_nesting; \
++ }
++ // The body of the deallocator is here.
++#define __Pyx_TRASHCAN_END \
++ if (_tstate) { \
++ --_tstate->trash_delete_nesting; \
++ if (_tstate->trash_delete_later && _tstate->trash_delete_nesting <= 0) \
++ _PyTrash_thread_destroy_chain(); \
++ } \
++ } while (0);
++
++#define __Pyx_TRASHCAN_BEGIN(op, dealloc) __Pyx_TRASHCAN_BEGIN_CONDITION(op, \
++ Py_TYPE(op)->tp_dealloc == (destructor)(dealloc))
++
++#else
++// The trashcan is a no-op on other Python implementations
++// or old CPython versions
++#define __Pyx_TRASHCAN_BEGIN(op, dealloc)
++#define __Pyx_TRASHCAN_END
++#endif
++
+ /////////////// CallNextTpDealloc.proto ///////////////
+
+ static void __Pyx_call_next_tp_dealloc(PyObject* obj, destructor current_tp_dealloc);
+diff --git a/tests/run/trashcan.pyx b/tests/run/trashcan.pyx
+new file mode 100644
+index 000000000..93a501ff8
+--- /dev/null
++++ b/tests/run/trashcan.pyx
+@@ -0,0 +1,148 @@
++# mode: run
++
++cimport cython
++
++
++# Count number of times an object was deallocated twice. This should remain 0.
++cdef int double_deallocations = 0
++def assert_no_double_deallocations():
++ global double_deallocations
++ err = double_deallocations
++ double_deallocations = 0
++ assert not err
++
++
++# Compute x = f(f(f(...(None)...))) nested n times and throw away the result.
++# The real test happens when exiting this function: then a big recursive
++# deallocation of x happens. We are testing two things in the tests below:
++# that Python does not crash and that no double deallocation happens.
++# See also https://github.com/python/cpython/pull/11841
++def recursion_test(f, int n=2**20):
++ x = None
++ cdef int i
++ for i in range(n):
++ x = f(x)
++
++
++@cython.trashcan(True)
++cdef class Recurse:
++ """
++ >>> recursion_test(Recurse)
++ >>> assert_no_double_deallocations()
++ """
++ cdef public attr
++ cdef int deallocated
++
++ def __init__(self, x):
++ self.attr = x
++
++ def __dealloc__(self):
++ # Check that we're not being deallocated twice
++ global double_deallocations
++ double_deallocations += self.deallocated
++ self.deallocated = 1
++
++
++cdef class RecurseSub(Recurse):
++ """
++ >>> recursion_test(RecurseSub)
++ >>> assert_no_double_deallocations()
++ """
++ cdef int subdeallocated
++
++ def __dealloc__(self):
++ # Check that we're not being deallocated twice
++ global double_deallocations
++ double_deallocations += self.subdeallocated
++ self.subdeallocated = 1
++
++
++@cython.freelist(4)
++@cython.trashcan(True)
++cdef class RecurseFreelist:
++ """
++ >>> recursion_test(RecurseFreelist)
++ >>> recursion_test(RecurseFreelist, 1000)
++ >>> assert_no_double_deallocations()
++ """
++ cdef public attr
++ cdef int deallocated
++
++ def __init__(self, x):
++ self.attr = x
++
++ def __dealloc__(self):
++ # Check that we're not being deallocated twice
++ global double_deallocations
++ double_deallocations += self.deallocated
++ self.deallocated = 1
++
++
++# Subclass of list => uses trashcan by default
++# As long as https://github.com/python/cpython/pull/11841 is not fixed,
++# this does lead to double deallocations, so we skip that check.
++cdef class RecurseList(list):
++ """
++ >>> RecurseList(42)
++ [42]
++ >>> recursion_test(RecurseList)
++ """
++ def __init__(self, x):
++ super().__init__((x,))
++
++
++# Some tests where the trashcan is NOT used. When the trashcan is not used
++# in a big recursive deallocation, the __dealloc__s of the base classs are
++# only run after the __dealloc__s of the subclasses.
++# We use this to detect trashcan usage.
++cdef int base_deallocated = 0
++cdef int trashcan_used = 0
++def assert_no_trashcan_used():
++ global base_deallocated, trashcan_used
++ err = trashcan_used
++ trashcan_used = base_deallocated = 0
++ assert not err
++
++
++cdef class Base:
++ def __dealloc__(self):
++ global base_deallocated
++ base_deallocated = 1
++
++
++# Trashcan disabled by default
++cdef class Sub1(Base):
++ """
++ >>> recursion_test(Sub1, 100)
++ >>> assert_no_trashcan_used()
++ """
++ cdef public attr
++
++ def __init__(self, x):
++ self.attr = x
++
++ def __dealloc__(self):
++ global base_deallocated, trashcan_used
++ trashcan_used += base_deallocated
++
++
++@cython.trashcan(True)
++cdef class Middle(Base):
++ cdef public foo
++
++
++# Trashcan disabled explicitly
++@cython.trashcan(False)
++cdef class Sub2(Middle):
++ """
++ >>> recursion_test(Sub2, 1000)
++ >>> assert_no_trashcan_used()
++ """
++ cdef public attr
++
++ def __init__(self, x):
++ self.attr = x
++
++ def __dealloc__(self):
++ global base_deallocated, trashcan_used
++ trashcan_used += base_deallocated
+--
+2.39.0
+
diff --git a/pkgs/development/python-modules/build/default.nix b/pkgs/development/python-modules/build/default.nix
index 44d6e6f978335..bcdd7614ecd56 100644
--- a/pkgs/development/python-modules/build/default.nix
+++ b/pkgs/development/python-modules/build/default.nix
@@ -56,6 +56,8 @@ buildPythonPackage rec {
"ignore::DeprecationWarning"
];
+ __darwinAllowLocalNetworking = true;
+
disabledTests = [
# Tests often fail with StopIteration
"test_isolat"
diff --git a/pkgs/development/python-modules/cryptography/default.nix b/pkgs/development/python-modules/cryptography/default.nix
index b8cf310a06ee9..ba2407923f33a 100644
--- a/pkgs/development/python-modules/cryptography/default.nix
+++ b/pkgs/development/python-modules/cryptography/default.nix
@@ -28,20 +28,20 @@ let
in
buildPythonPackage rec {
pname = "cryptography";
- version = "38.0.4"; # Also update the hash in vectors.nix
+ version = "39.0.1"; # Also update the hash in vectors.nix
format = "setuptools";
disabled = pythonOlder "3.6";
src = fetchPypi {
inherit pname version;
- hash = "sha256-F1wagYuHyayAu3N39VILfzGz7yoABOJCAxm+re22cpA=";
+ hash = "sha256-0fYZjubZFIQF5JiHgDkH/olioj5sb4PqfZjxwN43VpU=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
sourceRoot = "${pname}-${version}/${cargoRoot}";
name = "${pname}-${version}";
- hash = "sha256-BN0kOblUwgHj5QBf52RY2Jx0nBn03lwoN1O5PEohbwY=";
+ hash = "sha256-0x+KIqJznDEyIUqVuYfIESKmHBWfzirPeX2R/cWlngc=";
};
cargoRoot = "src/rust";
diff --git a/pkgs/development/python-modules/cryptography/vectors.nix b/pkgs/development/python-modules/cryptography/vectors.nix
index 31ace7c48ffdf..b054f89aa3a6d 100644
--- a/pkgs/development/python-modules/cryptography/vectors.nix
+++ b/pkgs/development/python-modules/cryptography/vectors.nix
@@ -9,7 +9,7 @@ buildPythonPackage rec {
src = fetchPypi {
pname = "cryptography_vectors";
inherit version;
- hash = "sha256-bsYmlb7F34ECiN3OrpmK5pHNuKFigI1svJYNPeuafbE=";
+ hash = "sha256-DLrrUL2388nXqTsmoEYu9ul8doynjZAoVP4EXDC2gMY=";
};
# No tests included
diff --git a/pkgs/development/python-modules/cvxopt/default.nix b/pkgs/development/python-modules/cvxopt/default.nix
index c546d11ec3f63..d47debe407e93 100644
--- a/pkgs/development/python-modules/cvxopt/default.nix
+++ b/pkgs/development/python-modules/cvxopt/default.nix
@@ -51,16 +51,16 @@ buildPythonPackage rec {
export CVXOPT_SUITESPARSE_INC_DIR=${lib.getDev suitesparse}/include
'' + lib.optionalString withGsl ''
export CVXOPT_BUILD_GSL=1
- export CVXOPT_GSL_LIB_DIR=${gsl}/lib
- export CVXOPT_GSL_INC_DIR=${gsl}/include
+ export CVXOPT_GSL_LIB_DIR=${lib.getLib gsl}/lib
+ export CVXOPT_GSL_INC_DIR=${lib.getDev gsl}/include
'' + lib.optionalString withGlpk ''
export CVXOPT_BUILD_GLPK=1
- export CVXOPT_GLPK_LIB_DIR=${glpk}/lib
- export CVXOPT_GLPK_INC_DIR=${glpk}/include
+ export CVXOPT_GLPK_LIB_DIR=${lib.getLib glpk}/lib
+ export CVXOPT_GLPK_INC_DIR=${lib.getDev glpk}/include
'' + lib.optionalString withFftw ''
export CVXOPT_BUILD_FFTW=1
- export CVXOPT_FFTW_LIB_DIR=${fftw}/lib
- export CVXOPT_FFTW_INC_DIR=${fftw.dev}/include
+ export CVXOPT_FFTW_LIB_DIR=${lib.getLib fftw}/lib
+ export CVXOPT_FFTW_INC_DIR=${lib.getDev fftw}/include
'';
nativeCheckInputs = [ unittestCheckHook ];
diff --git a/pkgs/development/python-modules/datafusion/Cargo.lock.patch b/pkgs/development/python-modules/datafusion/Cargo.lock.patch
deleted file mode 100644
index e4e5eca8af4c8..0000000000000
--- a/pkgs/development/python-modules/datafusion/Cargo.lock.patch
+++ /dev/null
@@ -1,78 +0,0 @@
-diff --git a/Cargo.lock b/Cargo.lock
-index fa84a54c..3d790e1c 100644
---- a/Cargo.lock
-+++ b/Cargo.lock
-@@ -57,9 +57,9 @@ checksum = "be4dc07131ffa69b8072d35f5007352af944213cde02545e2103680baed38fcd"
-
- [[package]]
- name = "arrow"
--version = "6.0.0"
-+version = "6.5.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "337e668497751234149fd607f5cb41a6ae7b286b6329589126fe67f0ac55d637"
-+checksum = "216c6846a292bdd93c2b93c1baab58c32ff50e2ab5e8d50db333ab518535dd8b"
- dependencies = [
- "bitflags",
- "chrono",
-@@ -212,9 +212,9 @@ dependencies = [
-
- [[package]]
- name = "comfy-table"
--version = "4.1.1"
-+version = "5.0.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "11e95a3e867422fd8d04049041f5671f94d53c32a9dcd82e2be268714942f3f3"
-+checksum = "c42350b81f044f576ff88ac750419f914abb46a03831bb1747134344ee7a4e64"
- dependencies = [
- "strum",
- "strum_macros",
-@@ -279,7 +279,7 @@ dependencies = [
-
- [[package]]
- name = "datafusion"
--version = "5.1.0"
-+version = "6.0.0"
- dependencies = [
- "ahash",
- "arrow",
-@@ -310,7 +310,7 @@ dependencies = [
-
- [[package]]
- name = "datafusion-python"
--version = "0.3.0"
-+version = "0.4.0"
- dependencies = [
- "datafusion",
- "pyo3",
-@@ -877,9 +877,9 @@ dependencies = [
-
- [[package]]
- name = "parquet"
--version = "6.0.0"
-+version = "6.5.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "d263b9b59ba260518de9e57bd65931c3f765fea0fabacfe84f40d6fde38e841a"
-+checksum = "788d9953f4cfbe9db1beff7bebd54299d105e34680d78b82b1ddc85d432cac9d"
- dependencies = [
- "arrow",
- "base64",
-@@ -1228,15 +1228,15 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
-
- [[package]]
- name = "strum"
--version = "0.21.0"
-+version = "0.22.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "aaf86bbcfd1fa9670b7a129f64fc0c9fcbbfe4f1bc4210e9e98fe71ffc12cde2"
-+checksum = "f7ac893c7d471c8a21f31cfe213ec4f6d9afeed25537c772e08ef3f005f8729e"
-
- [[package]]
- name = "strum_macros"
--version = "0.21.1"
-+version = "0.22.0"
- source = "registry+https://github.com/rust-lang/crates.io-index"
--checksum = "d06aaeeee809dbc59eb4556183dd927df67db1540de5be8d3ec0b6636358a5ec"
-+checksum = "339f799d8b549e3744c7ac7feb216383e4005d94bdb22561b3ab8f3b808ae9fb"
- dependencies = [
- "heck",
- "proc-macro2",
diff --git a/pkgs/development/python-modules/datafusion/default.nix b/pkgs/development/python-modules/datafusion/default.nix
index fb991dabf3d20..84afbfc3a1c10 100644
--- a/pkgs/development/python-modules/datafusion/default.nix
+++ b/pkgs/development/python-modules/datafusion/default.nix
@@ -5,54 +5,42 @@
, fetchPypi
, fetchFromGitHub
, rustPlatform
-, maturin
, pytestCheckHook
, libiconv
, numpy
, pandas
, pyarrow
-, pytest
}:
+
let
- # le sigh, the perils of unrelated versions of software living in the same
- # repo: there's no obvious way to map the top level source repo
- # (arrow-datafusion) version to the version of contained repo
- # (arrow-datafusion/python)
- #
- # A commit hash will do in a pinch, and ultimately the sha256 has the final
- # say of what the content is when building
- cargoLock = fetchurl {
- url = "https://raw.githubusercontent.com/apache/arrow-datafusion/6.0.0/python/Cargo.lock";
- sha256 = "sha256-xiv3drEU5jOGsEIh0U01ZQ1NBKobxO2ctp4mxy9iigw=";
+ arrow-testing = fetchFromGitHub {
+ owner = "apache";
+ repo = "arrow-testing";
+ rev = "5bab2f264a23f5af68f69ea93d24ef1e8e77fc88";
+ hash = "sha256-Pxx8ohUpXb5u1995IvXmxQMqWiDJ+7LAll/AjQP7ph8=";
};
- postUnpack = ''
- cp "${cargoLock}" $sourceRoot/Cargo.lock
- chmod u+w $sourceRoot/Cargo.lock
- '';
+ parquet-testing = fetchFromGitHub {
+ owner = "apache";
+ repo = "parquet-testing";
+ rev = "5b82793ef7196f7b3583e85669ced211cd8b5ff2";
+ hash = "sha256-gcOvk7qFHZgJWE9CpucC8zwayYw47VbC3lmSRu4JQFg=";
+ };
in
+
buildPythonPackage rec {
pname = "datafusion";
- version = "0.4.0";
+ version = "0.7.0";
format = "pyproject";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-+YqogteKfNhtI2QbVXv/5CIWm3PcOH653dwONm5ZcL8=";
+ sha256 = "sha256-XYXZMorPs2Ue7E38DASd4rmxvX0wlx8A6sCpAbYUh4I=";
};
- inherit postUnpack;
-
- # TODO: remove the patch hacking and postUnpack hooks after
- # https://github.com/apache/arrow-datafusion/pull/1508 is merged
- #
- # the lock file isn't up to date as of 6.0.0 so we need to patch the source
- # lockfile and the vendored cargo deps lockfile
- patches = [ ./Cargo.lock.patch ];
cargoDeps = rustPlatform.fetchCargoTarball {
- inherit src pname version postUnpack;
- sha256 = "sha256-JGyDxpfBXzduJaMF1sbmRm7KJajHYdVSj+WbiSETiY0=";
- patches = [ ./Cargo.lock.patch ];
+ inherit src pname version;
+ sha256 = "sha256-6mPdKwsEN09Gf4eNsd/v3EBHVezHmff/KYB2lsXgzcA=";
};
nativeBuildInputs = with rustPlatform; [
@@ -68,13 +56,18 @@ buildPythonPackage rec {
pyarrow
];
- nativeCheckInputs = [ pytest ];
+ nativeCheckInputs = [ pytestCheckHook ];
pythonImportsCheck = [ "datafusion" ];
+ pytestFlagsArray = [ "--pyargs" pname ];
+
+ preCheck = ''
+ pushd $TMPDIR
+ ln -s ${arrow-testing} ./testing
+ ln -s ${parquet-testing} ./parquet
+ '';
- checkPhase = ''
- runHook preCheck
- pytest --pyargs "${pname}"
- runHook postCheck
+ postCheck = ''
+ popd
'';
meta = with lib; {
diff --git a/pkgs/development/python-modules/django/3.nix b/pkgs/development/python-modules/django/3.nix
index f881ed5221aeb..f54562742b15a 100644
--- a/pkgs/development/python-modules/django/3.nix
+++ b/pkgs/development/python-modules/django/3.nix
@@ -15,14 +15,14 @@
buildPythonPackage rec {
pname = "django";
- version = "3.2.16";
+ version = "3.2.17";
disabled = pythonOlder "3.7";
src = fetchPypi {
pname = "Django";
inherit version;
- hash = "sha256-OtwoUSQkRySjlPqbmDnMjNEW+vfRWVVMQ+zaqM3wuU0=";
+ hash = "sha256-ZEKINB8G6+STjuxoAba9WaZTSnjkrt3ioVMHXREUOJQ=";
};
patches = [
diff --git a/pkgs/development/python-modules/dogtail/default.nix b/pkgs/development/python-modules/dogtail/default.nix
index cc4430ddb3998..2f8a02dc3ec61 100644
--- a/pkgs/development/python-modules/dogtail/default.nix
+++ b/pkgs/development/python-modules/dogtail/default.nix
@@ -37,7 +37,6 @@ buildPythonPackage {
nativeBuildInputs = [ gobject-introspection dbus xvfb-run wrapGAppsHook ]; # for setup hooks
propagatedBuildInputs = [ at-spi2-core gtk3 pygobject3 pyatspi pycairo ];
- strictDeps = false; # issue 56943
checkPhase = ''
runHook preCheck
@@ -50,6 +49,12 @@ buildPythonPackage {
runHook postCheck
'';
+ dontWrapGApps = true;
+
+ preFixup = ''
+ makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+ '';
+
# TODO: Tests require accessibility
doCheck = false;
diff --git a/pkgs/development/python-modules/flit-scm/default.nix b/pkgs/development/python-modules/flit-scm/default.nix
index 2a209f2b7cd85..6b7c57100017c 100644
--- a/pkgs/development/python-modules/flit-scm/default.nix
+++ b/pkgs/development/python-modules/flit-scm/default.nix
@@ -16,7 +16,7 @@ buildPythonPackage rec {
owner = "WillDaSilva";
repo = "flit_scm";
rev = "refs/tags/${version}";
- hash = "sha256-K5sH+oHgX/ftvhkY+vIg6wUokAP96YxrTWds3tnEtyg=";
+ hash = "sha256-2nx9kWq/2TzauOW+c67g9a3JZ2dhBM4QzKyK/sqWOPo=";
};
SETUPTOOLS_SCM_PRETEND_VERSION = version;
diff --git a/pkgs/development/python-modules/hatch-requirements-txt/default.nix b/pkgs/development/python-modules/hatch-requirements-txt/default.nix
index b68506ecd3529..af74b15b02148 100644
--- a/pkgs/development/python-modules/hatch-requirements-txt/default.nix
+++ b/pkgs/development/python-modules/hatch-requirements-txt/default.nix
@@ -1,7 +1,6 @@
{ lib
, buildPythonPackage
, fetchFromGitHub
-, hatch
, hatchling
, packaging
, pytestCheckHook
@@ -20,7 +19,7 @@ buildPythonPackage rec {
};
nativeBuildInputs = [
- hatch
+ hatchling
];
propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/hidapi/default.nix b/pkgs/development/python-modules/hidapi/default.nix
index 977d94e8a20c9..bbbcdfb5267da 100644
--- a/pkgs/development/python-modules/hidapi/default.nix
+++ b/pkgs/development/python-modules/hidapi/default.nix
@@ -11,11 +11,11 @@
buildPythonPackage rec {
pname = "hidapi";
- version = "0.12.0.post2";
+ version = "0.13.1";
src = fetchPypi {
inherit pname version;
- sha256 = "8ebb2117be8b27af5c780936030148e1971b6b7fda06e0581ff0bfb15e94ed76";
+ sha256 = "99b18b28ec414ef9b604ddaed08182e486a400486f31ca56f61d537eed1d17cf";
};
nativeBuildInputs = lib.optionals stdenv.isDarwin [ xcbuild ];
diff --git a/pkgs/development/python-modules/ibis-framework/default.nix b/pkgs/development/python-modules/ibis-framework/default.nix
index a49f7c684aab7..173991f04df62 100644
--- a/pkgs/development/python-modules/ibis-framework/default.nix
+++ b/pkgs/development/python-modules/ibis-framework/default.nix
@@ -16,6 +16,7 @@
, geoalchemy2
, geopandas
, graphviz-nox
+, hypothesis
, lz4
, multipledispatch
, numpy
@@ -30,8 +31,9 @@
, pymysql
, pyspark
, pytest-benchmark
-, pytest-randomly
, pytest-mock
+, pytest-randomly
+, pytest-snapshot
, pytest-xdist
, python
, pytz
@@ -62,7 +64,7 @@ in
buildPythonPackage rec {
pname = "ibis-framework";
- version = "3.2.0";
+ version = "4.0.0";
format = "pyproject";
disabled = pythonOlder "3.8";
@@ -71,10 +73,12 @@ buildPythonPackage rec {
repo = "ibis";
owner = "ibis-project";
rev = version;
- hash = "sha256-YRP1nGJs4btqXQirm0GfEDKNPCVXexVrwQ6sE8JtD2o=";
+ hash = "sha256-G3kMd6Jyib7ZXHFP6t2CEPlDD5n5zHE2jq/0he3U4Nk=";
};
- nativeBuildInputs = [ poetry-core ];
+ nativeBuildInputs = [
+ poetry-core
+ ];
propagatedBuildInputs = [
atpublic
@@ -95,29 +99,31 @@ buildPythonPackage rec {
pytestCheckHook
click
filelock
+ hypothesis
pytest-benchmark
pytest-mock
pytest-randomly
+ pytest-snapshot
pytest-xdist
rsync
] ++ lib.concatMap (name: passthru.optional-dependencies.${name}) testBackends;
- preBuild = ''
- # setup.py exists only for developer convenience and is automatically generated
- # it gets in the way in nixpkgs so we remove it
- rm setup.py
- '';
-
pytestFlagsArray = [
"--dist=loadgroup"
"-m"
"'${lib.concatStringsSep " or " testBackends} or core'"
- # this test fails on nixpkgs datafusion version (0.4.0), but works on
- # datafusion 0.6.0
- "-k"
- "'not datafusion-no_op'"
];
+ # remove when sqlalchemy backend no longer uses deprecated methods
+ SQLALCHEMY_SILENCE_UBER_WARNING = 1;
+
+ # patch out tests that check formatting with black
+ postPatch = ''
+ find ibis/tests -type f -name '*.py' -exec sed -i \
+ -e '/^ *assert_decompile_roundtrip/d' \
+ -e 's/^\( *\)code = ibis.decompile(expr, format=True)/\1code = ibis.decompile(expr)/g' {} +
+ '';
+
preCheck = ''
set -eo pipefail
diff --git a/pkgs/development/python-modules/pillow/default.nix b/pkgs/development/python-modules/pillow/default.nix
index 05fe40802c5d5..6dc894c0a4ca5 100644
--- a/pkgs/development/python-modules/pillow/default.nix
+++ b/pkgs/development/python-modules/pillow/default.nix
@@ -12,7 +12,7 @@
import ./generic.nix (rec {
pname = "pillow";
- version = "9.3.0";
+ version = "9.4.0";
format = "setuptools";
disabled = pythonOlder "3.7";
@@ -20,7 +20,7 @@ import ./generic.nix (rec {
src = fetchPypi {
pname = "Pillow";
inherit version;
- hash = "sha256-yTWiKlV6VgEI14D5oPxCbddFmUDcVPqknYMknI0+dg8=";
+ hash = "sha256-ocLXeARI65P7zDeJvzkWqlcg2ULjeUX0BWaAMX8c0j4=";
};
passthru.tests = {
diff --git a/pkgs/development/python-modules/pyarrow/default.nix b/pkgs/development/python-modules/pyarrow/default.nix
index a862fa69a9a2f..08f55e4db386d 100644
--- a/pkgs/development/python-modules/pyarrow/default.nix
+++ b/pkgs/development/python-modules/pyarrow/default.nix
@@ -2,6 +2,7 @@
, stdenv
, buildPythonPackage
, python
+, pythonAtLeast
, pythonOlder
, arrow-cpp
, cffi
@@ -109,6 +110,9 @@ buildPythonPackage rec {
"--deselect=pyarrow/tests/test_flight.py::test_large_descriptor"
"--deselect=pyarrow/tests/test_flight.py::test_large_metadata_client"
"--deselect=pyarrow/tests/test_flight.py::test_none_action_side_effect"
+ ] ++ lib.optionals (pythonAtLeast "3.11") [
+ # Repr output is printing number instead of enum name so these tests fail
+ "--deselect=pyarrow/tests/test_fs.py::test_get_file_info"
];
dontUseSetuptoolsCheck = true;
diff --git a/pkgs/development/python-modules/pycryptodome/default.nix b/pkgs/development/python-modules/pycryptodome/default.nix
index f2b546cac802d..f07c8062c1086 100644
--- a/pkgs/development/python-modules/pycryptodome/default.nix
+++ b/pkgs/development/python-modules/pycryptodome/default.nix
@@ -2,7 +2,6 @@
, buildPythonPackage
, callPackage
, fetchFromGitHub
-, fetchpatch
, gmp
}:
@@ -11,23 +10,16 @@ let
in
buildPythonPackage rec {
pname = "pycryptodome";
- version = "3.16.0";
+ version = "3.17.0";
format = "setuptools";
src = fetchFromGitHub {
owner = "Legrandin";
repo = "pycryptodome";
rev = "v${version}";
- hash = "sha256-8EAgeAU3HQiPrMKOtoVQQLbgq47cbveU2eQYp15XS/U=";
+ hash = "sha256-xsfd+dbaNOPuD0ulvpLPBPtcFgmJqX1VuunwNMcqh+Q=";
};
- patches = [
- (fetchpatch {
- url = "https://github.com/Legrandin/pycryptodome/commit/1c043abb089ddbc2fc43d1c169672688ccc64c64.patch";
- sha256 = "sha256-QklwOlFpQNAH0CpR06fWSZqx8C97RV8BRsKbp2j8js8=";
- })
- ];
-
postPatch = ''
substituteInPlace lib/Crypto/Math/_IntegerGMP.py \
--replace 'load_lib("gmp"' 'load_lib("${gmp}/lib/libgmp.so.10"'
diff --git a/pkgs/development/python-modules/pygobject/3.nix b/pkgs/development/python-modules/pygobject/3.nix
index 20c45462d9ed9..893fd1e64564a 100644
--- a/pkgs/development/python-modules/pygobject/3.nix
+++ b/pkgs/development/python-modules/pygobject/3.nix
@@ -42,8 +42,7 @@ buildPythonPackage rec {
];
buildInputs = [
- # # .so files link to these
- gobject-introspection
+ # # .so files link to this
glib
] ++ lib.optionals stdenv.isDarwin [
ncurses
diff --git a/pkgs/development/python-modules/pyopenssl/default.nix b/pkgs/development/python-modules/pyopenssl/default.nix
index 048c47184d161..ec6acefeb49de 100644
--- a/pkgs/development/python-modules/pyopenssl/default.nix
+++ b/pkgs/development/python-modules/pyopenssl/default.nix
@@ -2,32 +2,36 @@
, stdenv
, buildPythonPackage
, fetchPypi
-, fetchpatch
, openssl
, cryptography
, pytestCheckHook
, pretend
+, sphinxHook
+, sphinx-rtd-theme
, flaky
}:
buildPythonPackage rec {
pname = "pyopenssl";
- version = "22.1.0";
-
- outputs = [ "out" "dev" ];
+ version = "23.0.0";
+ format = "setuptools";
src = fetchPypi {
pname = "pyOpenSSL";
inherit version;
- sha256 = "sha256-eoO3snLdWVIi1nL1zimqAw8fuDdjDvIp9i5y45XOiWg=";
+ hash = "sha256-wcxfhrys78hNrafTEXXK4bFRjV9g09C7WVpngiqGim8=";
};
- patches = [
- (fetchpatch {
- name = "fix-flaky-darwin-handshake-tests.patch";
- url = "https://github.com/pyca/pyopenssl/commit/8a75898356806784caf742e8277ef03de830ce11.patch";
- hash = "sha256-UVsZ8Nq1jUTZhOUAilRgdtqMYp4AN7qvWHqc6RleqRI=";
- })
+ outputs = [
+ "out"
+ "dev"
+ "doc"
+ ];
+
+ nativeBuildInputs = [
+ openssl
+ sphinxHook
+ sphinx-rtd-theme
];
postPatch = ''
@@ -35,10 +39,17 @@ buildPythonPackage rec {
sed "/cryptography/ s/,<[0-9]*//g" setup.py
'';
- nativeBuildInputs = [ openssl ];
- propagatedBuildInputs = [ cryptography ];
+ propagatedBuildInputs = [
+ cryptography
+ ];
+
+ nativeCheckInputs = [
+ flaky
+ pretend
+ pytestCheckHook
+ ];
- nativeCheckInputs = [ pytestCheckHook pretend flaky ];
+ __darwinAllowLocalNetworking = true;
preCheck = ''
export LANG="en_US.UTF-8"
@@ -82,6 +93,7 @@ buildPythonPackage rec {
meta = with lib; {
description = "Python wrapper around the OpenSSL library";
homepage = "https://github.com/pyca/pyopenssl";
+ changelog = "https://github.com/pyca/pyopenssl/blob/${version}/CHANGELOG.rst";
license = licenses.asl20;
maintainers = with maintainers; [ SuperSandro2000 ];
};
diff --git a/pkgs/development/python-modules/pytest-httpserver/default.nix b/pkgs/development/python-modules/pytest-httpserver/default.nix
index 1c69f426b1695..feae849013045 100644
--- a/pkgs/development/python-modules/pytest-httpserver/default.nix
+++ b/pkgs/development/python-modules/pytest-httpserver/default.nix
@@ -37,6 +37,12 @@ buildPythonPackage rec {
toml
];
+ __darwinAllowLocalNetworking = true;
+
+ disabledTests = [
+ "test_wait_raise_assertion_false" # racy
+ ];
+
pythonImportsCheck = [
"pytest_httpserver"
];
diff --git a/pkgs/development/python-modules/pytest-rerunfailures/default.nix b/pkgs/development/python-modules/pytest-rerunfailures/default.nix
index a0e9bb1fb2a6b..c6e8b7e915d6c 100644
--- a/pkgs/development/python-modules/pytest-rerunfailures/default.nix
+++ b/pkgs/development/python-modules/pytest-rerunfailures/default.nix
@@ -1,23 +1,31 @@
-{ lib, buildPythonPackage, pythonOlder, fetchPypi, pytest, mock }:
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchPypi
+, setuptools
+, packaging
+, pytest
+, pytestCheckHook
+}:
buildPythonPackage rec {
pname = "pytest-rerunfailures";
- version = "10.3";
+ version = "11.0";
+ format = "pyproject";
- disabled = pythonOlder "3.5";
+ disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-2CRNeZ+Jpu215XMB3a6ztvENZpFjjVHoCzcTEVkuKMY=";
+ hash = "sha256-zuWeTm8Nc65j+6CZhlMUupuRW3GTSVQREPoBL/tu+xM=";
};
- buildInputs = [ pytest ];
+ nativeBuildInputs = [ setuptools ];
- nativeCheckInputs = [ mock pytest ];
+ buildInputs = [ pytest ];
+ propagatedBuildInputs = [ packaging ];
- checkPhase = ''
- py.test test_pytest_rerunfailures.py
- '';
+ nativeCheckInputs = [ pytestCheckHook ];
meta = with lib; {
description = "Pytest plugin to re-run tests to eliminate flaky failures";
diff --git a/pkgs/development/python-modules/python-magic/default.nix b/pkgs/development/python-modules/python-magic/default.nix
index 725849fee078f..358a647d52d94 100644
--- a/pkgs/development/python-modules/python-magic/default.nix
+++ b/pkgs/development/python-modules/python-magic/default.nix
@@ -2,6 +2,7 @@
, stdenv
, buildPythonPackage
, fetchFromGitHub
+, fetchpatch
, substituteAll
, file
, pytestCheckHook
@@ -23,6 +24,11 @@ buildPythonPackage rec {
src = ./libmagic-path.patch;
libmagic = "${file}/lib/libmagic${stdenv.hostPlatform.extensions.sharedLibrary}";
})
+ (fetchpatch {
+ name = "update-test-for-upstream-added-gzip-extensions.patch";
+ url = "https://github.com/ahupp/python-magic/commit/4ffcd59113fa26d7c2e9d5897b1eef919fd4b457.patch";
+ hash = "sha256-67GpjlGiR4/os/iZ69V+ZziVLpjmid+7t+gQ2aQy9I0=";
+ })
];
preCheck = ''
diff --git a/pkgs/development/python-modules/pytz/default.nix b/pkgs/development/python-modules/pytz/default.nix
index e162a4a6cb615..b8594e51f8391 100644
--- a/pkgs/development/python-modules/pytz/default.nix
+++ b/pkgs/development/python-modules/pytz/default.nix
@@ -2,13 +2,13 @@
buildPythonPackage rec {
pname = "pytz";
- version = "2022.7";
+ version = "2022.7.1";
format = "setuptools";
src = fetchPypi {
inherit pname version;
- hash = "sha256-fM+ue0ssBnRkpnM8YmFnP9uP0b6QVGA5a5egc+n6aDo=";
+ hash = "sha256-AaBoHEuWhKKDBGFeulXRqzGuAL9o7BV+w3CKgYLbvNA=";
};
nativeCheckInputs = [ unittestCheckHook ];
diff --git a/pkgs/development/python-modules/scipy/default.nix b/pkgs/development/python-modules/scipy/default.nix
index 7f9091d87f144..13bc07faed3a8 100644
--- a/pkgs/development/python-modules/scipy/default.nix
+++ b/pkgs/development/python-modules/scipy/default.nix
@@ -67,6 +67,8 @@ buildPythonPackage rec {
runHook postCheck
'';
+ requiredSystemFeatures = [ "big-parallel" ]; # the tests need lots of CPU time
+
passthru = {
blas = numpy.blas;
};
diff --git a/pkgs/development/python-modules/sqlglot/default.nix b/pkgs/development/python-modules/sqlglot/default.nix
index 05dfba9497293..3d12618b8e45c 100644
--- a/pkgs/development/python-modules/sqlglot/default.nix
+++ b/pkgs/development/python-modules/sqlglot/default.nix
@@ -5,10 +5,11 @@
, pytestCheckHook
, python-dateutil
, duckdb
+, pyspark
}:
buildPythonPackage rec {
pname = "sqlglot";
- version = "6.0.7";
+ version = "10.5.2";
disabled = pythonOlder "3.8";
@@ -16,12 +17,15 @@ buildPythonPackage rec {
repo = "sqlglot";
owner = "tobymao";
rev = "v${version}";
- hash = "sha256-7PBhf9NN/mCi92xSkB9ygfmfxTyOYaEyrNvL309sG5Y=";
+ hash = "sha256-ZFc2aOhCTRFlrzgnYDSdIZxRqKZ8FvkYSZRU0OMHI34=";
};
propagatedBuildInputs = [ python-dateutil ];
- nativeCheckInputs = [ pytestCheckHook duckdb ];
+ nativeCheckInputs = [ pytestCheckHook duckdb pyspark ];
+
+ # these integration tests assume a running Spark instance
+ disabledTestPaths = [ "tests/dataframe/integration" ];
pythonImportsCheck = [ "sqlglot" ];
diff --git a/pkgs/development/python-modules/torch/default.nix b/pkgs/development/python-modules/torch/default.nix
index c64f36c8df321..f1a8e72a591db 100644
--- a/pkgs/development/python-modules/torch/default.nix
+++ b/pkgs/development/python-modules/torch/default.nix
@@ -111,6 +111,15 @@ in buildPythonPackage rec {
# base is 10.12. Until we upgrade, we can fall back on the older
# pthread support.
./pthreadpool-disable-gcd.diff
+ ] ++ [
+ # PyTorch fails to build on gcc 12 due to gloo
+ # https://github.com/pytorch/pytorch/issues/77614
+ (fetchpatch {
+ url = "https://github.com/facebookincubator/gloo/commit/4a5e339b764261d20fc409071dc7a8b8989aa195.patch";
+ stripLen = 1;
+ extraPrefix = "third_party/gloo/";
+ hash = "sha256-UxR1r7F6g76BWj3GBIrSy5t+YZDCWy6mMddwx+hon5w=";
+ })
];
postPatch = lib.optionalString rocmSupport ''
@@ -204,7 +213,11 @@ in buildPythonPackage rec {
#
# Also of interest: pytorch ignores CXXFLAGS uses CFLAGS for both C and C++:
# https://github.com/pytorch/pytorch/blob/v1.11.0/setup.py#L17
- NIX_CFLAGS_COMPILE = lib.optionals (blas.implementation == "mkl") [ "-Wno-error=array-bounds" ];
+ NIX_CFLAGS_COMPILE = lib.optionals (blas.implementation == "mkl") [ "-Wno-error=array-bounds" ]
+ # Suppress gcc regression: avx512 math function raises uninitialized variable warning
+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105593
+ # See also: Fails to compile with GCC 12.1.0 https://github.com/pytorch/pytorch/issues/77939
+ ++ lib.optionals stdenv.cc.isGNU [ "-Wno-error=maybe-uninitialized" "-Wno-error=uninitialized" ];
nativeBuildInputs = [
cmake
diff --git a/pkgs/development/python-modules/typeguard/default.nix b/pkgs/development/python-modules/typeguard/default.nix
index 7c69463d9b7b2..7ae99a98d2285 100644
--- a/pkgs/development/python-modules/typeguard/default.nix
+++ b/pkgs/development/python-modules/typeguard/default.nix
@@ -5,12 +5,16 @@
, setuptools-scm
, pytestCheckHook
, typing-extensions
+, sphinxHook
+, sphinx-autodoc-typehints
+, sphinx-rtd-theme
, glibcLocales
}:
buildPythonPackage rec {
pname = "typeguard";
version = "2.13.3";
+ outputs = [ "out" "doc" ];
src = fetchPypi {
inherit pname version;
@@ -18,7 +22,12 @@ buildPythonPackage rec {
};
buildInputs = [ setuptools-scm ];
- nativeBuildInputs = [ glibcLocales ];
+ nativeBuildInputs = [
+ glibcLocales
+ sphinxHook
+ sphinx-autodoc-typehints
+ sphinx-rtd-theme
+ ];
LC_ALL="en_US.utf-8";
diff --git a/pkgs/development/python-modules/types-toml/default.nix b/pkgs/development/python-modules/types-toml/default.nix
index fff70bd611f76..c3c5a13e9005d 100644
--- a/pkgs/development/python-modules/types-toml/default.nix
+++ b/pkgs/development/python-modules/types-toml/default.nix
@@ -5,12 +5,12 @@
buildPythonPackage rec {
pname = "types-toml";
- version = "0.10.8.1";
+ version = "0.10.8.2";
format = "setuptools";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-FxvbMWPXmlIFYPJLqRap/Jv/gWWcVEip/qiSQJI3Ir4=";
+ sha256 = "sha256-UdQoZmsw6cwEd5H0QNDxGoIgXnicQN67uG863XRyzz4=";
};
# Module doesn't have tests
diff --git a/pkgs/development/python-modules/ujson/default.nix b/pkgs/development/python-modules/ujson/default.nix
index 7f9ca14ebdbef..6755a274d1dde 100644
--- a/pkgs/development/python-modules/ujson/default.nix
+++ b/pkgs/development/python-modules/ujson/default.nix
@@ -8,12 +8,12 @@
buildPythonPackage rec {
pname = "ujson";
- version = "5.6.0";
+ version = "5.7.0";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-+IHi2KAi6Shaouq2uoZ0NY28srV/poYY2I1ik3rD/wQ=";
+ sha256 = "sha256-54jl1dyuj2EYrJtF0LiRoNVfesSA7dy38HJj8rzzeyM=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/python-modules/watchdog/default.nix b/pkgs/development/python-modules/watchdog/default.nix
index a242c7ec9c6cb..043b1e8aff666 100644
--- a/pkgs/development/python-modules/watchdog/default.nix
+++ b/pkgs/development/python-modules/watchdog/default.nix
@@ -14,14 +14,14 @@
buildPythonPackage rec {
pname = "watchdog";
- version = "2.2.0";
+ version = "2.2.1";
format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchPypi {
inherit pname version;
- hash = "sha256-g8+Lxg2cYTtmpMAYBRhz1ic9nkXQQO7QbWqWJBvY7AE=";
+ hash = "sha256-zcwjyVKGAaiik+tDacvRT2tPNPB66HaUISUunCJxi28=";
};
patches = lib.optionals (stdenv.isDarwin && !stdenv.isAarch64) [
diff --git a/pkgs/development/python-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch b/pkgs/development/python-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch
index 93db54b0c6e6c..8e70f0069d654 100644
--- a/pkgs/development/python-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch
+++ b/pkgs/development/python-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch
@@ -20,18 +20,15 @@ name that has the same encoding in each normal form.
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/test_bdist_wheel.py b/tests/test_bdist_wheel.py
-index 651c034..9b94ac8 100644
+index 5a6db16..42cf121 100644
--- a/tests/test_bdist_wheel.py
+++ b/tests/test_bdist_wheel.py
-@@ -58,7 +58,7 @@ def test_unicode_record(wheel_paths):
+@@ -69,7 +69,7 @@ def test_unicode_record(wheel_paths):
with ZipFile(path) as zf:
- record = zf.read('unicode.dist-0.1.dist-info/RECORD')
+ record = zf.read("unicode.dist-0.1.dist-info/RECORD")
-- assert u'åäö_日本語.py'.encode('utf-8') in record
-+ assert u'æɐø_日本價.py'.encode('utf-8') in record
+- assert "åäö_日本語.py".encode() in record
++ assert "æɐø_日本價.py".encode() in record
- def test_licenses_default(dummy_dist, monkeypatch, tmpdir):
---
-2.17.2 (Apple Git-113)
-
+ UTF8_PKG_INFO = """\
diff --git a/pkgs/development/python-modules/wheel/default.nix b/pkgs/development/python-modules/wheel/default.nix
index 8735a37b21ff7..3be508a0ec590 100644
--- a/pkgs/development/python-modules/wheel/default.nix
+++ b/pkgs/development/python-modules/wheel/default.nix
@@ -7,14 +7,14 @@
buildPythonPackage rec {
pname = "wheel";
- version = "0.37.1";
+ version = "0.38.4";
format = "other";
src = fetchFromGitHub {
owner = "pypa";
repo = pname;
rev = version;
- sha256 = "sha256-JlTmUPY3yo/uROyd3nW1dJa23zbLhgQTwcmqZkPOrHs=";
+ hash = "sha256-yZLU0t/nz6kfnnoLL15bybOxN4+SJUaTJsCpGffl1QU=";
name = "${pname}-${version}-source";
postFetch = ''
cd $out
diff --git a/pkgs/development/python2-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch b/pkgs/development/python2-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch
new file mode 100644
index 0000000000000..93db54b0c6e6c
--- /dev/null
+++ b/pkgs/development/python2-modules/wheel/0001-tests-Rename-a-a-o-_-.py-_-.py.patch
@@ -0,0 +1,37 @@
+From 5879a4bbc34d1eb25e160b15b2f5a4f10eac6bd2 Mon Sep 17 00:00:00 2001
+From: toonn
+Date: Mon, 13 Sep 2021 18:07:26 +0200
+Subject: [PATCH] =?UTF-8?q?tests:=20Rename=20a=CC=8Aa=CC=88o=CC=88=5F?=
+ =?UTF-8?q?=E6=97=A5=E6=9C=AC=E8=AA=9E.py=20=3D>=20=C3=A6=C9=90=C3=B8=5F?=
+ =?UTF-8?q?=E6=97=A5=E6=9C=AC=E5=83=B9.py?=
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+`åäö_日本語.py` normalizes differently in NFC and NFD normal forms. This
+means a hash generated for the source directory can differ depending on
+whether or not the filesystem is normalizing and which normal form it
+uses.
+
+By renaming the file to `æɐø_日本價.py` we avoid this issue by using a
+name that has the same encoding in each normal form.
+---
+ tests/test_bdist_wheel.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/tests/test_bdist_wheel.py b/tests/test_bdist_wheel.py
+index 651c034..9b94ac8 100644
+--- a/tests/test_bdist_wheel.py
++++ b/tests/test_bdist_wheel.py
+@@ -58,7 +58,7 @@ def test_unicode_record(wheel_paths):
+ with ZipFile(path) as zf:
+ record = zf.read('unicode.dist-0.1.dist-info/RECORD')
+
+- assert u'åäö_日本語.py'.encode('utf-8') in record
++ assert u'æɐø_日本價.py'.encode('utf-8') in record
+
+
+ def test_licenses_default(dummy_dist, monkeypatch, tmpdir):
+--
+2.17.2 (Apple Git-113)
+
diff --git a/pkgs/development/python2-modules/wheel/default.nix b/pkgs/development/python2-modules/wheel/default.nix
new file mode 100644
index 0000000000000..8735a37b21ff7
--- /dev/null
+++ b/pkgs/development/python2-modules/wheel/default.nix
@@ -0,0 +1,57 @@
+{ lib
+, buildPythonPackage
+, fetchFromGitHub
+, bootstrapped-pip
+, setuptools
+}:
+
+buildPythonPackage rec {
+ pname = "wheel";
+ version = "0.37.1";
+ format = "other";
+
+ src = fetchFromGitHub {
+ owner = "pypa";
+ repo = pname;
+ rev = version;
+ sha256 = "sha256-JlTmUPY3yo/uROyd3nW1dJa23zbLhgQTwcmqZkPOrHs=";
+ name = "${pname}-${version}-source";
+ postFetch = ''
+ cd $out
+ mv tests/testdata/unicode.dist/unicodedist/åäö_日本語.py \
+ tests/testdata/unicode.dist/unicodedist/æɐø_日本價.py
+ patch -p1 < ${./0001-tests-Rename-a-a-o-_-.py-_-.py.patch}
+ '';
+ };
+
+ nativeBuildInputs = [
+ bootstrapped-pip
+ setuptools
+ ];
+
+ # No tests in archive
+ doCheck = false;
+ pythonImportsCheck = [ "wheel" ];
+
+ # We add this flag to ignore the copy installed by bootstrapped-pip
+ pipInstallFlags = [ "--ignore-installed" ];
+
+ meta = with lib; {
+ homepage = "https://github.com/pypa/wheel";
+ description = "A built-package format for Python";
+ longDescription = ''
+ This library is the reference implementation of the Python wheel packaging standard,
+ as defined in PEP 427.
+
+ It has two different roles:
+
+ - A setuptools extension for building wheels that provides the bdist_wheel setuptools command
+ - A command line tool for working with wheel files
+
+ It should be noted that wheel is not intended to be used as a library,
+ and as such there is no stable, public API.
+ '';
+ license = with licenses; [ mit ];
+ maintainers = with maintainers; [ siriobalmelli ];
+ };
+}
diff --git a/pkgs/development/tools/analysis/rr/default.nix b/pkgs/development/tools/analysis/rr/default.nix
index e9437d718cf7a..40a7909f34a12 100644
--- a/pkgs/development/tools/analysis/rr/default.nix
+++ b/pkgs/development/tools/analysis/rr/default.nix
@@ -24,6 +24,7 @@ stdenv.mkDerivation rec {
postPatch = ''
substituteInPlace src/Command.cc --replace '_BSD_SOURCE' '_DEFAULT_SOURCE'
sed '7i#include ' -i src/Scheduler.cc
+ sed '1i#include ' -i src/test-monitor/test-monitor.cc
patchShebangs .
'';
diff --git a/pkgs/development/tools/analysis/valgrind/default.nix b/pkgs/development/tools/analysis/valgrind/default.nix
index 3bec558803b4e..9949ec7ec7c70 100644
--- a/pkgs/development/tools/analysis/valgrind/default.nix
+++ b/pkgs/development/tools/analysis/valgrind/default.nix
@@ -14,6 +14,12 @@ stdenv.mkDerivation rec {
};
patches = [
+ # Fix build on ELFv2 powerpc64
+ # https://bugs.kde.org/show_bug.cgi?id=398883
+ (fetchurl {
+ url = "https://github.com/void-linux/void-packages/raw/3e16b4606235885463fc9ab45b4c120f1a51aa28/srcpkgs/valgrind/patches/elfv2-ppc64-be.patch";
+ sha256 = "NV/F+5aqFZz7+OF5oN5MUTpThv4H5PEY9sBgnnWohQY=";
+ })
# Fix checks on Musl.
# https://bugs.kde.org/show_bug.cgi?id=453929
(fetchpatch {
diff --git a/pkgs/development/tools/build-managers/cmake/002-application-services.diff b/pkgs/development/tools/build-managers/cmake/002-application-services.diff
index 7c77336b41be6..56f7cd266b7af 100644
--- a/pkgs/development/tools/build-managers/cmake/002-application-services.diff
+++ b/pkgs/development/tools/build-managers/cmake/002-application-services.diff
@@ -1,20 +1,18 @@
-diff --git a/Source/CMakeLists.txt b/Source/CMakeLists.txt
-index 9a18184fd3..278d146dd1 100644
---- a/Source/CMakeLists.txt
-+++ b/Source/CMakeLists.txt
-@@ -933,7 +933,6 @@ endif()
+diff -Naur cmake-3.25.1-old/Source/CMakeLists.txt cmake-3.25.1-new/Source/CMakeLists.txt
+--- cmake-3.25.1-old/Source/CMakeLists.txt 2022-11-30 10:57:03.000000000 -0300
++++ cmake-3.25.1-new/Source/CMakeLists.txt 2022-12-19 01:00:08.412064304 -0300
+@@ -916,7 +916,6 @@
# On Apple we need CoreFoundation and CoreServices
if(APPLE)
- target_link_libraries(CMakeLib "-framework CoreFoundation")
-- target_link_libraries(CMakeLib "-framework CoreServices")
+ target_link_libraries(CMakeLib PUBLIC "-framework CoreFoundation")
+- target_link_libraries(CMakeLib PUBLIC "-framework CoreServices")
endif()
if(WIN32 AND NOT UNIX)
-diff --git a/Source/cmGlobalXCodeGenerator.cxx b/Source/cmGlobalXCodeGenerator.cxx
-index 77403b076a..d5aac95e1e 100644
---- a/Source/cmGlobalXCodeGenerator.cxx
-+++ b/Source/cmGlobalXCodeGenerator.cxx
-@@ -49,10 +49,6 @@ struct cmLinkImplementation;
+diff -Naur cmake-3.25.1-old/Source/cmGlobalXCodeGenerator.cxx cmake-3.25.1-new/Source/cmGlobalXCodeGenerator.cxx
+--- cmake-3.25.1-old/Source/cmGlobalXCodeGenerator.cxx 2022-11-30 10:57:03.000000000 -0300
++++ cmake-3.25.1-new/Source/cmGlobalXCodeGenerator.cxx 2022-12-19 01:00:56.065135169 -0300
+@@ -56,10 +56,6 @@
#if !defined(CMAKE_BOOTSTRAP) && defined(__APPLE__)
# include
@@ -25,19 +23,17 @@ index 77403b076a..d5aac95e1e 100644
#endif
#if !defined(CMAKE_BOOTSTRAP)
-diff --git a/Utilities/cmlibarchive/CMakeLists.txt b/Utilities/cmlibarchive/CMakeLists.txt
-index 79452ffff6..a848731b7e 100644
---- a/Utilities/cmlibarchive/CMakeLists.txt
-+++ b/Utilities/cmlibarchive/CMakeLists.txt
-@@ -2013,11 +2013,6 @@ IF(ENABLE_TEST)
+diff -Naur cmake-3.25.1-old/Utilities/cmlibarchive/CMakeLists.txt cmake-3.25.1-new/Utilities/cmlibarchive/CMakeLists.txt
+--- cmake-3.25.1-old/Utilities/cmlibarchive/CMakeLists.txt 2022-11-30 10:57:03.000000000 -0300
++++ cmake-3.25.1-new/Utilities/cmlibarchive/CMakeLists.txt 2022-12-19 01:01:43.392205981 -0300
+@@ -2041,10 +2041,6 @@
+ ADD_CUSTOM_TARGET(run_all_tests)
ENDIF(ENABLE_TEST)
- ENDIF()
-# We need CoreServices on Mac OS.
-IF(APPLE)
- LIST(APPEND ADDITIONAL_LIBS "-framework CoreServices")
-ENDIF(APPLE)
--
+
add_subdirectory(libarchive)
IF(0) # CMake does not build libarchive's command-line tools.
- add_subdirectory(cat)
diff --git a/pkgs/development/tools/build-managers/cmake/default.nix b/pkgs/development/tools/build-managers/cmake/default.nix
index 0a1e191ba360c..2aff749ebcb0c 100644
--- a/pkgs/development/tools/build-managers/cmake/default.nix
+++ b/pkgs/development/tools/build-managers/cmake/default.nix
@@ -40,11 +40,11 @@ stdenv.mkDerivation rec {
+ lib.optionalString isBootstrap "-boot"
+ lib.optionalString cursesUI "-cursesUI"
+ lib.optionalString qt5UI "-qt5UI";
- version = "3.24.3";
+ version = "3.25.1";
src = fetchurl {
url = "https://cmake.org/files/v${lib.versions.majorMinor version}/cmake-${version}.tar.gz";
- sha256 = "sha256-tTqhD6gr/4TM21kGWSe3LTvuSfTYYmEkn8CYSzs2cpE=";
+ sha256 = "sha256-HFEdCVFq9JNpTtm68TxVlHo2OJZ01lei1eDM7caykdg=";
};
patches = [
diff --git a/pkgs/development/tools/build-managers/meson/default.nix b/pkgs/development/tools/build-managers/meson/default.nix
index 5591b1634236c..23e11a324337c 100644
--- a/pkgs/development/tools/build-managers/meson/default.nix
+++ b/pkgs/development/tools/build-managers/meson/default.nix
@@ -1,19 +1,26 @@
{ lib
+, stdenv
, fetchpatch
, installShellFiles
, ninja
, pkg-config
, python3
+, zlib
+, coreutils
, substituteAll
+, Foundation
+, OpenGL
+, AppKit
+, Cocoa
}:
python3.pkgs.buildPythonApplication rec {
pname = "meson";
- version = "0.64.1";
+ version = "1.0.0";
src = python3.pkgs.fetchPypi {
inherit pname version;
- sha256 = "sha256-Oo4DDCM094IIX4FicGLMbUpnce3zHgVf/jdPnmsImrk=";
+ hash = "sha256-qlCkukVXwl59SERqv96FeVfc31g4X/++Zwug6O+szgU=";
};
patches = [
@@ -52,6 +59,9 @@ python3.pkgs.buildPythonApplication rec {
# https://github.com/NixOS/nixpkgs/issues/86131#issuecomment-711051774
./boost-Do-not-add-system-paths-on-nix.patch
+ # Nixpkgs cctools does not have bitcode support.
+ ./disable-bitcode.patch
+
# Fix passing multiple --define-variable arguments to pkg-config.
# https://github.com/mesonbuild/meson/pull/10670
(fetchpatch {
@@ -61,17 +71,38 @@ python3.pkgs.buildPythonApplication rec {
"docs/yaml/objects/dep.yaml"
];
})
+
+ # tests: avoid unexpected failure when cmake is not installed
+ # https://github.com/mesonbuild/meson/pull/11321
+ (fetchpatch {
+ url = "https://github.com/mesonbuild/meson/commit/a38ad3039d0680f3ac34a6dc487776c79c48acf3.patch";
+ hash = "sha256-9YaXwc+F3Pw4BjuOXqva4MD6DAxX1k5WLbn0xzwuEmw=";
+ })
];
setupHook = ./setup-hook.sh;
- # Meson included tests since 0.45, however they fail in Nixpkgs because they
- # require a typical building environment (including C compiler and stuff).
- # Just for the sake of documentation, the next lines are maintained here.
- doCheck = false;
nativeCheckInputs = [ ninja pkg-config ];
+ checkInputs = [ zlib ]
+ ++ lib.optionals stdenv.isDarwin [ Foundation OpenGL AppKit Cocoa ];
checkPhase = ''
- python ./run_project_tests.py
+ runHook preCheck
+
+ patchShebangs 'test cases'
+ substituteInPlace 'test cases/native/8 external program shebang parsing/script.int.in' \
+ --replace /usr/bin/env ${coreutils}/bin/env
+ # requires git, creating cyclic dependency
+ rm -r 'test cases/common/66 vcstag'
+ # requires glib, creating cyclic dependency
+ rm -r 'test cases/linuxlike/6 subdir include order'
+ rm -r 'test cases/linuxlike/9 compiler checks with dependencies'
+ # requires static zlib, see #66461
+ rm -r 'test cases/linuxlike/14 static dynamic linkage'
+ # Nixpkgs cctools does not have bitcode support.
+ rm -r 'test cases/osx/7 bitcode'
+ HOME="$TMPDIR" python ./run_project_tests.py
+
+ runHook postCheck
'';
postFixup = ''
@@ -84,6 +115,9 @@ python3.pkgs.buildPythonApplication rec {
# Do not propagate Python
rm $out/nix-support/propagated-build-inputs
+
+ substituteInPlace "$out/share/bash-completion/completions/meson" \
+ --replace "python3 -c " "${python3.interpreter} -c "
'';
nativeBuildInputs = [ installShellFiles ];
diff --git a/pkgs/development/tools/build-managers/meson/disable-bitcode.patch b/pkgs/development/tools/build-managers/meson/disable-bitcode.patch
new file mode 100644
index 0000000000000..a72997c104399
--- /dev/null
+++ b/pkgs/development/tools/build-managers/meson/disable-bitcode.patch
@@ -0,0 +1,24 @@
+--- a/mesonbuild/compilers/mixins/clang.py
++++ b/mesonbuild/compilers/mixins/clang.py
+@@ -56,10 +56,6 @@ class ClangCompiler(GnuLikeCompiler):
+ {OptionKey('b_colorout'), OptionKey('b_lto_threads'), OptionKey('b_lto_mode'), OptionKey('b_thinlto_cache'),
+ OptionKey('b_thinlto_cache_dir')})
+
+- # TODO: this really should be part of the linker base_options, but
+- # linkers don't have base_options.
+- if isinstance(self.linker, AppleDynamicLinker):
+- self.base_options.add(OptionKey('b_bitcode'))
+ # All Clang backends can also do LLVM IR
+ self.can_compile_suffixes.add('ll')
+
+--- a/mesonbuild/linkers/linkers.py
++++ b/mesonbuild/linkers/linkers.py
+@@ -785,7 +785,7 @@ class AppleDynamicLinker(PosixDynamicLinkerMixin, DynamicLinker):
+ return self._apply_prefix('-headerpad_max_install_names')
+
+ def bitcode_args(self) -> T.List[str]:
+- return self._apply_prefix('-bitcode_bundle')
++ raise MesonException('Nixpkgs cctools does not support bitcode bundles')
+
+ def fatal_warnings(self) -> T.List[str]:
+ return self._apply_prefix('-fatal_warnings')
diff --git a/pkgs/development/tools/build-managers/ninja/default.nix b/pkgs/development/tools/build-managers/ninja/default.nix
index f80f0289dbe8d..84897e43f7862 100644
--- a/pkgs/development/tools/build-managers/ninja/default.nix
+++ b/pkgs/development/tools/build-managers/ninja/default.nix
@@ -9,6 +9,7 @@
, libxslt
, python3
, re2c
+, buildPackages
, buildDocs ? true
}:
@@ -23,6 +24,8 @@ stdenv.mkDerivation rec {
hash = "sha256-LvV/Fi2ARXBkfyA1paCRmLUwCh/rTyz+tGMg2/qEepI=";
};
+ depsBuildBuild = [ buildPackages.stdenv.cc ];
+
nativeBuildInputs = [
python3
re2c
@@ -35,10 +38,25 @@ stdenv.mkDerivation rec {
libxslt.bin
];
+ postPatch = ''
+ # write rebuild args to file after bootstrap
+ substituteInPlace configure.py --replace "subprocess.check_call(rebuild_args)" "open('rebuild_args','w').write(rebuild_args[0])"
+ '';
+
buildPhase = ''
runHook preBuild
+ # for list of env vars
+ # see https://github.com/ninja-build/ninja/blob/v1.11.1/configure.py#L264
+ CXX="$CXX_FOR_BUILD" \
+ AR="$AR_FOR_BUILD" \
+ CFLAGS="$CFLAGS_FOR_BUILD" \
+ CXXFLAGS="$CXXFLAGS_FOR_BUILD" \
+ LDFLAGS="$LDFLAGS_FOR_BUILD" \
python configure.py --bootstrap
+ python configure.py
+
+ source rebuild_args
'' + lib.optionalString buildDocs ''
# "./ninja -vn manual" output copied here to support cross compilation.
asciidoc -b docbook -d book -o build/manual.xml doc/manual.asciidoc
diff --git a/pkgs/development/tools/build-managers/waf/default.nix b/pkgs/development/tools/build-managers/waf/default.nix
index 8fcb5f2dbac15..4e42927d0293a 100644
--- a/pkgs/development/tools/build-managers/waf/default.nix
+++ b/pkgs/development/tools/build-managers/waf/default.nix
@@ -8,13 +8,13 @@ let
in
stdenv.mkDerivation rec {
pname = "waf";
- version = "2.0.24";
+ version = "2.0.25";
src = fetchFromGitLab {
owner = "ita1024";
repo = "waf";
rev = "${pname}-${version}";
- sha256 = "sha256-nunPDYAy0yfDJpsc+E8SyyFLny19wwrVzxeUOhh7nc4=";
+ sha256 = "sha256-wqZEAfGRHhcd7Xm2pQ0FTjZGfuPafRrZAUdpc7ACoEA=";
};
nativeBuildInputs = [ python3 ensureNewerSourcesForZipFilesHook ];
diff --git a/pkgs/development/tools/cambalache/default.nix b/pkgs/development/tools/cambalache/default.nix
index e2e7157425b6a..6090f8dfdbf46 100644
--- a/pkgs/development/tools/cambalache/default.nix
+++ b/pkgs/development/tools/cambalache/default.nix
@@ -40,6 +40,8 @@ python3.pkgs.buildPythonApplication rec {
desktop-file-utils # for update-desktop-database
shared-mime-info # for update-mime-database
wrapGAppsHook
+ gtk4 # checks for broadwayd and gtk4-broadwayd during configure
+ gtk3
];
pythonPath = with python3.pkgs; [
@@ -57,10 +59,6 @@ python3.pkgs.buildPythonApplication rec {
libhandy
];
- # Not compatible with gobject-introspection setup hooks.
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
# Prevent double wrapping.
dontWrapGApps = true;
diff --git a/pkgs/development/tools/documentation/doxygen/default.nix b/pkgs/development/tools/documentation/doxygen/default.nix
index 8cdb533da8e03..856d9bc26bf95 100644
--- a/pkgs/development/tools/documentation/doxygen/default.nix
+++ b/pkgs/development/tools/documentation/doxygen/default.nix
@@ -18,10 +18,9 @@ stdenv.mkDerivation rec {
bison
];
- buildInputs =
- lib.optionals (qt5 != null) (with qt5; [ qtbase wrapQtAppsHook ])
- ++ lib.optional stdenv.isSunOS libiconv
- ++ lib.optionals stdenv.isDarwin [ CoreServices libiconv ];
+ buildInputs = [ libiconv ]
+ ++ lib.optionals (qt5 != null) (with qt5; [ qtbase wrapQtAppsHook ])
+ ++ lib.optionals stdenv.isDarwin [ CoreServices ];
cmakeFlags =
[ "-DICONV_INCLUDE_DIR=${libiconv}/include" ] ++
diff --git a/pkgs/development/tools/documentation/gi-docgen/default.nix b/pkgs/development/tools/documentation/gi-docgen/default.nix
index 512f7aeb7bd58..05da1f3aa0c10 100644
--- a/pkgs/development/tools/documentation/gi-docgen/default.nix
+++ b/pkgs/development/tools/documentation/gi-docgen/default.nix
@@ -8,13 +8,13 @@
python3.pkgs.buildPythonApplication rec {
pname = "gi-docgen";
- version = "2022.2";
+ version = "2023.1";
format = "other";
src = fetchurl {
url = "mirror://gnome/sources/gi-docgen/${lib.versions.major version}/gi-docgen-${version}.tar.xz";
- sha256 = "JlQ5ENdqedYvZnEihWkqO2KnXzHQfLvupG7sfjTmOlQ=";
+ sha256 = "qaaHwbfEpBOaIUvUUeAcqGExoxYfaKo+BzJbBgArv7Y=";
};
depsBuildBuild = [
@@ -31,7 +31,7 @@ python3.pkgs.buildPythonApplication rec {
markdown
markupsafe
pygments
- toml
+ toml # remove once python311 is the default
typogrify
];
diff --git a/pkgs/development/tools/glslviewer/default.nix b/pkgs/development/tools/glslviewer/default.nix
index fcebe93aaa2df..06016bec25b56 100644
--- a/pkgs/development/tools/glslviewer/default.nix
+++ b/pkgs/development/tools/glslviewer/default.nix
@@ -15,6 +15,10 @@ stdenv.mkDerivation rec {
sha256 = "0v7x93b61ama0gmzlx1zc56jgi7bvzsfvbkfl82xzwf2h5g1zni7";
};
+ postPatch = ''
+ sed '1i#include ' -i src/tools/text.cpp # gcc12
+ '';
+
nativeBuildInputs = [ pkg-config ensureNewerSourcesForZipFilesHook python3Packages.six ];
buildInputs = [
glfw libGLU glfw libXrandr libXdamage
diff --git a/pkgs/development/tools/misc/binutils/build-components-separately.patch b/pkgs/development/tools/misc/binutils/build-components-separately.patch
deleted file mode 100644
index 0b4162d848803..0000000000000
--- a/pkgs/development/tools/misc/binutils/build-components-separately.patch
+++ /dev/null
@@ -1,155 +0,0 @@
-diff --git a/bfd/configure.ac b/bfd/configure.ac
-index fec067b2135..377e1f5443f 100644
---- a/bfd/configure.ac
-+++ b/bfd/configure.ac
-@@ -292,30 +292,16 @@ AC_CACHE_CHECK(linker --as-needed support, bfd_cv_ld_as_needed,
-
- LT_LIB_M
-
--# When building a shared libbfd, link against the pic version of libiberty
--# so that apps that use libbfd won't need libiberty just to satisfy any
--# libbfd references.
--# We can't do that if a pic libiberty is unavailable since including non-pic
--# code would insert text relocations into libbfd.
- SHARED_LIBADD=
--SHARED_LDFLAGS=
-+SHARED_LDFLAGS=-liberty
- if test "$enable_shared" = "yes"; then
--changequote(,)dnl
-- x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
--changequote([,])dnl
-- if test -n "$x"; then
-- SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty"
-- fi
--fi
--
- SHARED_LIBADD="$SHARED_LIBADD $LIBINTL"
-
--if test "$enable_shared" = "yes"; then
- case "${host}" in
- # More hacks to build DLLs on Windows.
- *-*-cygwin*)
- SHARED_LDFLAGS="-no-undefined"
-- SHARED_LIBADD="-L`pwd`/../libiberty -liberty $SHARED_LIBADD -lcygwin -lkernel32"
-+ SHARED_LIBADD="-liberty $SHARED_LIBADD -lcygwin -lkernel32"
- ;;
- esac
-
-diff --git a/opcodes/Makefile.am b/opcodes/Makefile.am
-index 0e04b4c05c4..848a02662e7 100644
---- a/opcodes/Makefile.am
-+++ b/opcodes/Makefile.am
-@@ -51,7 +51,7 @@ libopcodes_la_LDFLAGS += -rpath $(rpath_bfdlibdir)
- endif
-
- # This is where bfd.h lives.
--BFD_H = ../bfd/bfd.h
-+BFD_H = $(BFDDIR)/bfd.h
-
- BUILD_LIBS = @BUILD_LIBS@
- BUILD_LIB_DEPS = @BUILD_LIB_DEPS@
-@@ -303,7 +303,7 @@ OFILES = @BFD_MACHINES@
- # development.sh is used to determine -Werror default.
- CONFIG_STATUS_DEPENDENCIES = $(BFDDIR)/development.sh
-
--AM_CPPFLAGS = -I. -I$(srcdir) -I../bfd -I$(INCDIR) -I$(BFDDIR) @HDEFINES@ @INCINTL@
-+AM_CPPFLAGS = -I. -I$(srcdir) -I$(INCDIR) -I$(BFDDIR) @HDEFINES@ @INCINTL@
-
- disassemble.lo: disassemble.c
- if am__fastdepCC
-@@ -327,9 +327,18 @@ libopcodes_la_SOURCES = dis-buf.c disassemble.c dis-init.c
--libopcodes_la_DEPENDENCIES = $(OFILES) @SHARED_DEPENDENCIES@
-+libopcodes_la_DEPENDENCIES = $(OFILES) @SHARED_DEPENDENCIES@ libtool-soversion
- libopcodes_la_LIBADD = $(OFILES) @SHARED_LIBADD@
--libopcodes_la_LDFLAGS += -release `cat ../bfd/libtool-soversion` @SHARED_LDFLAGS@
-+libopcodes_la_LDFLAGS += -release `cat libtool-soversion` @SHARED_LDFLAGS@
- # Allow dependency tracking to work on all the source files.
- EXTRA_libopcodes_la_SOURCES = $(LIBOPCODES_CFILES)
-
-+libtool-soversion:
-+ @echo "creating $@"
-+ bfd_soversion="$(VERSION)" ;\
-+ . $(BFDDIR)/development.sh ;\
-+ if test "$$development" = true ; then \
-+ bfd_soversion="$(VERSION).$${bfd_version_date}" ;\
-+ fi ;\
-+ echo "$${bfd_soversion}" > $@
-+
- # libtool will build .libs/libopcodes.a. We create libopcodes.a in
- # the build directory so that we don't have to convert all the
- # programs that use libopcodes.a simultaneously. This is a hack which
-diff --git a/opcodes/configure.ac b/opcodes/configure.ac
-index e564f067334..5da62a3d58b 100644
---- a/opcodes/configure.ac
-+++ b/opcodes/configure.ac
-@@ -98,6 +98,8 @@ BFD_64_BIT
- AC_SUBST(HDEFINES)
- AC_PROG_INSTALL
-
-+GCC_HEADER_STDINT(bfd_stdint.h)
-+
- AC_CHECK_DECLS([basename, stpcpy])
-
- # Check if sigsetjmp is available. Using AC_CHECK_FUNCS won't do
-@@ -148,44 +150,21 @@ AC_CACHE_CHECK(linker --as-needed support, bfd_cv_ld_as_needed,
-
- LT_LIB_M
-
--#Libs for generator progs
--if test "x$cross_compiling" = "xno"; then
-- BUILD_LIBS=../libiberty/libiberty.a
-- BUILD_LIB_DEPS=$BUILD_LIBS
--else
-- # if cross-compiling, assume that the system provides -liberty
-- # and that the version is compatible with new headers.
-- BUILD_LIBS=-liberty
-- BUILD_LIB_DEPS=
--fi
--BUILD_LIBS="$BUILD_LIBS $LIBINTL"
--BUILD_LIB_DEPS="$BUILD_LIB_DEPS $LIBINTL_DEP"
-+BUILD_LIBS="-liberty $LIBINTL"
-+BUILD_LIB_DEPS="$LIBINTL_DEP"
-
- AC_SUBST(BUILD_LIBS)
- AC_SUBST(BUILD_LIB_DEPS)
-
- # Horrible hacks to build DLLs on Windows and a shared library elsewhere.
- SHARED_LDFLAGS=
--SHARED_LIBADD=
-+SHARED_LIBADD=-liberty
- SHARED_DEPENDENCIES=
--if test "$enable_shared" = "yes"; then
--# When building a shared libopcodes, link against the pic version of libiberty
--# so that apps that use libopcodes won't need libiberty just to satisfy any
--# libopcodes references.
--# We can't do that if a pic libiberty is unavailable since including non-pic
--# code would insert text relocations into libopcodes.
- # Note that linking against libbfd as we do here, which is itself linked
- # against libiberty, may not satisfy all the libopcodes libiberty references
- # since libbfd may not pull in the entirety of libiberty.
- # Also, jam libintl into the right place in all of this: after libiberty,
- # which uses it, but before -lcygwin, which it uses.
--changequote(,)dnl
-- x=`sed -n -e 's/^[ ]*PICFLAG[ ]*=[ ]*//p' < ../libiberty/Makefile | sed -n '$p'`
--changequote([,])dnl
-- if test -n "$x"; then
-- SHARED_LIBADD="-L`pwd`/../libiberty/pic -liberty"
-- fi
--fi
-
- SHARED_LIBADD="$SHARED_LIBADD $LIBINTL"
-
-@@ -193,11 +172,10 @@ if test "$enable_shared" = "yes"; then
- case "${host}" in
- *-*-cygwin*)
- SHARED_LDFLAGS="-no-undefined"
-- SHARED_LIBADD="-L`pwd`/../bfd -lbfd -L`pwd`/../libiberty -liberty $SHARED_LIBADD"
-+ SHARED_LIBADD="-lbfd -liberty $SHARED_LIBADD"
- ;;
- *)
-- SHARED_LIBADD="../bfd/libbfd.la ${SHARED_LIBADD}"
-- SHARED_DEPENDENCIES="../bfd/libbfd.la"
-+ SHARED_LIBADD="-lbfd ${SHARED_LIBADD}"
- ;;
- esac
-
diff --git a/pkgs/development/tools/misc/binutils/default.nix b/pkgs/development/tools/misc/binutils/default.nix
index 39e852a60bbba..0d7e12a51fb19 100644
--- a/pkgs/development/tools/misc/binutils/default.nix
+++ b/pkgs/development/tools/misc/binutils/default.nix
@@ -31,12 +31,12 @@ assert enableGold -> withGold stdenv.targetPlatform;
let
inherit (stdenv) buildPlatform hostPlatform targetPlatform;
- version = "2.39";
+ version = "2.40";
srcs = {
normal = fetchurl {
url = "mirror://gnu/binutils/binutils-${version}.tar.bz2";
- sha256 = "sha256-2iSoT+8iAQLdJAQt8G/eqFHCYUpTd/hu/6KPM7exYUg=";
+ hash = "sha256-+CmOsVOks30RLpRapcsoUAQLzyaj6mW1pxXIOv4F5Io=";
};
vc4-none = fetchFromGitHub {
owner = "itszor";
@@ -84,12 +84,10 @@ stdenv.mkDerivation (finalAttrs: {
# cross-compiling.
./always-search-rpath.patch
- # Upstream backport of https://sourceware.org/PR29451:
- # Don't emit 0-sized debug entries for objects without size.
- # Without the change elfutils on i686-linux fail dwarf validity test:
- # https://sourceware.org/PR29450
- # Remove once 2.40 releases.
- ./gas-dwarf-zero-PR29451.patch
+ # Avoid `lib -> out -> lib` reference. Normally `bfd-plugins` does
+ # not need to know binutils' BINDIR at all. It's an absolute path
+ # where libraries are stored.
+ ./plugins-no-BINDIR.patch
]
++ lib.optional targetPlatform.isiOS ./support-ios.patch
# Adds AVR-specific options to "size" for compatibility with Atmel's downstream distribution
@@ -105,7 +103,15 @@ stdenv.mkDerivation (finalAttrs: {
else ./mips64-default-n64.patch)
;
- outputs = [ "out" "info" "man" ];
+ outputs = [ "out" "info" "man" "dev" ]
+ # Ideally we would like to always install 'lib' into a separate
+ # target. Unfortunately cross-compiled binutils installs libraries
+ # across both `$lib/lib/` and `$out/$target/lib` with a reference
+ # from $out to $lib. Probably a binutils bug: all libraries should go
+ # to $lib as binutils does not build target libraries. Let's make our
+ # life slightly simpler by installing everything into $out for
+ # cross-binutils.
+ ++ lib.optionals (targetPlatform == hostPlatform) [ "lib" ];
strictDeps = true;
depsBuildBuild = [ buildPackages.stdenv.cc ];
@@ -196,8 +202,12 @@ stdenv.mkDerivation (finalAttrs: {
# Unconditionally disable:
# - musl target needs porting: https://sourceware.org/PR29477
- # - all targets rely on javac: https://sourceware.org/PR29479
"--disable-gprofng"
+
+ # By default binutils searches $libdir for libraries. This brings in
+ # libbfd and libopcodes into a default visibility. Drop default lib
+ # path to force users to declare their use of these libraries.
+ "--with-lib-path=:"
]
++ lib.optionals withAllTargets [ "--enable-targets=all" ]
++ lib.optionals enableGold [ "--enable-gold" "--enable-plugins" ]
@@ -218,10 +228,26 @@ stdenv.mkDerivation (finalAttrs: {
enableParallelBuilding = true;
+ # For the same reason we don't split "lib" output we undo the $target/
+ # prefix for installed headers and libraries we link:
+ # $out/$host/$target/lib/* to $out/lib/
+ # $out/$host/$target/include/* to $dev/include/*
+ # TODO(trofi): fix installation paths upstream so we could remove this
+ # code and have "lib" output unconditionally.
+ postInstall = lib.optionalString (hostPlatform != targetPlatform) ''
+ ln -s $out/${hostPlatform.config}/${targetPlatform.config}/lib/* $out/lib/
+ ln -s $out/${hostPlatform.config}/${targetPlatform.config}/include/* $dev/include/
+ '';
+
passthru = {
inherit targetPrefix;
hasGold = enableGold;
isGNU = true;
+ # Having --enable-plugins is not enough, system has to support
+ # dlopen() or equivalent. See config/plugins.m4 and configure.ac
+ # (around PLUGINS) for cases that support or not support plugins.
+ # No platform specific filters yet here.
+ hasPluginAPI = enableGold;
};
meta = with lib; {
diff --git a/pkgs/development/tools/misc/binutils/gas-dwarf-zero-PR29451.patch b/pkgs/development/tools/misc/binutils/gas-dwarf-zero-PR29451.patch
deleted file mode 100644
index 5f1293f8f7320..0000000000000
--- a/pkgs/development/tools/misc/binutils/gas-dwarf-zero-PR29451.patch
+++ /dev/null
@@ -1,71 +0,0 @@
-https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=d7abcbcea5ddd40a3bf28758b62f35933c59f996
-
-Don't emit 0-sized debug entries for objects without size.
-Without the change elfutils on i686-linux fail dwarf validity test:
- https://sourceware.org/PR29450
---- a/gas/dwarf2dbg.c
-+++ b/gas/dwarf2dbg.c
-@@ -2882,6 +2882,7 @@ out_debug_info (segT info_seg, segT abbrev_seg, segT line_seg, segT str_seg,
- {
- const char *name;
- size_t len;
-+ expressionS size = { .X_op = O_constant };
-
- /* Skip warning constructs (see above). */
- if (symbol_get_bfdsym (symp)->flags & BSF_WARNING)
-@@ -2895,6 +2896,18 @@ out_debug_info (segT info_seg, segT abbrev_seg, segT line_seg, segT str_seg,
- if (!S_IS_DEFINED (symp) || !S_IS_FUNCTION (symp))
- continue;
-
-+#if defined (OBJ_ELF) /* || defined (OBJ_MAYBE_ELF) */
-+ size.X_add_number = S_GET_SIZE (symp);
-+ if (size.X_add_number == 0 && IS_ELF
-+ && symbol_get_obj (symp)->size != NULL)
-+ {
-+ size.X_op = O_add;
-+ size.X_op_symbol = make_expr_symbol (symbol_get_obj (symp)->size);
-+ }
-+#endif
-+ if (size.X_op == O_constant && size.X_add_number == 0)
-+ continue;
-+
- subseg_set (str_seg, 0);
- name_sym = symbol_temp_new_now_octets ();
- name = S_GET_NAME (symp);
-@@ -2920,29 +2933,17 @@ out_debug_info (segT info_seg, segT abbrev_seg, segT line_seg, segT str_seg,
- emit_expr (&exp, sizeof_address);
-
- /* DW_AT_high_pc */
-- exp.X_op = O_constant;
--#if defined (OBJ_ELF) /* || defined (OBJ_MAYBE_ELF) */
-- exp.X_add_number = S_GET_SIZE (symp);
-- if (exp.X_add_number == 0 && IS_ELF
-- && symbol_get_obj (symp)->size != NULL)
-- {
-- exp.X_op = O_add;
-- exp.X_op_symbol = make_expr_symbol (symbol_get_obj (symp)->size);
-- }
--#else
-- exp.X_add_number = 0;
--#endif
- if (DWARF2_VERSION < 4)
- {
-- if (exp.X_op == O_constant)
-- exp.X_op = O_symbol;
-- exp.X_add_symbol = symp;
-- emit_expr (&exp, sizeof_address);
-+ if (size.X_op == O_constant)
-+ size.X_op = O_symbol;
-+ size.X_add_symbol = symp;
-+ emit_expr (&size, sizeof_address);
- }
-- else if (exp.X_op == O_constant)
-- out_uleb128 (exp.X_add_number);
-+ else if (size.X_op == O_constant)
-+ out_uleb128 (size.X_add_number);
- else
-- emit_leb128_expr (symbol_get_value_expression (exp.X_op_symbol), 0);
-+ emit_leb128_expr (symbol_get_value_expression (size.X_op_symbol), 0);
- }
-
- /* End of children. */
diff --git a/pkgs/development/tools/misc/binutils/libbfd.nix b/pkgs/development/tools/misc/binutils/libbfd.nix
index 16737a7b5ee84..dca62b82eead0 100644
--- a/pkgs/development/tools/misc/binutils/libbfd.nix
+++ b/pkgs/development/tools/misc/binutils/libbfd.nix
@@ -1,45 +1,22 @@
{ lib, stdenv
-, buildPackages
-, gnu-config, autoreconfHook, bison, binutils-unwrapped, texinfo
-, libiberty, libintl, zlib
+, binutils-unwrapped-all-targets
}:
stdenv.mkDerivation {
pname = "libbfd";
- inherit (binutils-unwrapped) version src;
-
- outputs = [ "out" "dev" ];
-
- patches = binutils-unwrapped.patches ++ [
- ./build-components-separately.patch
+ inherit (binutils-unwrapped-all-targets) version;
+
+ dontUnpack = true;
+ dontBuild = true;
+ dontInstall = true;
+ propagatedBuildInputs = [
+ binutils-unwrapped-all-targets.dev
+ binutils-unwrapped-all-targets.lib
];
- # We just want to build libbfd
- postPatch = ''
- cd bfd
- '';
-
- postAutoreconf = ''
- echo "Updating config.guess and config.sub from ${gnu-config}"
- cp -f ${gnu-config}/config.{guess,sub} ../
- '';
-
- # We update these ourselves
- dontUpdateAutotoolsGnuConfigScripts = true;
-
- strictDeps = true;
- nativeBuildInputs = [ autoreconfHook bison texinfo ];
- buildInputs = [ libiberty zlib ] ++ lib.optionals stdenv.isDarwin [ libintl ];
- depsBuildBuild = [ buildPackages.stdenv.cc ];
-
- configurePlatforms = [ "build" "host" ];
- configureFlags = [
- "--enable-targets=all" "--enable-64-bit-bfd"
- "--enable-install-libbfd"
- "--with-system-zlib"
- ] ++ lib.optional (!stdenv.hostPlatform.isStatic) "--enable-shared";
-
- enableParallelBuilding = true;
+ passthru = {
+ inherit (binutils-unwrapped-all-targets) dev hasPluginAPI;
+ };
meta = with lib; {
description = "A library for manipulating containers of machine code";
diff --git a/pkgs/development/tools/misc/binutils/libopcodes.nix b/pkgs/development/tools/misc/binutils/libopcodes.nix
index e4b6cec41b4f0..e067282a0e5e1 100644
--- a/pkgs/development/tools/misc/binutils/libopcodes.nix
+++ b/pkgs/development/tools/misc/binutils/libopcodes.nix
@@ -1,38 +1,22 @@
-{ lib, stdenv, buildPackages
-, autoreconfHook, bison, binutils-unwrapped
-, libiberty, libbfd
+{ lib, stdenv
+, binutils-unwrapped-all-targets
}:
stdenv.mkDerivation {
pname = "libopcodes";
- inherit (binutils-unwrapped) version src;
-
- outputs = [ "out" "dev" ];
-
- patches = binutils-unwrapped.patches ++ [
- ./build-components-separately.patch
+ inherit (binutils-unwrapped-all-targets) version;
+
+ dontUnpack = true;
+ dontBuild = true;
+ dontInstall = true;
+ propagatedBuildInputs = [
+ binutils-unwrapped-all-targets.dev
+ binutils-unwrapped-all-targets.lib
];
- # We just want to build libopcodes
- postPatch = ''
- cd opcodes
- find . ../include/opcode -type f -exec sed {} -i -e 's/"bfd.h"//' \;
- '';
-
- depsBuildBuild = [ buildPackages.stdenv.cc ];
- nativeBuildInputs = [ autoreconfHook bison ];
- buildInputs = [ libiberty ];
- # dis-asm.h includes bfd.h
- propagatedBuildInputs = [ libbfd ];
-
- configurePlatforms = [ "build" "host" ];
- configureFlags = [
- "--enable-targets=all" "--enable-64-bit-bfd"
- "--enable-install-libbfd"
- "--enable-shared"
- ];
-
- enableParallelBuilding = true;
+ passthru = {
+ inherit (binutils-unwrapped-all-targets) dev hasPluginAPI;
+ };
meta = with lib; {
description = "A library from binutils for manipulating machine code";
diff --git a/pkgs/development/tools/misc/binutils/plugins-no-BINDIR.patch b/pkgs/development/tools/misc/binutils/plugins-no-BINDIR.patch
new file mode 100644
index 0000000000000..562aad33eccd4
--- /dev/null
+++ b/pkgs/development/tools/misc/binutils/plugins-no-BINDIR.patch
@@ -0,0 +1,25 @@
+Avoid `lib -> out -> lib` reference. Normally `bfd-plugins` does not
+need to know binutils' BINDIR at all. It's an absolute path where
+libraries are stored.
+--- a/bfd/plugin.c
++++ b/bfd/plugin.c
+@@ -493,7 +493,7 @@ build_plugin_list (bfd *abfd)
+ when configuring binutils using --libdir. Search in the proper
+ path first, then the old one for backwards compatibility. */
+ static const char *path[]
+- = { LIBDIR "/bfd-plugins", BINDIR "/../lib/bfd-plugins" };
++ = { LIBDIR "/bfd-plugins", };
+ struct stat last_st;
+ unsigned int i;
+
+@@ -508,9 +508,7 @@ build_plugin_list (bfd *abfd)
+ last_st.st_ino = 0;
+ for (i = 0; i < sizeof (path) / sizeof (path[0]); i++)
+ {
+- char *plugin_dir = make_relative_prefix (plugin_program_name,
+- BINDIR,
+- path[i]);
++ char *plugin_dir = xstrdup (path[i]);
+ if (plugin_dir)
+ {
+ struct stat st;
diff --git a/pkgs/development/tools/misc/d-feet/default.nix b/pkgs/development/tools/misc/d-feet/default.nix
index d105dd61665b7..c59ed440b7c02 100644
--- a/pkgs/development/tools/misc/d-feet/default.nix
+++ b/pkgs/development/tools/misc/d-feet/default.nix
@@ -63,10 +63,6 @@ python3.pkgs.buildPythonApplication rec {
"-Dtests=false" # needs dbus
];
- # Temporary fix
- # See https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
postPatch = ''
chmod +x meson_post_install.py
patchShebangs meson_post_install.py
diff --git a/pkgs/development/tools/misc/dejagnu/default.nix b/pkgs/development/tools/misc/dejagnu/default.nix
index 6c2799cfadf78..5c7720a2024b4 100644
--- a/pkgs/development/tools/misc/dejagnu/default.nix
+++ b/pkgs/development/tools/misc/dejagnu/default.nix
@@ -36,8 +36,11 @@ stdenv.mkDerivation rec {
'';
postInstall = ''
- wrapProgram "$out/bin/runtest" \
- --prefix PATH ":" "${expect}/bin"
+ # 'runtest' and 'dejagnu' look up 'expect' in their 'bin' path
+ # first. We avoid use of 'wrapProgram' here because wrapping
+ # of shell scripts does not preserve argv[0] for schell scripts:
+ # https://sourceware.org/PR30052#c5
+ ln -s ${expect}/bin/expect $out/bin/expect
'';
meta = with lib; {
diff --git a/pkgs/development/tools/misc/edb/default.nix b/pkgs/development/tools/misc/edb/default.nix
index ec65ca62fa30b..2203863264f34 100644
--- a/pkgs/development/tools/misc/edb/default.nix
+++ b/pkgs/development/tools/misc/edb/default.nix
@@ -30,6 +30,8 @@ mkDerivation rec {
# Change default optional terminal program path to one that is more likely to work on NixOS.
substituteInPlace ./src/Configuration.cpp --replace "/usr/bin/xterm" "xterm";
+
+ sed '1i#include ' -i include/{RegisterViewModelBase,State,IState}.h # gcc12
'';
meta = with lib; {
diff --git a/pkgs/development/tools/misc/gperf/default.nix b/pkgs/development/tools/misc/gperf/default.nix
index 71b0bbd0b0d69..d836e5a973aef 100644
--- a/pkgs/development/tools/misc/gperf/default.nix
+++ b/pkgs/development/tools/misc/gperf/default.nix
@@ -9,6 +9,8 @@ stdenv.mkDerivation rec {
sha256 = "1qispg6i508rq8pkajh26cznwimbnj06wq9sd85vg95v8nwld1aq";
};
+ enableParallelBuilding = true;
+
meta = {
description = "Perfect hash function generator";
diff --git a/pkgs/development/tools/misc/help2man/default.nix b/pkgs/development/tools/misc/help2man/default.nix
index 1d25dc8c6e0d5..5c54941b90775 100644
--- a/pkgs/development/tools/misc/help2man/default.nix
+++ b/pkgs/development/tools/misc/help2man/default.nix
@@ -7,11 +7,11 @@
stdenv.mkDerivation rec {
pname = "help2man";
- version = "1.49.2";
+ version = "1.49.3";
src = fetchurl {
- url = "mirror://gnu/${pname}/${pname}-${version}.tar.xz";
- sha256 = "sha256-ni4OITp+CjYkTu1iBNkCtlBGAqV4tuzRUmixRU3q3TY=";
+ url = "mirror://gnu/help2man/help2man-${version}.tar.xz";
+ sha256 = "sha256-TX5P3vLspq/geiaCFRzqeHgeCk6PliIULZ9wwIOi/U8=";
};
strictDeps = true;
@@ -25,9 +25,9 @@ stdenv.mkDerivation rec {
"--enable-nls"
];
- doCheck = false; # target `check' is missing
+ doCheck = false; # target `check' is missing
- patches = if stdenv.hostPlatform.isCygwin then [ ./1.40.4-cygwin-nls.patch ] else null;
+ patches = lib.optional stdenv.hostPlatform.isCygwin ./1.40.4-cygwin-nls.patch;
# We don't use makeWrapper here because it uses substitutions our
# bootstrap shell can't handle.
@@ -36,8 +36,7 @@ stdenv.mkDerivation rec {
cat > $out/bin/help2man <' -i components/myguiplatform/myguidatamanager.cpp # gcc12
+ '';
+
nativeBuildInputs = [ cmake pkg-config wrapQtAppsHook ];
buildInputs = [
diff --git a/pkgs/games/openrct2/default.nix b/pkgs/games/openrct2/default.nix
index d474b0eae92ac..10914d4107748 100644
--- a/pkgs/games/openrct2/default.nix
+++ b/pkgs/games/openrct2/default.nix
@@ -94,6 +94,11 @@ stdenv.mkDerivation {
"-DDOWNLOAD_TITLE_SEQUENCES=OFF"
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=maybe-uninitialized"
+ ];
+
postUnpack = ''
cp -r ${objects-src} $sourceRoot/data/object
cp -r ${title-sequences-src} $sourceRoot/data/sequence
diff --git a/pkgs/games/stepmania/default.nix b/pkgs/games/stepmania/default.nix
index 2445ee9096c99..6cb7a23dff5ff 100644
--- a/pkgs/games/stepmania/default.nix
+++ b/pkgs/games/stepmania/default.nix
@@ -18,6 +18,10 @@ stdenv.mkDerivation rec {
./0001-fix-build-with-ffmpeg-4.patch
];
+ postPatch = ''
+ sed '1i#include ' -i src/arch/ArchHooks/ArchHooks.h # gcc12
+ '';
+
nativeBuildInputs = [ cmake nasm ];
buildInputs = [
diff --git a/pkgs/games/supertux/default.nix b/pkgs/games/supertux/default.nix
index 679500f974c33..857617bc4bfa4 100644
--- a/pkgs/games/supertux/default.nix
+++ b/pkgs/games/supertux/default.nix
@@ -29,6 +29,10 @@ stdenv.mkDerivation rec {
sha256 = "1xkr3ka2sxp5s0spp84iv294i29s1vxqzazb6kmjc0n415h0x57p";
};
+ postPatch = ''
+ sed '1i#include ' -i external/partio_zip/zip_manager.hpp # gcc12
+ '';
+
nativeBuildInputs = [ pkg-config cmake ];
buildInputs = [
diff --git a/pkgs/games/zod/default.nix b/pkgs/games/zod/default.nix
index 737fed1e7f64d..e0c2031dde250 100644
--- a/pkgs/games/zod/default.nix
+++ b/pkgs/games/zod/default.nix
@@ -22,6 +22,9 @@ let
url = "mirror://sourceforge/zod/linux_releases/zod_linux-${version}.tar.gz";
sha256 = "017v96aflrv07g8j8zk9mq8f8rqxl5228rjff5blq8dxpsv1sx7h";
};
+ postPatch = ''
+ sed '1i#include ' -i zod_src/common.cpp # gcc12
+ '';
nativeBuildInputs = [
makeWrapper
];
@@ -37,7 +40,7 @@ let
hardeningDisable = [ "format" ];
NIX_LDFLAGS = "-L${libmysqlclient}/lib/mysql";
zod_engine = stdenv.mkDerivation {
- inherit version src nativeBuildInputs buildInputs hardeningDisable NIX_LDFLAGS;
+ inherit version src postPatch nativeBuildInputs buildInputs hardeningDisable NIX_LDFLAGS;
pname = "${name}-engine";
enableParallelBuilding = true;
preBuild = "cd zod_src";
@@ -48,7 +51,7 @@ let
'';
};
zod_map_editor = stdenv.mkDerivation {
- inherit version src nativeBuildInputs buildInputs hardeningDisable NIX_LDFLAGS;
+ inherit version src postPatch nativeBuildInputs buildInputs hardeningDisable NIX_LDFLAGS;
pname = "${name}-map_editor";
enableParallelBuilding = true;
preBuild = "cd zod_src";
diff --git a/pkgs/misc/drivers/sc-controller/default.nix b/pkgs/misc/drivers/sc-controller/default.nix
index 0aeb5f2e963a6..11663d5d4c444 100644
--- a/pkgs/misc/drivers/sc-controller/default.nix
+++ b/pkgs/misc/drivers/sc-controller/default.nix
@@ -18,12 +18,9 @@ buildPythonApplication rec {
sha256 = "sha256-ym5fkOTRhibBaUqT0+p/jyqqKOVsyMz5INgfkoz0IJA=";
};
- # see https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
+ nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
- nativeBuildInputs = [ wrapGAppsHook ];
-
- buildInputs = [ gtk3 gobject-introspection libappindicator-gtk3 librsvg ];
+ buildInputs = [ gtk3 libappindicator-gtk3 librsvg ];
propagatedBuildInputs = [ evdev pygobject3 pylibacl vdf ];
diff --git a/pkgs/misc/solfege/default.nix b/pkgs/misc/solfege/default.nix
index 121933f69e9c8..64ddfae7b3266 100644
--- a/pkgs/misc/solfege/default.nix
+++ b/pkgs/misc/solfege/default.nix
@@ -35,13 +35,11 @@ buildPythonApplication rec {
texinfo
txt2man
- # https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663
gobject-introspection
wrapGAppsHook
];
buildInputs = [
- gobject-introspection
gtk3
librsvg
];
diff --git a/pkgs/misc/uboot/default.nix b/pkgs/misc/uboot/default.nix
index 42d7021f3452b..a360058725006 100644
--- a/pkgs/misc/uboot/default.nix
+++ b/pkgs/misc/uboot/default.nix
@@ -92,16 +92,6 @@ let
passAsFile = [ "extraConfig" ];
- # Workaround '-idirafter' ordering bug in staging-next:
- # https://github.com/NixOS/nixpkgs/pull/210004
- # where libc '-idirafter' gets added after user's idirafter and
- # breaks.
- # TODO(trofi): remove it in staging once fixed in cc-wrapper.
- preConfigure = ''
- export NIX_CFLAGS_COMPILE_BEFORE_${lib.replaceStrings ["-" "."] ["_" "_"] buildPackages.stdenv.hostPlatform.config}=$(< ${buildPackages.stdenv.cc}/nix-support/libc-cflags)
- export NIX_CFLAGS_COMPILE_BEFORE_${lib.replaceStrings ["-" "."] ["_" "_"] stdenv.hostPlatform.config}=$(< ${stdenv.cc}/nix-support/libc-cflags)
- '';
-
configurePhase = ''
runHook preConfigure
diff --git a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/boot.nix b/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/boot.nix
index 2ca2d061591af..910b42b0c9d40 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/boot.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/adv_cmds/boot.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, buildPackages, appleDerivation, fetchzip, bsdmake, perl, flex, bison
+{ lib, stdenv, buildPackages, appleDerivation, fetchFromGitHub, bsdmake, perl, flex, bison
}:
# this derivation sucks
@@ -10,9 +10,11 @@
#
# the more recent adv_cmds release is used for everything else in this package
-let recentAdvCmds = fetchzip {
- url = "https://opensource.apple.com/tarballs/adv_cmds/adv_cmds-158.tar.gz";
- sha256 = "0z081kcprzg5jcvqivfnwvvv6wfxzkjg2jc2lagsf8c7j7vgm8nn";
+let recentAdvCmds = fetchFromGitHub {
+ owner = "apple-oss-distributions";
+ repo = "adv_cmds";
+ rev = "adv_cmds-158";
+ hash = "sha256-1qL69pGHIaefooJJ8eT83XGz9+bW7Yg3k+X9fNkMCHw=";
};
in appleDerivation {
diff --git a/pkgs/os-specific/darwin/apple-source-releases/default.nix b/pkgs/os-specific/darwin/apple-source-releases/default.nix
index df47d53514abd..ba0e5b3b78b9c 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/default.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fetchzip, pkgs }:
+{ lib, stdenv, fetchurl, fetchFromGitHub, pkgs }:
let
# This attrset can in theory be computed automatically, but for that to work nicely we need
@@ -146,7 +146,7 @@ let
then stdenv.fetchurlBoot
else fetchurl;
in fetch {
- url = "http://www.opensource.apple.com/tarballs/${pname}/${pname}-${version}.tar.gz";
+ url = "https://github.com/apple-oss-distributions/${pname}/archive/refs/tags/${pname}-${version}.tar.gz";
inherit sha256;
};
@@ -188,24 +188,24 @@ let
});
IOKitSpecs = {
- IOAudioFamily = fetchApple "osx-10.10.5" "0ggq7za3iq8g02j16rj67prqhrw828jsw3ah3bxq8a1cvr55aqnq";
- IOFireWireFamily = fetchApple "osx-10.10.5" "059qa1m668kwvchl90cqcx35b31zaqdg61zi11y1imn5s389y2g1";
- IOFWDVComponents = fetchApple "osx-10.10.5" "1brr0yn6mxgapw3bvlhyissfksifzj2mqsvj9vmps6zwcsxjfw7m";
- IOFireWireAVC = fetchApple "osx-10.10.5" "194an37gbqs9s5s891lmw6prvd1m2362602s8lj5m89fp9h8mbal";
- IOFireWireSBP2 = fetchApple "osx-10.10.5" "1mym158kp46y1vfiq625b15ihh4jjbpimfm7d56wlw6l2syajqvi";
- IOFireWireSerialBusProtocolTransport = fetchApple "osx-10.10.5" "09kiq907qpk94zbij1mrcfcnyyc5ncvlxavxjrj4v5braxm78lhi";
- IOGraphics = fetchApple "osx-10.10.5" "1z0x3yrv0p8pfdqnvwf8rvrf9wip593lhm9q6yzbclz3fn53ad0p";
- IOHIDFamily = fetchApple "osx-10.10.5" "0yibagwk74imp3j3skjycm703s5ybdqw0qlsmnml6zwjpbrz5894";
- IONetworkingFamily = fetchApple "osx-10.10.5" "04as1hc8avncijf61mp9dmplz8vb1inhirkd1g74gah08lgrfs9j";
- IOSerialFamily = fetchApple "osx-10.10.5" "0jh12aanxcigqi9w6wqzbwjdin9m48zwrhdj3n4ki0h41sg89y91";
- IOStorageFamily = fetchApple "osx-10.9.5" "0w5yr8ppl82anwph2zba0ppjji6ipf5x410zhcm1drzwn4bbkxrj";
- IOBDStorageFamily = fetchApple "osx-10.10.5" "1rbvmh311n853j5qb6hfda94vym9wkws5w736w2r7dwbrjyppc1q";
- IOCDStorageFamily = fetchApple "osx-10.10.5" "1905sxwmpxdcnm6yggklc5zimx1558ygm3ycj6b34f9h48xfxzgy";
- IODVDStorageFamily = fetchApple "osx-10.10.5" "1fv82rn199mi998l41c0qpnlp3irhqp2rb7v53pxbx7cra4zx3i6";
+ IOAudioFamily = fetchApple "osx-10.10.5" "sha256-frs2pm2OpGUOz68ZXsjktlyHlgn5oXM+ltbmAf//Cio=";
+ IOFireWireFamily = fetchApple "osx-10.10.5" "sha256-V9fNeo/Wj9dm1/XM4hkOInnMk01M6c9QSjJs5zJKB60=";
+ IOFWDVComponents = fetchApple "osx-10.10.5" "sha256-KenCX9C/Z2ErUK8tpKpm65gEmhn2NsXFxlzK7NKomaI=";
+ IOFireWireAVC = fetchApple "osx-10.10.5" "sha256-Gd8+PK/mk+xEXgF8dGAx+3jsXv4NX1GiBFyjyrf6sTo=";
+ IOFireWireSBP2 = fetchApple "osx-10.10.5" "sha256-Z3nP8pX1YG4Fbt7MrnqO06ihE9aYOex5Eib/rqOpoPk=";
+ IOFireWireSerialBusProtocolTransport = fetchApple "osx-10.10.5" "sha256-zdYE0UCKiVhDRGdWaH8L51ArbYTnsQOmcN/OMmpNdFA=";
+ IOGraphics = fetchApple "osx-10.10.5" "sha256-lXoW4sx3pyl5fg5Qde3sQi2i8rTLnpeCdDaTHjbfaMI=";
+ IOHIDFamily = fetchApple "osx-10.10.5" "sha256-b+S1p3p5d8olYE18VrBns4euerVINaQSFEp34sko5rM=";
+ IONetworkingFamily = fetchApple "osx-10.10.5" "sha256-NOpFOBKS6iwFj9DJxduZYZfZJuhDyBQw2QMKHbu7j40=";
+ IOSerialFamily = fetchApple "osx-10.10.5" "sha256-hpYrgXsuTul4CYoYIjQjerfvQRqISM2tCcfVXlnjbZo=";
+ IOStorageFamily = fetchApple "osx-10.9.5" "sha256-CeA4rHUrBKHsDeJU9ssIY9LQwDw09a+vQUyruosaLKA=";
+ IOBDStorageFamily = fetchApple "osx-10.10.5" "sha256-gD52RKXGKWGga/QGlutxsgsPNSN6gcRfFQRT8v51N3E=";
+ IOCDStorageFamily = fetchApple "osx-10.10.5" "sha256-+nyqH6lMPmIkDLYXNVSeR4vBYS165oyJx+DkCkKOGRg=";
+ IODVDStorageFamily = fetchApple "osx-10.10.5" "sha256-Jy3UuRzdd0bBdhJgI/f8vLXh2GdGs1RVN3G2iEs86kQ=";
# There should be an IOStreamFamily project here, but they haven't released it :(
- IOUSBFamily = fetchApple "osx-10.8.5" "1znqb6frxgab9mkyv7csa08c26p9p0ip6hqb4wm9c7j85kf71f4j"; # This is from 10.8 :(
- IOUSBFamily_older = fetchApple "osx-10.8.4" "113lmpz8n6sibd27p42h8bl7a6c3myc6zngwri7gnvf8qlajzyml" "IOUSBFamily"; # This is even older :(
- IOKitUser = fetchApple "osx-10.10.5" "1jzndziv97bhjxmla8nib5fpcswbvsxr04447g251ls81rw313lb";
+ IOUSBFamily = fetchApple "osx-10.8.5" "sha256-FwgGoP97Sj47VGXMxbY0oUugKf7jtxAL1RzL6+315cU="; # This is from 10.8 :(
+ IOUSBFamily_older = fetchApple "osx-10.8.4" "sha256-5apCsqtHK0EC8x1uPTTll43x69eal/nsokfS80qLlxs=" "IOUSBFamily"; # This is even older :(
+ IOKitUser = fetchApple "osx-10.10.5" "sha256-3UHM3g91v4RugmONbM+SAPr1SfoUPY3QPcTwTpt+zuY=";
# There should be an IOVideo here, but they haven't released it :(
};
@@ -234,7 +234,7 @@ let
in applePackage' namePath version sdkName sha256;
# Only used for bootstrapping. It’s convenient because it was the last version to come with a real makefile.
- adv_cmds-boot = applePackage "adv_cmds/boot.nix" "osx-10.5.8" "102ssayxbg9wb35mdmhswbnw0bg7js3pfd8fcbic83c5q3bqa6c6" {};
+ adv_cmds-boot = applePackage "adv_cmds/boot.nix" "osx-10.5.8" "sha256-/OJLNpATyS31W5nWfJgSVO5itp8j55TRwG57/QLT5Fg=" {};
in
@@ -242,70 +242,72 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // {
# TODO: shorten this list, we should cut down to a minimum set of bootstrap or necessary packages here.
inherit (adv_cmds-boot) ps locale;
- architecture = applePackage "architecture" "osx-10.11.6" "1pbpjcd7is69hn8y29i98ci0byik826if8gnp824ha92h90w0fq3" {};
- bsdmake = applePackage "bsdmake" "dev-tools-3.2.6" "11a9kkhz5bfgi1i8kpdkis78lhc6b5vxmhd598fcdgra1jw4iac2" {};
- CarbonHeaders = applePackage "CarbonHeaders" "osx-10.6.2" "1zam29847cxr6y9rnl76zqmkbac53nx0szmqm9w5p469a6wzjqar" {};
- CommonCrypto = applePackage "CommonCrypto" "osx-10.12.6" "0sgsqjcxbdm2g2zfpc50mzmk4b4ldyw7xvvkwiayhpczg1fga4ff" {};
- configd = applePackage "configd" "osx-10.8.5" "1gxakahk8gallf16xmhxhprdxkh3prrmzxnmxfvj0slr0939mmr2" {
- Security = applePackage "Security/boot.nix" "osx-10.9.5" "1nv0dczf67dhk17hscx52izgdcyacgyy12ag0jh6nl5hmfzsn8yy" {};
+ architecture = applePackage "architecture" "osx-10.11.6" "sha256-cUKeMx6mOAxBSRHIdfzsrR65Qv86m7+20XvpKqVfwVI=" {};
+ bsdmake = applePackage "bsdmake" "dev-tools-3.2.6" "sha256-CW8zP5QZMhWTGp+rhrm8oHE/vSLsRlv1VRAGe1OUDmI=" {};
+ CarbonHeaders = applePackage "CarbonHeaders" "osx-10.6.2" "sha256-UNaHvxzYzEBnYYuoMLqWUVprZa6Wqn/3XleoSCco050=" {};
+ CommonCrypto = applePackage "CommonCrypto" "osx-10.12.6" "sha256-FLgODBrfv+XsGaAjddncYAm/BIJJYw6LcwX/z7ncKFM=" {};
+ configd = applePackage "configd" "osx-10.8.5" "sha256-6I3FWNjTgds5abEcZrD++s9b+P9a2+qUf8KFAb72DwI=" {
+ Security = applePackage "Security/boot.nix" "osx-10.9.5" "sha256-7qr0IamjCXCobIJ6V9KtvbMBkJDfRCy4C5eqpHJlQLI=" {};
};
- copyfile = applePackage "copyfile" "osx-10.12.6" "0a70bvzndkava1a946cdq42lnjhg7i7b5alpii3lap6r5fkvas0n" {};
- Csu = applePackage "Csu" "osx-10.11.6" "0yh5mslyx28xzpv8qww14infkylvc1ssi57imhi471fs91sisagj" {};
- dtrace = applePackage "dtrace" "osx-10.12.6" "0hpd6348av463yqf70n3xkygwmf1i5zza8kps4zys52sviqz3a0l" {};
- dyld = applePackage "dyld" "osx-10.12.6" "0q4jmk78b5ajn33blh4agyq6v2a63lpb3fln78az0dy12bnp1qqk" {};
- eap8021x = applePackage "eap8021x" "osx-10.11.6" "0iw0qdib59hihyx2275rwq507bq2a06gaj8db4a8z1rkaj1frskh" {};
- IOKit = applePackage "IOKit" "osx-10.11.6" "0kcbrlyxcyirvg5p95hjd9k8a01k161zg0bsfgfhkb90kh2s8x00" { inherit IOKitSrcs; };
- launchd = applePackage "launchd" "osx-10.9.5" "0w30hvwqq8j5n90s3qyp0fccxflvrmmjnicjri4i1vd2g196jdgj" {};
- libauto = applePackage "libauto" "osx-10.9.5" "17z27yq5d7zfkwr49r7f0vn9pxvj95884sd2k6lq6rfaz9gxqhy3" {};
- Libc = applePackage "Libc" "osx-10.12.6" "183wcy1nlj2wkpfsx3k3lyv917mk8r2p72qw8lb89mbjsw3yw0xx" {
- Libc_10-9 = fetchzip {
- url = "http://www.opensource.apple.com/tarballs/Libc/Libc-997.90.3.tar.gz";
- sha256 = "1xchgxkxg5288r2b9yfrqji2gsgdap92k4wx2dbjwslixws12pq7";
+ copyfile = applePackage "copyfile" "osx-10.12.6" "sha256-uHqLFOIpXK+n0RHyOZzVsP2DDZcFDivKCnqHBaXvHns=" {};
+ Csu = applePackage "Csu" "osx-10.11.6" "sha256-h6a/sQMEVeFxKNWAPgKBXjWhyL2L2nvX9BQUMaTQ6sY=" {};
+ dtrace = applePackage "dtrace" "osx-10.12.6" "sha256-Icr22ozixHquI0kRB2XZ+LlxD6V46sJHsHy4L/tDXZg=" {};
+ dyld = applePackage "dyld" "osx-10.12.6" "sha256-JmKnOZtBPf96zEx7vhYHLBSTOPyKN71IdYE3R0IeJww=" {};
+ eap8021x = applePackage "eap8021x" "osx-10.11.6" "sha256-54P3+YhVhOanoZQoqswDnr/GbR/AdEERse135nyuIQo=" {};
+ IOKit = applePackage "IOKit" "osx-10.11.6" "" { inherit IOKitSrcs; };
+ launchd = applePackage "launchd" "osx-10.9.5" "sha256-dmV0UK7hG9wvTr+F4Z47nCFXcVZCV+cQ46WbE0DBtJs=" {};
+ libauto = applePackage "libauto" "osx-10.9.5" "sha256-GnRcKq8jRbEsI/PSDphwUjWtpEIEcnLlQL9yxYLgSsU=" {};
+ Libc = applePackage "Libc" "osx-10.12.6" "sha256-LSsL7S3KFgGU9qjK4atu/4wBh8ftgfsk6JOvg+ZTZOY=" {
+ Libc_10-9 = fetchFromGitHub {
+ owner = "apple-oss-distributions";
+ repo = "Libc";
+ rev = "Libc-997.90.3";
+ hash = "sha256-B18RNO+Rai5XE52TKdJV7eknosTZ+bRERkiU12d/kPU=";
};
- Libc_old = applePackage "Libc/825_40_1.nix" "osx-10.8.5" "0xsx1im52gwlmcrv4lnhhhn9dyk5ci6g27k6yvibn9vj8fzjxwcf" {};
+ Libc_old = applePackage "Libc/825_40_1.nix" "osx-10.8.5" "sha256-JvPSY7FzraGpqF/jYLfhU2o/2195NuKrXsryYfVtx3s=" {};
};
- libclosure = applePackage "libclosure" "osx-10.11.6" "1zqy1zvra46cmqv6vsf1mcsz3a76r9bky145phfwh4ab6y15vjpq" {};
- libdispatch = applePackage "libdispatch" "osx-10.10.5" "0jsfbzp87lwk9snlby0hd4zvj7j894p5q3cw0wdx9ny1mcp3kdcj" {};
- libiconv = applePackage "libiconv" "osx-10.12.6" "1gg5h6z8sk851bhv87vyxzs54jmqz6lh57ny8j4s51j7srja0nly" {};
- Libinfo = applePackage "Libinfo" "osx-10.11.6" "0qjgkd4y8sjvwjzv5wwyzkb61pg8wwg95bkp721dgzv119dqhr8x" {};
- Libm = applePackage "Libm" "osx-10.7.4" "02sd82ig2jvvyyfschmb4gpz6psnizri8sh6i982v341x6y4ysl7" {};
- Libnotify = applePackage "Libnotify" "osx-10.12.6" "0p5qhvalf6j1w6n8xwywhn6dvbpzv74q5wqrgs8rwfpf74wg6s9z" {};
- libplatform = applePackage "libplatform" "osx-10.12.6" "0rh1f5ybvwz8s0nwfar8s0fh7jbgwqcy903cv2x8m15iq1x599yn" {};
- libpthread = applePackage "libpthread" "osx-10.12.6" "1j6541rcgjpas1fc77ip5krjgw4bvz6jq7bq7h9q7axb0jv2ns6c" {};
- libresolv = applePackage "libresolv" "osx-10.12.6" "077j6ljfh7amqpk2146rr7dsz5vasvr3als830mgv5jzl7l6vz88" {};
- Libsystem = applePackage "Libsystem" "osx-10.12.6" "1082ircc1ggaq3wha218vmfa75jqdaqidsy1bmrc4ckfkbr3bwx2" {};
- libutil = applePackage "libutil" "osx-10.12.6" "0lqdxaj82h8yjbjm856jjz9k2d96k0viimi881akfng08xk1246y" {};
- libunwind = applePackage "libunwind" "osx-10.12.6" "0miffaa41cv0lzf8az5k1j1ng8jvqvxcr4qrlkf3xyj479arbk1b" {};
- mDNSResponder = applePackage "mDNSResponder" "osx-10.12.6" "02ms1p8zlgmprzn65jzr7yaqxykh3zxjcrw0c06aayim6h0dsqfy" {};
- objc4 = applePackage "objc4" "osx-10.12.6" "1cj1vhbcs9pkmag2ms8wslagicnq9bxi2qjkszmp3ys7z7ccrbwz" {};
- ppp = applePackage "ppp" "osx-10.12.6" "1kcc2nc4x1kf8sz0a23i6nfpvxg381kipi0qdisrp8x9z2gbkxb8" {};
- removefile = applePackage "removefile" "osx-10.12.6" "0jzjxbmxgjzhssqd50z7kq9dlwrv5fsdshh57c0f8mdwcs19bsyx" {};
+ libclosure = applePackage "libclosure" "osx-10.11.6" "sha256-L5rQ+UBpf3B+W1U+gZKk7fXulslHsc8lxnCsplV+nr0=" {};
+ libdispatch = applePackage "libdispatch" "osx-10.10.5" "sha256-jfAEk0OLrJa9AIZVikIoHomd+l+4rCfc320Xh50qK5M=" {};
+ libiconv = applePackage "libiconv" "osx-10.12.6" "sha256-ZzPFkchK3EU95UQUVVrR0t8iilhi/VnIkjjtP6KT2oI=" {};
+ Libinfo = applePackage "Libinfo" "osx-10.11.6" "sha256-6F7wiwerv4nz/xXHtp1qCHSaFzZgzcRN+jbmXA5oWOQ=" {};
+ Libm = applePackage "Libm" "osx-10.7.4" "sha256-KjMETfT4qJm0m0Ux/F6Rq8bI4Q4UVnFx6IKbKxXd+Es=" {};
+ Libnotify = applePackage "Libnotify" "osx-10.12.6" "sha256-6wvMBxAUfiYcQtmlfYCj1d3kFmFM/jdboTd7hRvi3e4=" {};
+ libplatform = applePackage "libplatform" "osx-10.12.6" "sha256-6McMTjw55xtnCsFI3AB1osRagnuB5pSTqeMKD3gpGtM=" {};
+ libpthread = applePackage "libpthread" "osx-10.12.6" "sha256-QvJ9PERmrCWBiDmOWrLvQUKZ4JxHuh8gS5nlZKDLqE8=" {};
+ libresolv = applePackage "libresolv" "osx-10.12.6" "sha256-FtvwjJKSFX6j9APYPC8WLXVOjbHLZa1Gcoc8yxLy8qE=" {};
+ Libsystem = applePackage "Libsystem" "osx-10.12.6" "sha256-zvRdCP//TjKCGAqm/5nJXPppshU1cv2fg/L/yK/olGQ=" {};
+ libutil = applePackage "libutil" "osx-10.12.6" "sha256-4PFuk+CTLwvd/Ll9GLBkiIM0Sh/CVaiKwh5m1noheRs=" {};
+ libunwind = applePackage "libunwind" "osx-10.12.6" "sha256-CC0sndP/mKYe3dZu3v7fjuDASV4V4w7dAcnWMvpoquE=" {};
+ mDNSResponder = applePackage "mDNSResponder" "osx-10.12.6" "sha256-ddZr6tropkpdMJhq/kUlm3OwO8b0yxtkrMpwec8R4FY=" {};
+ objc4 = applePackage "objc4" "osx-10.12.6" "sha256-ZsxRpdsfv3Dxs7yBBCkjbKXKR6aXwkEpxc1XYXz7ueM=" {};
+ ppp = applePackage "ppp" "osx-10.12.6" "sha256-M1zoEjjeKIDUEP6ACbpUJk3OXjobw4g/qzUmxGdX1J0=" {};
+ removefile = applePackage "removefile" "osx-10.12.6" "sha256-UpNk27kGXnZss1ZXWVJU9jLz/NW63ZAZEDLhyCYoi9M=" {};
xnu = if stdenv.isx86_64 then
- applePackage "xnu" "osx-10.12.6" "1sjb0i7qzz840v2h4z3s4jyjisad4r5yyi6sg8pakv3wd81i5fg5" {
+ applePackage "xnu" "osx-10.12.6" "sha256-C8TPQlUT3RbzAy8YnZPNtr70hpaVG9Llv0h42s3NENI=" {
python3 = pkgs.buildPackages.buildPackages.python3; # TODO(@Ericson2314) this shouldn't be needed.
}
else macosPackages_11_0_1.xnu;
- hfs = applePackage "hfs" "osx-10.12.6" "1mj3xvqpq1mgd80b6kl1s04knqnap7hccr0gz8rjphalq14rbl5g" {};
- Librpcsvc = applePackage "Librpcsvc" "osx-10.11.6" "1zwfwcl9irxl1dlnf2b4v30vdybp0p0r6n6g1pd14zbdci1jcg2k" {};
- adv_cmds = applePackage "adv_cmds" "osx-10.11.6" "12gbv35i09aij9g90p6b3x2f3ramw43qcb2gjrg8lzkzmwvcyw9q" {};
- basic_cmds = applePackage "basic_cmds" "osx-10.11.6" "0hvab4b1v5q2x134hdkal0rmz5gsdqyki1vb0dbw4py1bqf0yaw9" {};
- developer_cmds = applePackage "developer_cmds" "osx-10.11.6" "1r9c2b6dcl22diqf90x58psvz797d3lxh4r2wppr7lldgbgn24di" {};
- diskdev_cmds = applePackage "diskdev_cmds" "osx-10.11.6" "1ssdyiaq5m1zfy96yy38yyknp682ki6bvabdqd5z18fa0rv3m2ar" {
+ hfs = applePackage "hfs" "osx-10.12.6" "sha256-eGi18HQFJrU5UHoBOE0LqO5gQ0xOf8+OJuAWQljfKE4=" {};
+ Librpcsvc = applePackage "Librpcsvc" "osx-10.11.6" "sha256-YHbGws901xONzAbo6sB5zSea4Wp0sgYUJ8YgwVfWxnE=" {};
+ adv_cmds = applePackage "adv_cmds" "osx-10.11.6" "sha256-Ztp8ALWcviEpthoiY8ttWzGI8OcsLzsULjlqe8GIzw8=" {};
+ basic_cmds = applePackage "basic_cmds" "osx-10.11.6" "sha256-BYPPTg4/7x6RPs0WwwQlkNiZxxArV+7EVe6bM+a/I6Q=" {};
+ developer_cmds = applePackage "developer_cmds" "osx-10.11.6" "sha256-h0wMVlS6QdRvKOVJ74W9ziHYGApjvnk77AIR6ukYBRo=" {};
+ diskdev_cmds = applePackage "diskdev_cmds" "osx-10.11.6" "sha256-VX+hcZ7JhOA8EhwLloPlM3Yx79RXp9OYHV9Mi10uw3Q=" {
macosPackages_11_0_1 = macosPackages_11_0_1;
};
network_cmds = if stdenv.isx86_64 then
- applePackage "network_cmds" "osx-10.11.6" "0lhi9wz84qr1r2ab3fb4nvmdg9gxn817n5ldg7zw9gnf3wwn42kw" {}
+ applePackage "network_cmds" "osx-10.11.6" "sha256-I89CLIswGheewOjiNZwQTgWvWbhm0qtB5+KUqzxnQ5M=" {}
else macosPackages_11_0_1.network_cmds;
- file_cmds = applePackage "file_cmds" "osx-10.11.6" "1zfxbmasps529pnfdjvc13p7ws2cfx8pidkplypkswyff0nff4wp" {};
- shell_cmds = applePackage "shell_cmds" "osx-10.11.6" "0084k271v66h4jqp7q7rmjvv7w4mvhx3aq860qs8jbd30canm86n" {};
- system_cmds = applePackage "system_cmds" "osx-10.11.6" "1h46j2c5v02pkv5d9fyv6cpgyg0lczvwicrx6r9s210cl03l77jl" {};
- text_cmds = applePackage "text_cmds" "osx-10.11.6" "1f93m7dd0ghqb2hwh905mjhzblyfr7dwffw98xhgmv1mfdnigxg0" {};
- top = applePackage "top" "osx-10.11.6" "0i9120rfwapgwdvjbfg0ya143i29s1m8zbddsxh39pdc59xnsg5l" {};
- PowerManagement = applePackage "PowerManagement" "osx-10.11.6" "1llimhvp0gjffd47322lnjq7cqwinx0c5z7ikli04ad5srpa68mh" {};
+ file_cmds = applePackage "file_cmds" "osx-10.11.6" "sha256-JYy6HwmultKeZtLfaysbsyLoWg+OaTh7eJu54JkJC0Q=" {};
+ shell_cmds = applePackage "shell_cmds" "osx-10.11.6" "sha256-kmEOprkiJGMVcl7yHkGX8ymk/5KjE99gWuF8j2hK5hY=" {};
+ system_cmds = applePackage "system_cmds" "osx-10.11.6" "sha256-KBdGlHeXo2PwgRQOOeElJ1RBqCY1Tdhn5KD42CMhdzI=" {};
+ text_cmds = applePackage "text_cmds" "osx-10.11.6" "sha256-KSebU7ZyUsPeqn51nzuGNaNxs9pvmlIQQdkWXIVzDxw=" {};
+ top = applePackage "top" "osx-10.11.6" "sha256-jbz64ODogtpNyLpXGSZj1jCBdFPVXcVcBkL1vc7g5qQ=" {};
+ PowerManagement = applePackage "PowerManagement" "osx-10.11.6" "sha256-bYGtYnBOcE5W03AZzfVTJXPZ6GgryGAMt/LgLPxFkVk=" {};
# `configdHeaders` can’t use an override because `pkgs.darwin.configd` on aarch64-darwin will
# be replaced by SystemConfiguration.framework from the macOS SDK.
- configdHeaders = applePackage "configd" "osx-10.8.5" "1gxakahk8gallf16xmhxhprdxkh3prrmzxnmxfvj0slr0939mmr2" {
+ configdHeaders = applePackage "configd" "osx-10.8.5" "sha256-6I3FWNjTgds5abEcZrD++s9b+P9a2+qUf8KFAb72DwI=" {
headersOnly = true;
Security = null;
};
@@ -315,5 +317,5 @@ developerToolsPackages_11_3_1 // macosPackages_11_0_1 // {
# TODO(matthewbauer):
# To be removed, once I figure out how to build a newer Security version.
- Security = applePackage "Security/boot.nix" "osx-10.9.5" "1nv0dczf67dhk17hscx52izgdcyacgyy12ag0jh6nl5hmfzsn8yy" {};
+ Security = applePackage "Security/boot.nix" "osx-10.9.5" "sha256-7qr0IamjCXCobIJ6V9KtvbMBkJDfRCy4C5eqpHJlQLI=" {};
}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/developer-tools-11.3.1.nix b/pkgs/os-specific/darwin/apple-source-releases/developer-tools-11.3.1.nix
index f57d224615f4b..7eeafec346551 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/developer-tools-11.3.1.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/developer-tools-11.3.1.nix
@@ -3,6 +3,6 @@
{ applePackage' }:
{
-bootstrap_cmds = applePackage' "bootstrap_cmds" "116" "developer-tools-11.3.1" "148xpqkf5xzpslqxch5l8h6vsz7sys8sdzk4ghbg9mkcivp8qa03" {};
-developer_cmds = applePackage' "developer_cmds" "66" "developer-tools-11.3.1" "0q08m4cxxwph7gxqravmx13l418p1i050bd46zwksn9j9zpw9mlr" {};
+bootstrap_cmds = applePackage' "bootstrap_cmds" "116" "developer-tools-11.3.1" "06nw99ajkd264vdi6n2zv252ppxp3wx3120hqf3jqdh6c1wavy0b" {};
+developer_cmds = applePackage' "developer_cmds" "66" "developer-tools-11.3.1" "0f7vphpscjcypq49gjckbs20xhm7yjalr4nnbphqcqp8v1al56dc" {};
}
diff --git a/pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix b/pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix
index 517f53e9435da..1637ed7838956 100644
--- a/pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix
+++ b/pkgs/os-specific/darwin/apple-source-releases/macos-11.0.1.nix
@@ -3,44 +3,44 @@
{ applePackage' }:
{
-adv_cmds = applePackage' "adv_cmds" "176" "macos-11.0.1" "0x8c25rh6fnzndbc26vcb65vcxilvqyfvm2klfyci1wr4bh3ixgk" {};
-architecture = applePackage' "architecture" "279" "macos-11.0.1" "1cgp33ywa30max6cyp69kvii299hx2vgwvmy3ms8n4gaq2mkpaky" {};
-basic_cmds = applePackage' "basic_cmds" "55" "macos-11.0.1" "0hvab4b1v5q2x134hdkal0rmz5gsdqyki1vb0dbw4py1bqf0yaw9" {};
-bootstrap_cmds = applePackage' "bootstrap_cmds" "121" "macos-11.0.1" "09bwclws6adxb1ky9q35f4ikddk4mbalmgds0cmqaf7j23qxl3fv" {};
-CommonCrypto = applePackage' "CommonCrypto" "60178.40.2" "macos-11.0.1" "0r3b1mlfmbdzpwn6pbsbfaga3k63gpwcwbhkbi4r09aq82skl02v" {};
-configd = applePackage' "configd" "1109.40.9" "macos-11.0.1" "173i55wfzli9pg2x2rw437hs68h6l4ngss5jfgf18g26zjkjzv5v" {};
-copyfile = applePackage' "copyfile" "173.40.2" "macos-11.0.1" "0qyp15qj3fdb7yx033n57l7s61d70mv17f43yiwcbhx09mmlrp07" {};
-Csu = applePackage' "Csu" "88" "macos-11.0.1" "029lgcyj0i16036h2lcx6fd6r1yf1bkj5dnvz905rh6ncl8skgdr" {};
-diskdev_cmds = applePackage' "diskdev_cmds" "667.40.1" "macos-11.0.1" "1bqwkwkwd556rba5000ap77xrhaf4xnmy83mszd7a0yvl2xlma7j" {};
-dtrace = applePackage' "dtrace" "370.40.1" "macos-11.0.1" "1941yczmn94ng5zlnhf0i5mjw2f4g7znisgvhkhn5f86gxmd98wl" {};
-dyld = applePackage' "dyld" "832.7.1" "macos-11.0.1" "1s77ca6jg20z91qlph59da8j61m97y23vrw48xs4rywdzh4915n0" {};
-eap8021x = applePackage' "eap8021x" "304.40.1" "macos-11.0.1" "1ph3kcpf527s0jqsi60j2sgg3m8h128spf292d8kyc08siz9mf9c" {};
-file_cmds = applePackage' "file_cmds" "321.40.3" "macos-11.0.1" "04789vn1wghclfr3ma3ncg716xdsxfj66hrcxi5h3h1ryag2ycfz" {};
-hfs = applePackage' "hfs" "556.41.1" "macos-11.0.1" "1rhkmn2yj5p4wmi4aajy5hj2h0gxk63s8j4qz4ziy4g4bjpdgwmy" {};
-ICU = applePackage' "ICU" "66108" "macos-11.0.1" "1d76cyyqpwkzjlxfajm4nsglxmfrcafbnjwnjxc3j5w3nw67pqhx" {};
-Libc = applePackage' "Libc" "1439.40.11" "macos-11.0.1" "0d5xlnks4lc9391wg31c9126vflb40lc5ffkgxmf2kpyglac1280" {};
-libclosure = applePackage' "libclosure" "78" "macos-11.0.1" "089i2bl4agpnfplrg23xbzma1674g0w05988nxdps6ghxl4kz66f" {};
-libdispatch = applePackage' "libdispatch" "1271.40.12" "macos-11.0.1" "0z7r42zfb8y48f0nrw0qw7fanfvimycimgnrg3jig101kjvjar98" {};
-libiconv = applePackage' "libiconv" "59" "macos-11.0.1" "0hqbsqggjrr0sv6h70lcr3gabgk9inyc8aq1b30wibgjm6crjwpp" {};
-Libinfo = applePackage' "Libinfo" "542.40.3" "macos-11.0.1" "0y5x6wxd3mwn6my1jdp8qrak3y7x7sgjdmwyw9cvvbn3kg9v6z1p" {};
-Libnotify = applePackage' "Libnotify" "279.40.4" "macos-11.0.1" "0aswflxki877izp6sacv35sydn6a3639cflv3zhs3i7vkfbsvbf5" {};
-libplatform = applePackage' "libplatform" "254.40.4" "macos-11.0.1" "1mhi8n66864y98dr3n0pkqad3aqim800kn9bxzp6h5jf2jni3aql" {};
-libpthread = applePackage' "libpthread" "454.40.3" "macos-11.0.1" "18rb4dqjdf3krzi4hdj5i310gy49ipf01klbkp9g51i02a55gphq" {};
-libresolv = applePackage' "libresolv" "68" "macos-11.0.1" "1ysvg6d28xyaky9sn7giglnsflhjsbj17h3h3i6knlzxnzznpkql" {};
-Librpcsvc = applePackage' "Librpcsvc" "26" "macos-11.0.1" "1zwfwcl9irxl1dlnf2b4v30vdybp0p0r6n6g1pd14zbdci1jcg2k" {};
-Libsystem = applePackage' "Libsystem" "1292.50.1" "macos-11.0.1" "0w16zaigq18jfsnw15pfyz2mkfqdkn0cc16q617kmgw2khld8j7j" {};
-libunwind = applePackage' "libunwind" "200.10" "macos-11.0.1" "1pmymcqpfk7lfxh6zqch429vfpvmd2m1dlg898170pkx5zhxisl2" {};
-libutil = applePackage' "libutil" "58.40.2" "macos-11.0.1" "1hhgashfj9g4vjv02070c5pn818a5n0bh5l81l2pflmvb2rrqs3f" {};
-mDNSResponder = applePackage' "mDNSResponder" "1310.40.42" "macos-11.0.1" "0d0b9wwah9rg7rwrr29dxd6iy0y4rlmss3wcz2wcqmnd2qb9x8my" {};
-network_cmds = applePackage' "network_cmds" "606.40.2" "macos-11.0.1" "1dlslk67npvmxx5m50385kmn3ysxih2iv220hhzkin11f8abdjv7" {};
-objc4 = applePackage' "objc4" "818.2" "macos-11.0.1" "177gmh9m9ajy6mvcd2sf7gqydgljy44n3iih0yqsn1b13j784azx" {};
-PowerManagement = applePackage' "PowerManagement" "1132.50.3" "macos-11.0.1" "1n5yn6sc8w67g8iism6ilkyl33j46gcnlqcaq6k16zkngx6lprba" {};
-ppp = applePackage' "ppp" "877.40.2" "macos-11.0.1" "1z506z8ndvb1lfr4pypfy2bnig6qimhmq3yhjvqwfnliv91965iq" {};
-removefile = applePackage' "removefile" "49.40.3" "macos-11.0.1" "1fhp47awi15f02385r25qgw1ag5z0kr1v3kvgqm3r8i8yysfqvwp" {};
-Security = applePackage' "Security" "59754.41.1" "macos-11.0.1" "00kqgg7k80ba70ar2c02f0q9yrdgqcb56nb9z5g0bxwkvi40ryph" {};
-shell_cmds = applePackage' "shell_cmds" "216.40.4" "macos-11.0.1" "1mvp1fp34kkm4mi85fdn3i0l0gig4c0w09zg2mvkpxcf68cq2f69" {};
-system_cmds = applePackage' "system_cmds" "880.40.5" "macos-11.0.1" "1kys4vwfz4559sspdsfhmxc238nd8qgylqypza3zdzaqhfh7lx2x" {};
-text_cmds = applePackage' "text_cmds" "106" "macos-11.0.1" "0cpnfpllwpx20hbxzg5i5488gcjyi9adnbac1sd5hpv3bq6z1hs5" {};
-top = applePackage' "top" "129" "macos-11.0.1" "1nyz5mvq7js3zhsi3dwxl5fslg6m7nhlgc6p2hr889xgyl5prw8f" {};
-xnu = applePackage' "xnu" "7195.50.7.100.1" "macos-11.0.1" "14wqkqp3lcxgpm1sjnsysybrc4ppzkghwv3mb5nr5v8ml37prkib" {};
+CommonCrypto = applePackage' "CommonCrypto" "60178.40.2" "macos-11.0.1" "129gsxhhcxqycg0zjrdrz2ay4dv2ih1ckafqh33qrc499z8dam2p" {};
+Csu = applePackage' "Csu" "88" "macos-11.0.1" "1lzp9x8iv60c2h12q2s89nf49b5hvpqq4a9li44zr2fxszn8lqxh" {};
+ICU = applePackage' "ICU" "66108" "macos-11.0.1" "0mclizp99daihghqy2sgzjkid8i93dsn5pi8q9p7b3156chrhw57" {};
+Libc = applePackage' "Libc" "1439.40.11" "macos-11.0.1" "12k5sbz2k1pl839w2lk9iw414zzl50zdjzgq2x6bm20yjbfj69qm" {};
+Libinfo = applePackage' "Libinfo" "542.40.3" "macos-11.0.1" "18jvl7cdg64x6clhsfv5pbzxis2aldddpca5r81xqakrmi9mck80" {};
+Libnotify = applePackage' "Libnotify" "279.40.4" "macos-11.0.1" "1vr11s0c42ssjs29shy1m8rj008np7aswdzjpimsfzyav47jb6y7" {};
+Librpcsvc = applePackage' "Librpcsvc" "26" "macos-11.0.1" "0wf6srbw28664wa0dckldbhrl9ydg70fms06rj6i7mvlrz1ccxk0" {};
+Libsystem = applePackage' "Libsystem" "1292.50.1" "macos-11.0.1" "0d3flh1p4kskic8ypi8wia4kinfbprx9fvyfqc3mcq0710i0gy77" {};
+PowerManagement = applePackage' "PowerManagement" "1132.50.3" "macos-11.0.1" "1sb2nz92vdf6v3h17ry0vgw0z9zsva82lhdrhsf3k60jhfw1fi2v" {};
+Security = applePackage' "Security" "59754.41.1" "macos-11.0.1" "0jq70mnwkvrrhws64ipx0i68pi3n0sk95jlhacxxikdj9f4hpbsw" {};
+adv_cmds = applePackage' "adv_cmds" "176" "macos-11.0.1" "0sskwl3jc7llbrlyd1i7qlb03yhm1xkbxd1k9xhh7f9wqhlzq31j" {};
+architecture = applePackage' "architecture" "279" "macos-11.0.1" "19s93rqr9r98qh0rlndf7kv3v4n1ifh9i539mbpsx6kbixcx8vvp" {};
+basic_cmds = applePackage' "basic_cmds" "55" "macos-11.0.1" "1913pzk376zfap2fwmrb233rkn4h4l2c65nd7s8ixvrz1r7cz0q5" {};
+bootstrap_cmds = applePackage' "bootstrap_cmds" "121" "macos-11.0.1" "0qgbgwijv7xqmm9gn74jibyw2dh516xpj7h1grj2j1i80m3b16bl" {};
+configd = applePackage' "configd" "1109.40.9" "macos-11.0.1" "024ny63lpwzgnm8g28hh8dldvmmislmrl298n721rm0blqjhahz5" {};
+copyfile = applePackage' "copyfile" "173.40.2" "macos-11.0.1" "1j20909inn2iw8n51b8vk551wznfi3bhfziy8nbv08qj5lk50m04" {};
+diskdev_cmds = applePackage' "diskdev_cmds" "667.40.1" "macos-11.0.1" "0wr60vyvgkbc4wyldnsqas0xss2k1fgmbdk3vnhj6v6jqa98l1ny" {};
+dtrace = applePackage' "dtrace" "370.40.1" "macos-11.0.1" "1qj74mix1x3drffr1qpafm57aby42bc61kynba5q0ppbcf0lrbp1" {};
+dyld = applePackage' "dyld" "832.7.1" "macos-11.0.1" "01q7fsibr6xp94l3w22sh8qfjgwzzf1v82mhgq39ivkxwwc4jdy0" {};
+eap8021x = applePackage' "eap8021x" "304.40.1" "macos-11.0.1" "1aihyklri64w380d1mvi830n5cnzs9gd38z8i9ccd37n48gmz88p" {};
+file_cmds = applePackage' "file_cmds" "321.40.3" "macos-11.0.1" "0p077lnbcy8266m03a0fssj4214bjxh88y3qkspnzcvi0g84k43q" {};
+hfs = applePackage' "hfs" "556.41.1" "macos-11.0.1" "0a0s6b12b0q07wslfifna0bj51dml9v098i4crr2m1vivnx4xj75" {};
+libclosure = applePackage' "libclosure" "78" "macos-11.0.1" "0vf9n0k3m8dbprv1bf45zqg0g43bidy2i5z1v9a826bsf8lv7am7" {};
+libdispatch = applePackage' "libdispatch" "1271.40.12" "macos-11.0.1" "1ck5srcjapg18vqb8wl08gacs7ndc6xr067qjn3ngx39q1jdcywz" {};
+libiconv = applePackage' "libiconv" "59" "macos-11.0.1" "0lwa4brdwm4lvrdnxylzsn1yph4m7csgri2zkc4xb4xiisz32pwp" {};
+libplatform = applePackage' "libplatform" "254.40.4" "macos-11.0.1" "1qf3ri0yd8b1xjln1j1gyx7ks6k3a2jhd63blyvfby75y9s7flky" {};
+libpthread = applePackage' "libpthread" "454.40.3" "macos-11.0.1" "0zljbw8mpb80n1if65hhi9lkgwbgjr8vc9wvf7q1nl3mzyl35f8p" {};
+libresolv = applePackage' "libresolv" "68" "macos-11.0.1" "045ahh8nvaam9whryc2f5g5xagwp7d187r80kcff82snp5p66aq1" {};
+libunwind = applePackage' "libunwind" "200.10" "macos-11.0.1" "0wa4ssr7skn5j0ncm1rigd56qmbs982zvwr3qpjn28krwp8wvigd" {};
+libutil = applePackage' "libutil" "58.40.2" "macos-11.0.1" "11s0vizk7bg0k0yjx21j8vaji4j4vk57131qbp07i9lpksb3bcy4" {};
+mDNSResponder = applePackage' "mDNSResponder" "1310.40.42" "macos-11.0.1" "0xxrqqbqsf0pagfs1yzwfbwf7lhr0sns97k18y7kh4ri0p09h44c" {};
+network_cmds = applePackage' "network_cmds" "606.40.2" "macos-11.0.1" "1jsy13nraarafq6wmgh3wyir8wrwfra148xsjns7cw7q5xn40a1w" {};
+objc4 = applePackage' "objc4" "818.2" "macos-11.0.1" "0m8mk1qd18wqjfn2jsq2lx6fxvllhmadmvz11jzg8vjw8pq91nw2" {};
+ppp = applePackage' "ppp" "877.40.2" "macos-11.0.1" "06xznc77j45zzi12m4cmr3jj853qlc8dbmynbg1z6m9qf5phdbgk" {};
+removefile = applePackage' "removefile" "49.40.3" "macos-11.0.1" "0870ihxpmvj8ggaycwlismbgbw9768lz7w6mc9vxf8l6nlc43z4f" {};
+shell_cmds = applePackage' "shell_cmds" "216.40.4" "macos-11.0.1" "0wbysc9lwf1xgl686r3yn95rndcmqlp17zc1ig9gsl5fxyy5bghh" {};
+system_cmds = applePackage' "system_cmds" "880.40.5" "macos-11.0.1" "064yqf84ny0cjpqmzmnhz05faay6axb2r4i6knnyc8n21yiip5dc" {};
+text_cmds = applePackage' "text_cmds" "106" "macos-11.0.1" "17fn35m6i866zjrf8da6cq6crydp6vp4zq0aaab243rv1fx303yy" {};
+top = applePackage' "top" "129" "macos-11.0.1" "0d9pqmv3mwkfcv7c05hfvnvnn4rbsl92plr5hsazp854pshzqw2k" {};
+xnu = applePackage' "xnu" "7195.50.7.100.1" "macos-11.0.1" "11zjmpw11rcc6a0xlbwramra1rsr65s4ypnxwpajgbr2c657lipl" {};
}
diff --git a/pkgs/os-specific/darwin/moltenvk/default.nix b/pkgs/os-specific/darwin/moltenvk/default.nix
index 07645c5e61c65..3d48f3d86cac1 100644
--- a/pkgs/os-specific/darwin/moltenvk/default.nix
+++ b/pkgs/os-specific/darwin/moltenvk/default.nix
@@ -23,7 +23,7 @@
stdenv.mkDerivation (finalAttrs: {
pname = "MoltenVK";
- version = "1.2.1";
+ version = "1.2.2";
buildInputs = [
AppKit
@@ -46,7 +46,7 @@ stdenv.mkDerivation (finalAttrs: {
owner = "KhronosGroup";
repo = "MoltenVK";
rev = "v${finalAttrs.version}";
- hash = "sha256-JqHPKLSFq+8hyOjVZbjh4AsHM8zSF7ZVxlEePmnEC2w=";
+ hash = "sha256-XowMXhGqPcxJ0DS3G41tpBO68va94a7SZHOOgguCxy0=";
};
patches = [
diff --git a/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix b/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix
index d8fc4648029a6..560f2bf301474 100644
--- a/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix
+++ b/pkgs/os-specific/linux/alsa-project/alsa-lib/default.nix
@@ -8,11 +8,11 @@
stdenv.mkDerivation (finalAttrs: {
pname = "alsa-lib";
- version = "1.2.7.2";
+ version = "1.2.8";
src = fetchurl {
url = "mirror://alsa/lib/${finalAttrs.pname}-${finalAttrs.version}.tar.bz2";
- hash = "sha256-ijW3IY5Q8qLHk0LQ3pje2BQ5zhnhKAk4Xsm+lZbefC8=";
+ hash = "sha256-GrAbdOM0JcqZwuNsCET9aIgnMZO9iYJA/o+TrMvL80c=";
};
patches = [
diff --git a/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix b/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix
index 512fe605b6e51..4568ecf1e7a8b 100644
--- a/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix
+++ b/pkgs/os-specific/linux/alsa-project/alsa-ucm-conf/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "alsa-ucm-conf";
- version = "1.2.7.1";
+ version = "1.2.8";
src = fetchurl {
url = "mirror://alsa/lib/${pname}-${version}.tar.bz2";
- hash = "sha256-rFsqEnV4Pv8H4cs0w2xsWYd0JnmjQAN1B8BKncHSLKw=";
+ hash = "sha256-/uSnN4MP0l+WnYPaRqKyMb6whu/ZZvzAfSJeeCMmCug=";
};
dontBuild = true;
diff --git a/pkgs/os-specific/linux/anbox/default.nix b/pkgs/os-specific/linux/anbox/default.nix
index 2a98aa82ebbd5..9c41a217badc9 100644
--- a/pkgs/os-specific/linux/anbox/default.nix
+++ b/pkgs/os-specific/linux/anbox/default.nix
@@ -85,6 +85,11 @@ stdenv.mkDerivation rec {
systemd
];
+ # Flag needed by GCC 12 but unrecognized by GCC 9 (aarch64-linux default now)
+ NIX_CFLAGS_COMPILE = lib.optionals (with stdenv; cc.isGNU && lib.versionAtLeast cc.version "12") [
+ "-Wno-error=mismatched-new-delete"
+ ];
+
patchPhase = ''
patchShebangs scripts
diff --git a/pkgs/os-specific/linux/bbswitch/default.nix b/pkgs/os-specific/linux/bbswitch/default.nix
index 886bf3e6fee8c..8312d64acddc6 100644
--- a/pkgs/os-specific/linux/bbswitch/default.nix
+++ b/pkgs/os-specific/linux/bbswitch/default.nix
@@ -31,7 +31,6 @@ stdenv.mkDerivation {
preBuild = ''
substituteInPlace Makefile \
- --replace "\$(shell uname -r)" "${kernel.modDirVersion}" \
--replace "/lib/modules" "${kernel.dev}/lib/modules"
'';
diff --git a/pkgs/os-specific/linux/hwdata/default.nix b/pkgs/os-specific/linux/hwdata/default.nix
index 8fb826833704d..d9ae091f8f0fe 100644
--- a/pkgs/os-specific/linux/hwdata/default.nix
+++ b/pkgs/os-specific/linux/hwdata/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "hwdata";
- version = "0.364";
+ version = "0.367";
src = fetchFromGitHub {
owner = "vcrhonek";
repo = "hwdata";
rev = "v${version}";
- sha256 = "sha256-9fGYoyj7vN3j72H+6jv/R0MaWPZ+4UNQhCSWnZRZZS4=";
+ sha256 = "sha256-cFusLjRH7E3TCEREQH4Y9fZLjB6b5IJV/NThdS7c19A=";
};
postPatch = ''
@@ -23,6 +23,7 @@ stdenv.mkDerivation rec {
homepage = "https://github.com/vcrhonek/hwdata";
description = "Hardware Database, including Monitors, pci.ids, usb.ids, and video cards";
license = lib.licenses.gpl2Plus;
+ maintainers = with lib.maintainers; [ pedrohlc ];
platforms = lib.platforms.all;
};
}
diff --git a/pkgs/os-specific/linux/kernel/hardened/config.nix b/pkgs/os-specific/linux/kernel/hardened/config.nix
index 198cd86816466..efc64e81af551 100644
--- a/pkgs/os-specific/linux/kernel/hardened/config.nix
+++ b/pkgs/os-specific/linux/kernel/hardened/config.nix
@@ -65,8 +65,8 @@ assert (stdenv.hostPlatform.isx86_64 -> versions.majorMinor version != "5.4");
# Gather additional entropy at boot time for systems that may not have appropriate entropy sources.
GCC_PLUGIN_LATENT_ENTROPY = yes;
- GCC_PLUGIN_STRUCTLEAK = yes; # A port of the PaX structleak plugin
- GCC_PLUGIN_STRUCTLEAK_BYREF_ALL = yes; # Also cover structs passed by address
+ GCC_PLUGIN_STRUCTLEAK = option yes; # A port of the PaX structleak plugin
+ GCC_PLUGIN_STRUCTLEAK_BYREF_ALL = option yes; # Also cover structs passed by address
GCC_PLUGIN_STACKLEAK = whenAtLeast "4.20" yes; # A port of the PaX stackleak plugin
GCC_PLUGIN_RANDSTRUCT = whenOlder "5.19" yes; # A port of the PaX randstruct plugin
GCC_PLUGIN_RANDSTRUCT_PERFORMANCE = whenOlder "5.19" yes;
diff --git a/pkgs/os-specific/linux/kernel/manual-config.nix b/pkgs/os-specific/linux/kernel/manual-config.nix
index 310178b9a1fd3..18c32930f3689 100644
--- a/pkgs/os-specific/linux/kernel/manual-config.nix
+++ b/pkgs/os-specific/linux/kernel/manual-config.nix
@@ -57,8 +57,12 @@ let
hasAttr getAttr optional optionals optionalString optionalAttrs maintainers platforms;
# Dependencies that are required to build kernel modules
- moduleBuildDependencies = [ perl libelf ]
- ++ optional (lib.versionAtLeast version "5.13") zstd;
+ moduleBuildDependencies = [
+ perl
+ libelf
+ # module makefiles often run uname commands to find out the kernel version
+ (buildPackages.deterministic-uname.override { inherit modDirVersion; })
+ ] ++ optional (lib.versionAtLeast version "5.13") zstd;
drvAttrs = config_: kernelConf: kernelPatches: configfile:
let
diff --git a/pkgs/os-specific/linux/mxu11x0/default.nix b/pkgs/os-specific/linux/mxu11x0/default.nix
index ee29180a8d9d8..17d0c69382069 100644
--- a/pkgs/os-specific/linux/mxu11x0/default.nix
+++ b/pkgs/os-specific/linux/mxu11x0/default.nix
@@ -11,9 +11,9 @@ stdenv.mkDerivation rec {
version = mxu_version + "-${kernel.version}";
+ nativeBuildInputs = kernel.moduleBuildDependencies;
+
preBuild = ''
- sed -i -e "s/\$(uname -r).*/${kernel.modDirVersion}/g" driver/mxconf
- sed -i -e "s/\$(shell uname -r).*/${kernel.modDirVersion}/g" driver/Makefile
sed -i -e 's|/lib/modules|${kernel.dev}/lib/modules|' driver/mxconf
sed -i -e 's|/lib/modules|${kernel.dev}/lib/modules|' driver/Makefile
'';
diff --git a/pkgs/os-specific/linux/ocf-resource-agents/default.nix b/pkgs/os-specific/linux/ocf-resource-agents/default.nix
index 8d7f2b527144a..976c5f1779d78 100644
--- a/pkgs/os-specific/linux/ocf-resource-agents/default.nix
+++ b/pkgs/os-specific/linux/ocf-resource-agents/default.nix
@@ -42,6 +42,11 @@ let
python3
];
+ NIX_CFLAGS_COMPILE = lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12") [
+ # Needed with GCC 12 but breaks on darwin (with clang) or older gcc
+ "-Wno-error=maybe-uninitialized"
+ ];
+
meta = with lib; {
homepage = "https://github.com/ClusterLabs/resource-agents";
description = "Combined repository of OCF agents from the RHCS and Linux-HA projects";
diff --git a/pkgs/os-specific/linux/odp-dpdk/default.nix b/pkgs/os-specific/linux/odp-dpdk/default.nix
index 3aeef46255628..7cb364597bb61 100644
--- a/pkgs/os-specific/linux/odp-dpdk/default.nix
+++ b/pkgs/os-specific/linux/odp-dpdk/default.nix
@@ -25,6 +25,7 @@ in stdenv.mkDerivation rec {
autoreconfHook
pkg-config
];
+
buildInputs = [
dpdk_19_11
libconfig
@@ -38,6 +39,12 @@ in stdenv.mkDerivation rec {
libbpf
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=maybe-uninitialized"
+ "-Wno-error=uninitialized"
+ ];
+
# binaries will segfault otherwise
dontStrip = true;
diff --git a/pkgs/os-specific/linux/piper/default.nix b/pkgs/os-specific/linux/piper/default.nix
index 293425897e9d6..39b0eaf5325ed 100644
--- a/pkgs/os-specific/linux/piper/default.nix
+++ b/pkgs/os-specific/linux/piper/default.nix
@@ -19,9 +19,7 @@ python3.pkgs.buildPythonApplication rec {
buildInputs = [
gtk3 glib gnome.adwaita-icon-theme python3 librsvg
];
- propagatedBuildInputs = with python3.pkgs; [ lxml evdev pygobject3 ] ++ [
- gobject-introspection # fixes https://github.com/NixOS/nixpkgs/issues/56943 for now
- ];
+ propagatedBuildInputs = with python3.pkgs; [ lxml evdev pygobject3 ];
mesonFlags = [
"-Druntime-dependency-checks=false"
diff --git a/pkgs/os-specific/linux/pktgen/default.nix b/pkgs/os-specific/linux/pktgen/default.nix
index 20db1cdd74f94..60a55096b446e 100644
--- a/pkgs/os-specific/linux/pktgen/default.nix
+++ b/pkgs/os-specific/linux/pktgen/default.nix
@@ -46,6 +46,12 @@ stdenv.mkDerivation rec {
RTE_SDK = dpdk;
GUI = lib.optionalString withGtk "true";
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=address"
+ "-Wno-error=use-after-free"
+ ];
+
# requires symbols from this file
NIX_LDFLAGS = "-lrte_net_bond";
diff --git a/pkgs/os-specific/linux/projecteur/default.nix b/pkgs/os-specific/linux/projecteur/default.nix
index 63de7453935ce..ecb0fe535d356 100644
--- a/pkgs/os-specific/linux/projecteur/default.nix
+++ b/pkgs/os-specific/linux/projecteur/default.nix
@@ -13,6 +13,10 @@ mkDerivation rec {
sha256 = "sha256-kg6oYtJ4H5A6RNATBg+XvMfCb9FlhEBFjfxamGosMQg=";
};
+ postPatch = ''
+ sed '1i#include ' -i src/device.h # gcc12
+ '';
+
buildInputs = [ qtbase qtgraphicaleffects ];
nativeBuildInputs = [ wrapQtAppsHook cmake pkg-config ];
diff --git a/pkgs/os-specific/linux/rtl8188eus-aircrack/default.nix b/pkgs/os-specific/linux/rtl8188eus-aircrack/default.nix
index 0f2e00c8382f5..ecfd6a87e6b47 100644
--- a/pkgs/os-specific/linux/rtl8188eus-aircrack/default.nix
+++ b/pkgs/os-specific/linux/rtl8188eus-aircrack/default.nix
@@ -14,7 +14,6 @@ stdenv.mkDerivation {
prePatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/depmod \# \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
@@ -30,9 +29,7 @@ stdenv.mkDerivation {
enableParallelBuilding = true;
- nativeBuildInputs = [ bc ];
-
- buildInputs = kernel.moduleBuildDependencies;
+ nativeBuildInputs = [ bc ] ++ kernel.moduleBuildDependencies;
preInstall = ''
mkdir -p "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
diff --git a/pkgs/os-specific/linux/rtl8189es/default.nix b/pkgs/os-specific/linux/rtl8189es/default.nix
index e50129f1e2b93..a89eb3702e8b8 100644
--- a/pkgs/os-specific/linux/rtl8189es/default.nix
+++ b/pkgs/os-specific/linux/rtl8189es/default.nix
@@ -17,7 +17,6 @@ stdenv.mkDerivation rec {
prePatch = ''
substituteInPlace ./Makefile --replace /lib/modules/ "${kernel.dev}/lib/modules/"
- substituteInPlace ./Makefile --replace '$(shell uname -r)' "${kernel.modDirVersion}"
substituteInPlace ./Makefile --replace /sbin/depmod \#
substituteInPlace ./Makefile --replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
diff --git a/pkgs/os-specific/linux/rtl8723ds/default.nix b/pkgs/os-specific/linux/rtl8723ds/default.nix
index 4aa408eec4147..be4b954c1b618 100644
--- a/pkgs/os-specific/linux/rtl8723ds/default.nix
+++ b/pkgs/os-specific/linux/rtl8723ds/default.nix
@@ -13,8 +13,7 @@ stdenv.mkDerivation {
hardeningDisable = [ "pic" ];
- nativeBuildInputs = [ bc ];
- buildInputs = kernel.moduleBuildDependencies;
+ nativeBuildInputs = [ bc ] ++ kernel.moduleBuildDependencies;
makeFlags = [
"ARCH=${stdenv.hostPlatform.linuxArch}"
@@ -25,7 +24,6 @@ stdenv.mkDerivation {
postPatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace "/sbin/depmod" "#" \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
diff --git a/pkgs/os-specific/linux/rtl8812au/default.nix b/pkgs/os-specific/linux/rtl8812au/default.nix
index 84ad6a314e153..bd682ec5933da 100644
--- a/pkgs/os-specific/linux/rtl8812au/default.nix
+++ b/pkgs/os-specific/linux/rtl8812au/default.nix
@@ -11,21 +11,18 @@ stdenv.mkDerivation rec {
sha256 = "sha256-25NaMQq9H6mqVynNQJXpqISAslxfEVSt3ELzG7s4mV4=";
};
- nativeBuildInputs = [ bc nukeReferences ];
- buildInputs = kernel.moduleBuildDependencies;
+ nativeBuildInputs = [ bc nukeReferences ] ++ kernel.moduleBuildDependencies;
hardeningDisable = [ "pic" "format" ];
prePatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/depmod \# \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
makeFlags = [
"ARCH=${stdenv.hostPlatform.linuxArch}"
- "KSRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
("CONFIG_PLATFORM_I386_PC=" + (if stdenv.hostPlatform.isx86 then "y" else "n"))
("CONFIG_PLATFORM_ARM_RPI=" + (if stdenv.hostPlatform.isAarch then "y" else "n"))
] ++ lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
diff --git a/pkgs/os-specific/linux/rtl8814au/default.nix b/pkgs/os-specific/linux/rtl8814au/default.nix
index dd0b32c538018..d8825f018979c 100644
--- a/pkgs/os-specific/linux/rtl8814au/default.nix
+++ b/pkgs/os-specific/linux/rtl8814au/default.nix
@@ -21,7 +21,6 @@ stdenv.mkDerivation {
prePatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/depmod \# \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
diff --git a/pkgs/os-specific/linux/rtl8821au/default.nix b/pkgs/os-specific/linux/rtl8821au/default.nix
index 6a0da0c5e19b6..7ba338d37859b 100644
--- a/pkgs/os-specific/linux/rtl8821au/default.nix
+++ b/pkgs/os-specific/linux/rtl8821au/default.nix
@@ -11,8 +11,7 @@ stdenv.mkDerivation rec {
sha256 = "sha256-wx7xQBCfLu3UWB7ghp8dZ7OB2MFd5i8X0/ygyvW2K50=";
};
- nativeBuildInputs = [ bc nukeReferences ];
- buildInputs = kernel.moduleBuildDependencies;
+ nativeBuildInputs = [ bc nukeReferences ] ++ kernel.moduleBuildDependencies;
hardeningDisable = [ "pic" "format" ];
@@ -20,7 +19,6 @@ stdenv.mkDerivation rec {
makeFlags = [
"ARCH=${stdenv.hostPlatform.linuxArch}"
- "KSRC=${kernel.dev}/lib/modules/${kernel.modDirVersion}/build"
("CONFIG_PLATFORM_I386_PC=" + (if stdenv.hostPlatform.isx86 then "y" else "n"))
("CONFIG_PLATFORM_ARM_RPI=" + (if (stdenv.hostPlatform.isAarch32 || stdenv.hostPlatform.isAarch64) then "y" else "n"))
] ++ lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) [
@@ -30,7 +28,6 @@ stdenv.mkDerivation rec {
prePatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/depmod \# \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
diff --git a/pkgs/os-specific/linux/rtl8821ce/default.nix b/pkgs/os-specific/linux/rtl8821ce/default.nix
index 674af264c39cf..476bce22fb112 100644
--- a/pkgs/os-specific/linux/rtl8821ce/default.nix
+++ b/pkgs/os-specific/linux/rtl8821ce/default.nix
@@ -24,7 +24,6 @@ stdenv.mkDerivation rec {
prePatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/depmod \# \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
diff --git a/pkgs/os-specific/linux/rtl8821cu/default.nix b/pkgs/os-specific/linux/rtl8821cu/default.nix
index edc2d5bc44c0e..35b068fd8d088 100644
--- a/pkgs/os-specific/linux/rtl8821cu/default.nix
+++ b/pkgs/os-specific/linux/rtl8821cu/default.nix
@@ -19,7 +19,6 @@ stdenv.mkDerivation rec {
prePatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/depmod \# \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
diff --git a/pkgs/os-specific/linux/rtl88x2bu/default.nix b/pkgs/os-specific/linux/rtl88x2bu/default.nix
index 38ded6041f598..d3560aca91ad3 100644
--- a/pkgs/os-specific/linux/rtl88x2bu/default.nix
+++ b/pkgs/os-specific/linux/rtl88x2bu/default.nix
@@ -19,7 +19,6 @@ stdenv.mkDerivation rec {
prePatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/depmod \# \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
diff --git a/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix b/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix
index 80c14a0b38345..a2f7ca0e815dd 100644
--- a/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix
+++ b/pkgs/os-specific/linux/rtl88xxau-aircrack/default.nix
@@ -14,14 +14,13 @@ stdenv.mkDerivation rec {
sha256 = "sha256-JUyUOqLMD9nSo6i87K/6Ljp+pWSqSBz/IZiFWu03rQw=";
};
- buildInputs = kernel.moduleBuildDependencies;
+ nativeBuildInputs = kernel.moduleBuildDependencies;
hardeningDisable = [ "pic" ];
prePatch = ''
substituteInPlace ./Makefile \
--replace /lib/modules/ "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/depmod \# \
--replace '$(MODDESTDIR)' "$out/lib/modules/${kernel.modDirVersion}/kernel/net/wireless/"
'';
diff --git a/pkgs/os-specific/linux/systemd/default.nix b/pkgs/os-specific/linux/systemd/default.nix
index e871d6618c34a..ec44cde0c321f 100644
--- a/pkgs/os-specific/linux/systemd/default.nix
+++ b/pkgs/os-specific/linux/systemd/default.nix
@@ -131,7 +131,7 @@ assert withHomed -> withCryptsetup;
let
wantCurl = withRemote || withImportd;
wantGcrypt = withResolved || withImportd;
- version = "252.4";
+ version = "252.5";
# Bump this variable on every (major) version change. See below (in the meson options list) for why.
# command:
@@ -148,7 +148,7 @@ stdenv.mkDerivation {
owner = "systemd";
repo = "systemd-stable";
rev = "v${version}";
- hash = "sha256-8ejSEt3QyCSARGGVbXWac2dB9jdUpC4eX2rN0iENQX0=";
+ hash = "sha256-cNZRTuYFMR1z6KpELeQoJahMhRl4fKuRuc3xXH3KzlM=";
};
# On major changes, or when otherwise required, you *must* reformat the patches,
@@ -384,7 +384,7 @@ stdenv.mkDerivation {
pam
]
- ++ lib.optional wantGcrypt libgcrypt
+ ++ lib.optionals wantGcrypt [ libgcrypt libgpg-error ]
++ lib.optional withTests glib
++ lib.optional withApparmor libapparmor
++ lib.optional wantCurl (lib.getDev curl)
@@ -396,7 +396,6 @@ stdenv.mkDerivation {
++ lib.optional withLibseccomp libseccomp
++ lib.optional withNetworkd iptables
++ lib.optional withPCRE2 pcre2
- ++ lib.optional withResolved libgpg-error
++ lib.optional withSelinux libselinux
++ lib.optional withRemote libmicrohttpd
++ lib.optionals withHomed [ p11-kit ]
diff --git a/pkgs/os-specific/linux/util-linux/default.nix b/pkgs/os-specific/linux/util-linux/default.nix
index eeecc655aef92..3c8b7f6663f18 100644
--- a/pkgs/os-specific/linux/util-linux/default.nix
+++ b/pkgs/os-specific/linux/util-linux/default.nix
@@ -11,6 +11,7 @@
, nlsSupport ? true
, translateManpages ? true
, po4a
+, installShellFiles
}:
stdenv.mkDerivation rec {
@@ -66,7 +67,7 @@ stdenv.mkDerivation rec {
"usrsbin_execdir=${placeholder "bin"}/sbin"
];
- nativeBuildInputs = [ pkg-config ]
+ nativeBuildInputs = [ pkg-config installShellFiles ]
++ lib.optionals translateManpages [ po4a ];
buildInputs = [ zlib libxcrypt ]
@@ -79,6 +80,10 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true;
+ postInstall = ''
+ installShellCompletion --bash bash-completion/*
+ '';
+
meta = with lib; {
homepage = "https://www.kernel.org/pub/linux/utils/util-linux/";
description = "A set of system utilities for Linux";
diff --git a/pkgs/os-specific/linux/vmware/default.nix b/pkgs/os-specific/linux/vmware/default.nix
index 162ae766a845d..73c579288bca0 100644
--- a/pkgs/os-specific/linux/vmware/default.nix
+++ b/pkgs/os-specific/linux/vmware/default.nix
@@ -20,14 +20,12 @@ stdenv.mkDerivation rec {
postPatch = ''
substituteInPlace Makefile \
--replace '/lib/modules/$(VM_UNAME)/misc' "$out/lib/modules/${kernel.modDirVersion}/misc" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /sbin/modinfo "${kmod}/bin/modinfo" \
--replace 'test -z "$(DESTDIR)"' "0"
for module in "vmmon-only" "vmnet-only"; do
substituteInPlace "./$module/Makefile" \
--replace '/lib/modules/' "${kernel.dev}/lib/modules/" \
- --replace '$(shell uname -r)' "${kernel.modDirVersion}" \
--replace /bin/grep "${gnugrep}/bin/grep"
done
'';
diff --git a/pkgs/servers/foundationdb/cmake.nix b/pkgs/servers/foundationdb/cmake.nix
index 9d65198c8cef3..436f0a7fc4d17 100644
--- a/pkgs/servers/foundationdb/cmake.nix
+++ b/pkgs/servers/foundationdb/cmake.nix
@@ -60,6 +60,11 @@ let
(lib.optionalString (!useClang) "-DUSE_LD=GOLD")
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=missing-template-keyword"
+ ];
+
inherit patches;
# fix up the use of the very weird and custom 'fdb_install' command by just
diff --git a/pkgs/servers/gpsd/default.nix b/pkgs/servers/gpsd/default.nix
index d1b11dfd3d55b..e8bc31abed836 100644
--- a/pkgs/servers/gpsd/default.nix
+++ b/pkgs/servers/gpsd/default.nix
@@ -59,7 +59,6 @@ stdenv.mkDerivation rec {
atk
dbus-glib
gdk-pixbuf
- gobject-introspection
libX11
libXaw
libXext
diff --git a/pkgs/servers/mail/exim/default.nix b/pkgs/servers/mail/exim/default.nix
index cd407ef37ec7f..1a911668a5401 100644
--- a/pkgs/servers/mail/exim/default.nix
+++ b/pkgs/servers/mail/exim/default.nix
@@ -64,8 +64,8 @@ stdenv.mkDerivation rec {
${lib.optionalString enableMySQL ''
s:^# \(LOOKUP_MYSQL=yes\)$:\1:
s:^# \(LOOKUP_MYSQL_PC=libmysqlclient\)$:\1:
- s:^\(LOOKUP_LIBS\)=\(.*\):\1=\2 -lmysqlclient -L${libmysqlclient}/lib/mysql -lssl -ldl -lm -lpthread -lz:
- s:^# \(LOOKUP_LIBS\)=.*:\1=-lmysqlclient -L${libmysqlclient}/lib/mysql -lssl -ldl -lm -lpthread -lz:
+ s:^\(LOOKUP_LIBS\)=\(.*\):\1=\2 -lmysqlclient -L${libmysqlclient}/lib/mysql -lssl -lm -lpthread -lz:
+ s:^# \(LOOKUP_LIBS\)=.*:\1=-lmysqlclient -L${libmysqlclient}/lib/mysql -lssl -lm -lpthread -lz:
s:^# \(LOOKUP_INCLUDE\)=.*:\1=-I${libmysqlclient.dev}/include/mysql/:
''}
${lib.optionalString enableAuthDovecot ''
diff --git a/pkgs/servers/monitoring/nagios/default.nix b/pkgs/servers/monitoring/nagios/default.nix
index a58ec2bf7b299..edf82742bc53e 100644
--- a/pkgs/servers/monitoring/nagios/default.nix
+++ b/pkgs/servers/monitoring/nagios/default.nix
@@ -15,7 +15,6 @@ stdenv.mkDerivation rec {
configureFlags = [ "--localstatedir=/var/lib/nagios" ];
buildFlags = [ "all" ];
- CFLAGS = "-ldl";
# Do not create /var directories
preInstall = ''
diff --git a/pkgs/servers/nosql/influxdb/default.nix b/pkgs/servers/nosql/influxdb/default.nix
index 185c246e6fac1..a80975926e8db 100644
--- a/pkgs/servers/nosql/influxdb/default.nix
+++ b/pkgs/servers/nosql/influxdb/default.nix
@@ -33,7 +33,7 @@ let
Version: ${libflux_version}
Description: Library for the InfluxData Flux engine
Cflags: -I/out/include
- Libs: -L/out/lib -lflux -ldl -lpthread
+ Libs: -L/out/lib -lflux -lpthread
'';
passAsFile = [ "pkgcfg" ];
postInstall = ''
diff --git a/pkgs/servers/nosql/influxdb2/default.nix b/pkgs/servers/nosql/influxdb2/default.nix
index 41bba89996bf2..4f86cc4da5309 100644
--- a/pkgs/servers/nosql/influxdb2/default.nix
+++ b/pkgs/servers/nosql/influxdb2/default.nix
@@ -51,7 +51,7 @@ let
Version: ${libflux_version}
Description: Library for the InfluxData Flux engine
Cflags: -I/out/include
- Libs: -L/out/lib -lflux -ldl -lpthread
+ Libs: -L/out/lib -lflux -lpthread
'';
passAsFile = [ "pkgcfg" ];
postInstall = ''
diff --git a/pkgs/servers/openafs/1.8/default.nix b/pkgs/servers/openafs/1.8/default.nix
index d6e2f20ecdbef..8ebed1c274643 100644
--- a/pkgs/servers/openafs/1.8/default.nix
+++ b/pkgs/servers/openafs/1.8/default.nix
@@ -89,7 +89,6 @@ stdenv.mkDerivation {
)
'' + optionalString withTsm ''
export XBSA_CFLAGS="-Dxbsa -DNEW_XBSA -I${tsm-client}/lib64/sample -DXBSA_TSMLIB=\\\"${tsm-client}/lib64/libApiTSM64.so\\\""
- export XBSA_XLIBS="-ldl"
'';
buildFlags = [ "all_nolibafs" ];
diff --git a/pkgs/servers/osrm-backend/default.nix b/pkgs/servers/osrm-backend/default.nix
index ed163f2547df1..cddda5d399f2f 100644
--- a/pkgs/servers/osrm-backend/default.nix
+++ b/pkgs/servers/osrm-backend/default.nix
@@ -15,6 +15,12 @@ stdenv.mkDerivation rec {
buildInputs = [ bzip2 libxml2 libzip boost lua luabind tbb expat ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=stringop-overflow"
+ "-Wno-error=uninitialized"
+ ];
+
postInstall = "mkdir -p $out/share/osrm-backend && cp -r ../profiles $out/share/osrm-backend/profiles";
meta = {
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index fe3e3fba8d2a4..48ac8617c9b8e 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -13,13 +13,17 @@ let
# Server components
, bzip2, lz4, lzo, snappy, xz, zlib, zstd
, cracklib, judy, libevent, libxml2
- , linux-pam, numactl, pmdk
+ , linux-pam, numactl
, fmt_8
, withStorageMroonga ? true, kytea, libsodium, msgpack, zeromq
, withStorageRocks ? true
, withEmbedded ? false
+ , withNuma ? false
}:
+
let
+ isCross = stdenv.buildPlatform != stdenv.hostPlatform;
+
libExt = stdenv.hostPlatform.extensions.sharedLibrary;
mytopEnv = buildPackages.perl.withPackages (p: with p; [ DBDmysql DBI TermReadKey ]);
@@ -99,7 +103,7 @@ let
] ++ lib.optionals (stdenv.hostPlatform.isDarwin && lib.versionAtLeast version "10.6") [
# workaround for https://jira.mariadb.org/browse/MDEV-29925
"-Dhave_C__Wl___as_needed="
- ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+ ] ++ lib.optionals isCross [
# revisit this if nixpkgs supports any architecture whose stack grows upwards
"-DSTACK_DIRECTION=-1"
"-DCMAKE_CROSSCOMPILING_EMULATOR=${stdenv.hostPlatform.emulator buildPackages}"
@@ -169,16 +173,14 @@ let
buildInputs = common.buildInputs ++ [
bzip2 lz4 lzo snappy xz zstd
cracklib judy libevent libxml2
- ] ++ lib.optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) numactl
+ ] ++ lib.optional withNuma numactl
++ lib.optionals stdenv.hostPlatform.isLinux [ linux-pam ]
- ++ lib.optional (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64) pmdk.dev
++ lib.optional (!stdenv.hostPlatform.isDarwin) mytopEnv
++ lib.optionals withStorageMroonga [ kytea libsodium msgpack zeromq ]
++ lib.optionals (lib.versionAtLeast common.version "10.7") [ fmt_8 ];
propagatedBuildInputs = lib.optionals withEmbedded
- (lib.optional (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64) pmdk.lib
- ++ lib.optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) numactl);
+ (lib.optional withNuma numactl);
postPatch = ''
substituteInPlace scripts/galera_new_cluster.sh \
@@ -197,7 +199,7 @@ let
"-DWITHOUT_EXAMPLE=1"
"-DWITHOUT_FEDERATED=1"
"-DWITHOUT_TOKUDB=1"
- ] ++ lib.optionals (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) [
+ ] ++ lib.optionals withNuma [
"-DWITH_NUMA=ON"
] ++ lib.optionals (!withStorageMroonga) [
"-DWITHOUT_MROONGA=1"
diff --git a/pkgs/servers/sql/postgresql/default.nix b/pkgs/servers/sql/postgresql/default.nix
index 93df798c8bcb6..c5e08b8279a3a 100644
--- a/pkgs/servers/sql/postgresql/default.nix
+++ b/pkgs/servers/sql/postgresql/default.nix
@@ -207,45 +207,45 @@ let
in self: {
postgresql_11 = self.callPackage generic {
- version = "11.18";
+ version = "11.19";
psqlSchema = "11.1"; # should be 11, but changing it is invasive
- hash = "sha256-0k8g78UukYrPvMoh6c6ijg4mO4RqDECPz6w7PEoPdQQ=";
+ hash = "sha256-ExCeK3HxE5QFwnIB2jczphrOcu4cIo2cnwMg4GruFMI=";
this = self.postgresql_11;
thisAttr = "postgresql_11";
inherit self;
};
postgresql_12 = self.callPackage generic {
- version = "12.13";
+ version = "12.14";
psqlSchema = "12";
- hash = "sha256-tsYjBGr0VI8RqEtAeTTWddEe0HDHk9FbBGg79fMi4C0=";
+ hash = "sha256-eFYQI304LIQtNW40cTjljAb/6uJA5swLUqxevMMNBD4=";
this = self.postgresql_12;
thisAttr = "postgresql_12";
inherit self;
};
postgresql_13 = self.callPackage generic {
- version = "13.9";
+ version = "13.10";
psqlSchema = "13";
- hash = "sha256-7xlmwKXkn77TNwrSgkkoy2sRZGF67q4WBtooP38zpBU=";
+ hash = "sha256-W7z1pW2FxE86iwWPtGhi/0nLyRg00H4pXQLm3jwhbfI=";
this = self.postgresql_13;
thisAttr = "postgresql_13";
inherit self;
};
postgresql_14 = self.callPackage generic {
- version = "14.6";
+ version = "14.7";
psqlSchema = "14";
- hash = "sha256-UIhA/BgJ05q3InTV8Tfau5/X+0+TPaQWiu67IAae3yI=";
+ hash = "sha256-zvYPAJj6gQHBVG9CVORbcir1QxM3lFs3ryBwB2MNszE=";
this = self.postgresql_14;
thisAttr = "postgresql_14";
inherit self;
};
postgresql_15 = self.callPackage generic {
- version = "15.1";
+ version = "15.2";
psqlSchema = "15";
- hash = "sha256-ZP3yPXNK+tDf5Ad9rKlqxR3NaX5ori09TKbEXLFOIa4=";
+ hash = "sha256-maIXH8PWtbX1a3V6ejy4XVCaOOQnOAXe8jlB7SuEaMc=";
this = self.postgresql_15;
thisAttr = "postgresql_15";
inherit self;
diff --git a/pkgs/servers/tvheadend/default.nix b/pkgs/servers/tvheadend/default.nix
index 833d31de40131..e9db31f792ff6 100644
--- a/pkgs/servers/tvheadend/default.nix
+++ b/pkgs/servers/tvheadend/default.nix
@@ -78,6 +78,8 @@ in stdenv.mkDerivation {
NIX_CFLAGS_COMPILE = [
"-Wno-error=format-truncation"
"-Wno-error=stringop-truncation"
+ # Needed with GCC 12
+ "-Wno-error=use-after-free"
];
configureFlags = [
diff --git a/pkgs/servers/x11/quartz-wm/default.nix b/pkgs/servers/x11/quartz-wm/default.nix
index 2d132b389be68..3cf65e990795a 100644
--- a/pkgs/servers/x11/quartz-wm/default.nix
+++ b/pkgs/servers/x11/quartz-wm/default.nix
@@ -12,6 +12,7 @@ in stdenv.mkDerivation {
./no_title_crash.patch
./extern-patch.patch
];
+ configureFlags = [ "--enable-xplugin-dock-support" ];
nativeBuildInputs = [ pkg-config ];
buildInputs = [
xorg.libXinerama
diff --git a/pkgs/servers/x11/xorg/default.nix b/pkgs/servers/x11/xorg/default.nix
index 0907d814171f9..c7aa09f7033f5 100644
--- a/pkgs/servers/x11/xorg/default.nix
+++ b/pkgs/servers/x11/xorg/default.nix
@@ -22,18 +22,18 @@ self: with self; {
}) {};
# THIS IS A GENERATED FILE. DO NOT EDIT!
- bdftopcf = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation {
+ bdftopcf = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation {
pname = "bdftopcf";
- version = "1.1";
+ version = "1.1.1";
builder = ./builder.sh;
src = fetchurl {
- url = "mirror://xorg/individual/app/bdftopcf-1.1.tar.bz2";
- sha256 = "18hiscgljrz10zjcws25bis32nyrg3hzgmiq6scrh7izqmgz0kab";
+ url = "https://xorg.freedesktop.org/archive/individual/util/bdftopcf-1.1.1.tar.xz";
+ sha256 = "026rzs92h9jsc7r0kvvyvwhm22q0805gp38rs14x6ghg7kam7j8i";
};
hardeningDisable = [ "bindnow" "relro" ];
strictDeps = true;
nativeBuildInputs = [ pkg-config ];
- buildInputs = [ ];
+ buildInputs = [ xorgproto ];
meta.platforms = lib.platforms.unix;
}) {};
@@ -178,11 +178,11 @@ self: with self; {
# THIS IS A GENERATED FILE. DO NOT EDIT!
fontalias = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation {
pname = "font-alias";
- version = "1.0.3";
+ version = "1.0.4";
builder = ./builder.sh;
src = fetchurl {
- url = "mirror://xorg/individual/font/font-alias-1.0.3.tar.bz2";
- sha256 = "16ic8wfwwr3jicaml7b5a0sk6plcgc1kg84w02881yhwmqm3nicb";
+ url = "mirror://xorg/individual/font/font-alias-1.0.4.tar.bz2";
+ sha256 = "0xjjjindczv3g7m1597l0x19zz75xy70wh5garghz61fpzl1l4gk";
};
hardeningDisable = [ "bindnow" "relro" ];
strictDeps = true;
@@ -696,11 +696,11 @@ self: with self; {
# THIS IS A GENERATED FILE. DO NOT EDIT!
fontutil = callPackage ({ stdenv, pkg-config, fetchurl }: stdenv.mkDerivation {
pname = "font-util";
- version = "1.3.1";
+ version = "1.3.3";
builder = ./builder.sh;
src = fetchurl {
- url = "mirror://xorg/individual/font/font-util-1.3.1.tar.bz2";
- sha256 = "08drjb6cf84pf5ysghjpb4i7xkd2p86k3wl2a0jxs1jif6qbszma";
+ url = "mirror://xorg/individual/font/font-util-1.3.3.tar.xz";
+ sha256 = "1lpb5qd2drilql4wl644m682hvmv67hdbbisnrm0ah4wfy8ci4g7";
};
hardeningDisable = [ "bindnow" "relro" ];
strictDeps = true;
@@ -890,18 +890,18 @@ self: with self; {
}) {};
# THIS IS A GENERATED FILE. DO NOT EDIT!
- libX11 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libxcb, xtrans }: stdenv.mkDerivation {
+ libX11 = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto, libpthreadstubs, libxcb, xtrans }: stdenv.mkDerivation {
pname = "libX11";
- version = "1.8.1";
+ version = "1.8.3";
builder = ./builder.sh;
src = fetchurl {
- url = "mirror://xorg/individual/lib/libX11-1.8.1.tar.xz";
- sha256 = "1xyry8i7zqmlkvpbyyqwi18rrdw6ycczlvfp63rh2570pfhimi0v";
+ url = "mirror://xorg/individual/lib/libX11-1.8.3.tar.xz";
+ sha256 = "1gc5cnfys48m1y9y1cidph89fww5c209qff93phbidh68346a5g3";
};
hardeningDisable = [ "bindnow" "relro" ];
strictDeps = true;
nativeBuildInputs = [ pkg-config ];
- buildInputs = [ xorgproto libxcb xtrans ];
+ buildInputs = [ xorgproto libpthreadstubs libxcb xtrans ];
meta.platforms = lib.platforms.unix;
}) {};
@@ -1516,11 +1516,11 @@ self: with self; {
# THIS IS A GENERATED FILE. DO NOT EDIT!
lndir = callPackage ({ stdenv, pkg-config, fetchurl, xorgproto }: stdenv.mkDerivation {
pname = "lndir";
- version = "1.0.3";
+ version = "1.0.4";
builder = ./builder.sh;
src = fetchurl {
- url = "mirror://xorg/individual/util/lndir-1.0.3.tar.bz2";
- sha256 = "0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29";
+ url = "mirror://xorg/individual/util/lndir-1.0.4.tar.xz";
+ sha256 = "11syg5hx3f7m1d2p7zw717lryk819h6wk8h4vmapfdxvsflkfd1y";
};
hardeningDisable = [ "bindnow" "relro" ];
strictDeps = true;
@@ -3436,11 +3436,11 @@ self: with self; {
# THIS IS A GENERATED FILE. DO NOT EDIT!
xset = callPackage ({ stdenv, pkg-config, fetchurl, libX11, libXext, libXmu, xorgproto, libXxf86misc }: stdenv.mkDerivation {
pname = "xset";
- version = "1.2.4";
+ version = "1.2.5";
builder = ./builder.sh;
src = fetchurl {
- url = "mirror://xorg/individual/app/xset-1.2.4.tar.bz2";
- sha256 = "0my987wjvra7l92ry6q44ky383yg3phzxhdbn3lqhapm1ll9bzg4";
+ url = "mirror://xorg/individual/app/xset-1.2.5.tar.xz";
+ sha256 = "0bsyyx3k32k9vpb8x3ks7hlfr03nm0i14fv3cg6n4f2vcdajsscz";
};
hardeningDisable = [ "bindnow" "relro" ];
strictDeps = true;
diff --git a/pkgs/servers/x11/xorg/overrides.nix b/pkgs/servers/x11/xorg/overrides.nix
index b0530977f7e24..1b4b5e000b78d 100644
--- a/pkgs/servers/x11/xorg/overrides.nix
+++ b/pkgs/servers/x11/xorg/overrides.nix
@@ -26,7 +26,7 @@ self: super:
{
wrapWithXFileSearchPathHook = callPackage ({ makeBinaryWrapper, makeSetupHook, writeScript }: makeSetupHook {
name = "wrapWithXFileSearchPathHook";
- deps = [ makeBinaryWrapper ];
+ propagatedBuildInputs = [ makeBinaryWrapper ];
} (writeScript "wrapWithXFileSearchPathHook.sh" ''
wrapWithXFileSearchPath() {
paths=(
@@ -184,6 +184,7 @@ self: super:
propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ xorg.libSM ];
depsBuildBuild = [ buildPackages.stdenv.cc ];
CPP = if stdenv.isDarwin then "clang -E -" else "${stdenv.cc.targetPrefix}cc -E -";
+ outputDoc = "devdoc";
outputs = [ "out" "dev" "devdoc" ];
});
@@ -591,6 +592,7 @@ self: super:
xf86videovmware = super.xf86videovmware.overrideAttrs (attrs: {
buildInputs = attrs.buildInputs ++ [ mesa mesa.driversdev llvm ]; # for libxatracker
+ NIX_CFLAGS_COMPILE = [ "-Wno-error=address" ]; # gcc12
meta = attrs.meta // {
platforms = ["i686-linux" "x86_64-linux"];
};
@@ -739,35 +741,24 @@ self: super:
attrs =
if (abiCompat == null || lib.hasPrefix abiCompat version) then
attrs_passed // {
- buildInputs = attrs_passed.buildInputs ++ [ libdrm.dev ]; postPatch = ''
- for i in dri3/*.c
- do
- sed -i -e "s|#include |#include |" $i
- done
- '';}
- else if (abiCompat == "1.18") then {
- name = "xorg-server-1.18.4";
- builder = ./builder.sh;
- src = fetchurl {
- url = "mirror://xorg/individual/xserver/xorg-server-1.18.4.tar.bz2";
- sha256 = "1j1i3n5xy1wawhk95kxqdc54h34kg7xp4nnramba2q8xqfr5k117";
- };
- nativeBuildInputs = [ pkg-config ];
- buildInputs = [ xorgproto libdrm openssl libX11 libXau libXaw libxcb xcbutil xcbutilwm xcbutilimage xcbutilkeysyms xcbutilrenderutil libXdmcp libXfixes libxkbfile libXmu libXpm libXrender libXres libXt ];
- postPatch = lib.optionalString stdenv.isLinux "sed '1i#include ' -i include/os.h";
- meta.platforms = lib.platforms.unix;
- meta.broken = stdenv.isDarwin;
- } else throw "unsupported xorg abiCompat ${abiCompat} for ${attrs_passed.name}";
+ buildInputs = attrs_passed.buildInputs ++
+ lib.optional (libdrm != null) libdrm.dev;
+ postPatch = ''
+ for i in dri3/*.c
+ do
+ sed -i -e "s|#include |#include |" $i
+ done
+ '';
+ }
+ else throw "unsupported xorg abiCompat ${abiCompat} for ${attrs_passed.name}";
in attrs //
(let
version = lib.getVersion attrs;
commonBuildInputs = attrs.buildInputs ++ [ xtrans ];
commonPropagatedBuildInputs = [
- zlib libGL libGLU dbus
- xorgproto
- libXext pixman libXfont libxshmfence libunwind
- libXfont2
+ dbus libGL libGLU libXext libXfont libXfont2 libepoxy libunwind
+ libxshmfence pixman xorgproto zlib
];
# XQuartz requires two compilations: the first to get X / XQuartz,
# and the second to get Xvfb, Xnest, etc.
@@ -861,9 +852,14 @@ self: super:
url = "https://gitlab.freedesktop.org/xorg/xserver/-/commit/ccdd431cd8f1cabae9d744f0514b6533c438908c.diff";
sha256 = "sha256-IGPsjS7KgRPLrs1ImBXvIFCa8Iu5ZiAHRZvHlBYP8KQ=";
})
+ (fetchpatch {
+ name = "CVE-2023-0494.diff";
+ url = "https://gitlab.freedesktop.org/xorg/xserver/-/commit/0ba6d8c37071131a49790243cdac55392ecf71ec.diff";
+ sha256 = "sha256-/+IuGk09OYVEIB/Y+DTKf7kfHyukEFX/6u1FDIGJieY=";
+ })
];
buildInputs = commonBuildInputs ++ [ libdrm mesa ];
- propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ libpciaccess libepoxy ] ++ commonPropagatedBuildInputs ++ lib.optionals stdenv.isLinux [
+ propagatedBuildInputs = attrs.propagatedBuildInputs or [] ++ [ libpciaccess ] ++ commonPropagatedBuildInputs ++ lib.optionals stdenv.isLinux [
udev
];
depsBuildBuild = [ buildPackages.stdenv.cc ];
@@ -886,6 +882,11 @@ self: super:
"--disable-tls"
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ ];
+
postInstall = ''
rm -fr $out/share/X11/xkb/compiled # otherwise X will try to write in it
( # assert() keeps runtime reference xorgserver-dev in xf86-video-intel and others
@@ -897,7 +898,7 @@ self: super:
'';
passthru.version = version; # needed by virtualbox guest additions
} else {
- nativeBuildInputs = attrs.nativeBuildInputs ++ [ autoreconfHook xorg.utilmacros xorg.fontutil ];
+ nativeBuildInputs = attrs.nativeBuildInputs ++ [ autoreconfHook bootstrap_cmds xorg.utilmacros xorg.fontutil ];
buildInputs = commonBuildInputs ++ [
bootstrap_cmds automake autoconf
Xplugin Carbon Cocoa
@@ -933,6 +934,7 @@ self: super:
configureFlags = [
# note: --enable-xquartz is auto
"CPPFLAGS=-I${./darwin/dri}"
+ "--disable-glamor"
"--with-default-font-path="
"--with-apple-application-name=XQuartz"
"--with-apple-applications-dir=\${out}/Applications"
@@ -993,7 +995,7 @@ self: super:
xinit = (super.xinit.override {
stdenv = if isDarwin then clangStdenv else stdenv;
}).overrideAttrs (attrs: {
- buildInputs = attrs.buildInputs ++ lib.optional isDarwin bootstrap_cmds;
+ nativeBuildInputs = attrs.nativeBuildInputs ++ lib.optional isDarwin bootstrap_cmds;
depsBuildBuild = [ buildPackages.stdenv.cc ];
configureFlags = [
"--with-xserver=${xorg.xorgserver.out}/bin/X"
diff --git a/pkgs/servers/x11/xorg/tarballs.list b/pkgs/servers/x11/xorg/tarballs.list
index 9a82416d30508..fbf70b14ac40d 100644
--- a/pkgs/servers/x11/xorg/tarballs.list
+++ b/pkgs/servers/x11/xorg/tarballs.list
@@ -8,7 +8,7 @@ https://xcb.freedesktop.org/dist/xcb-util-keysyms-0.4.0.tar.bz2
https://xcb.freedesktop.org/dist/xcb-util-renderutil-0.3.9.tar.bz2
https://xcb.freedesktop.org/dist/xcb-util-wm-0.4.1.tar.bz2
mirror://xorg/individual/app/appres-1.0.5.tar.bz2
-mirror://xorg/individual/app/bdftopcf-1.1.tar.bz2
+https://xorg.freedesktop.org/archive/individual/util/bdftopcf-1.1.1.tar.xz
mirror://xorg/individual/app/bitmap-1.0.9.tar.gz
mirror://xorg/individual/app/editres-1.0.7.tar.bz2
mirror://xorg/individual/app/fonttosfnt-1.2.2.tar.bz2
@@ -64,7 +64,7 @@ mirror://xorg/individual/app/xprop-1.2.6.tar.xz
mirror://xorg/individual/app/xrandr-1.5.1.tar.xz
mirror://xorg/individual/app/xrdb-1.2.1.tar.bz2
mirror://xorg/individual/app/xrefresh-1.0.6.tar.bz2
-mirror://xorg/individual/app/xset-1.2.4.tar.bz2
+mirror://xorg/individual/app/xset-1.2.5.tar.xz
mirror://xorg/individual/app/xsetroot-1.1.2.tar.bz2
mirror://xorg/individual/app/xsm-1.0.4.tar.bz2
mirror://xorg/individual/app/xstdcmap-1.0.4.tar.bz2
@@ -135,7 +135,7 @@ mirror://xorg/individual/font/font-adobe-75dpi-1.0.3.tar.bz2
mirror://xorg/individual/font/font-adobe-utopia-100dpi-1.0.4.tar.bz2
mirror://xorg/individual/font/font-adobe-utopia-75dpi-1.0.4.tar.bz2
mirror://xorg/individual/font/font-adobe-utopia-type1-1.0.4.tar.bz2
-mirror://xorg/individual/font/font-alias-1.0.3.tar.bz2
+mirror://xorg/individual/font/font-alias-1.0.4.tar.bz2
mirror://xorg/individual/font/font-arabic-misc-1.0.3.tar.bz2
mirror://xorg/individual/font/font-bh-100dpi-1.0.3.tar.bz2
mirror://xorg/individual/font/font-bh-75dpi-1.0.3.tar.bz2
@@ -163,7 +163,7 @@ mirror://xorg/individual/font/font-schumacher-misc-1.1.2.tar.bz2
mirror://xorg/individual/font/font-screen-cyrillic-1.0.4.tar.bz2
mirror://xorg/individual/font/font-sony-misc-1.0.3.tar.bz2
mirror://xorg/individual/font/font-sun-misc-1.0.3.tar.bz2
-mirror://xorg/individual/font/font-util-1.3.1.tar.bz2
+mirror://xorg/individual/font/font-util-1.3.3.tar.xz
mirror://xorg/individual/font/font-winitzki-cyrillic-1.0.3.tar.bz2
mirror://xorg/individual/font/font-xfree86-type1-1.0.4.tar.bz2
mirror://xorg/individual/lib/libAppleWM-1.4.1.tar.bz2
@@ -174,7 +174,7 @@ mirror://xorg/individual/lib/libICE-1.0.10.tar.bz2
mirror://xorg/individual/lib/libpciaccess-0.16.tar.bz2
mirror://xorg/individual/lib/libSM-1.2.3.tar.bz2
mirror://xorg/individual/lib/libWindowsWM-1.0.1.tar.bz2
-mirror://xorg/individual/lib/libX11-1.8.1.tar.xz
+mirror://xorg/individual/lib/libX11-1.8.3.tar.xz
mirror://xorg/individual/lib/libXau-1.0.9.tar.bz2
mirror://xorg/individual/lib/libXaw-1.0.14.tar.bz2
mirror://xorg/individual/lib/libxcb-1.14.tar.xz
@@ -213,7 +213,7 @@ mirror://xorg/individual/proto/xcb-proto-1.14.1.tar.xz
mirror://xorg/individual/proto/xorgproto-2021.5.tar.bz2
mirror://xorg/individual/util/gccmakedep-1.0.3.tar.bz2
mirror://xorg/individual/util/imake-1.0.8.tar.bz2
-mirror://xorg/individual/util/lndir-1.0.3.tar.bz2
+mirror://xorg/individual/util/lndir-1.0.4.tar.xz
mirror://xorg/individual/util/makedepend-1.0.6.tar.bz2
mirror://xorg/individual/util/util-macros-1.19.3.tar.bz2
mirror://xorg/individual/util/xorg-cf-files-1.0.7.tar.bz2
diff --git a/pkgs/shells/bash/5.nix b/pkgs/shells/bash/5.nix
index 7735243d3babd..10e10eff07c60 100644
--- a/pkgs/shells/bash/5.nix
+++ b/pkgs/shells/bash/5.nix
@@ -37,6 +37,8 @@ stdenv.mkDerivation rec {
outputs = [ "out" "dev" "man" "doc" "info" ];
+ separateDebugInfo = true;
+
NIX_CFLAGS_COMPILE = ''
-DSYS_BASHRC="/etc/bashrc"
-DSYS_BASH_LOGOUT="/etc/bash_logout"
@@ -50,13 +52,14 @@ stdenv.mkDerivation rec {
patchFlags = [ "-p0" ];
- patches = upstreamPatches
- ++ [ ./pgrp-pipe-5.patch ]
- ++ lib.optional stdenv.hostPlatform.isStatic (fetchurl {
+ patches = upstreamPatches ++ [
+ ./pgrp-pipe-5.patch
+ (fetchurl {
name = "fix-static.patch";
url = "https://cgit.freebsd.org/ports/plain/shells/bash/files/patch-configure?id=3e147a1f594751a68fea00a28090d0792bee0b51";
sha256 = "XHFMQ6eXTReNoywdETyrfQEv1rKF8+XFbQZP4YoVKFk=";
- });
+ })
+ ];
configureFlags = [
(if interactive then "--with-installed-readline" else "--disable-readline")
diff --git a/pkgs/stdenv/darwin/default.nix b/pkgs/stdenv/darwin/default.nix
index 46929315f07af..6cc6271eedbe6 100644
--- a/pkgs/stdenv/darwin/default.nix
+++ b/pkgs/stdenv/darwin/default.nix
@@ -736,6 +736,7 @@ rec {
pcre.out
gettext
binutils.bintools
+ binutils.bintools.lib
darwin.binutils
darwin.binutils.bintools
curl.out
diff --git a/pkgs/stdenv/generic/make-derivation.nix b/pkgs/stdenv/generic/make-derivation.nix
index 08bd836e10e7b..c18e70212f985 100644
--- a/pkgs/stdenv/generic/make-derivation.nix
+++ b/pkgs/stdenv/generic/make-derivation.nix
@@ -18,33 +18,34 @@ let
# separate lines, because Nix would only show the last line of the comment.
# An infinite recursion here can be caused by having the attribute names of expression `e` in `.overrideAttrs(finalAttrs: previousAttrs: e)` depend on `finalAttrs`. Only the attribute values of `e` can depend on `finalAttrs`.
- args = rattrs (args // { inherit finalPackage; });
+ args = rattrs (args // { inherit finalPackage overrideAttrs; });
# ^^^^
- finalPackage =
- mkDerivationSimple
- (f0:
- let
- f = self: super:
- # Convert f0 to an overlay. Legacy is:
- # overrideAttrs (super: {})
- # We want to introduce self. We follow the convention of overlays:
- # overrideAttrs (self: super: {})
- # Which means the first parameter can be either self or super.
- # This is surprising, but far better than the confusion that would
- # arise from flipping an overlay's parameters in some cases.
- let x = f0 super;
- in
- if builtins.isFunction x
- then
- # Can't reuse `x`, because `self` comes first.
- # Looks inefficient, but `f0 super` was a cheap thunk.
- f0 self super
- else x;
+ overrideAttrs = f0:
+ let
+ f = self: super:
+ # Convert f0 to an overlay. Legacy is:
+ # overrideAttrs (super: {})
+ # We want to introduce self. We follow the convention of overlays:
+ # overrideAttrs (self: super: {})
+ # Which means the first parameter can be either self or super.
+ # This is surprising, but far better than the confusion that would
+ # arise from flipping an overlay's parameters in some cases.
+ let x = f0 super;
in
- makeDerivationExtensible
- (self: let super = rattrs self; in super // f self super))
- args;
+ if builtins.isFunction x
+ then
+ # Can't reuse `x`, because `self` comes first.
+ # Looks inefficient, but `f0 super` was a cheap thunk.
+ f0 self super
+ else x;
+ in
+ makeDerivationExtensible
+ (self: let super = rattrs self; in super // f self super);
+
+ finalPackage =
+ mkDerivationSimple overrideAttrs args;
+
in finalPackage;
# makeDerivationExtensibleConst == makeDerivationExtensible (_: attrs),
@@ -173,6 +174,13 @@ let
separateDebugInfo' = separateDebugInfo && stdenv.hostPlatform.isLinux && !(stdenv.hostPlatform.useLLVM or false);
outputs' = outputs ++ lib.optional separateDebugInfo' "debug";
+ # Turn a derivation into its outPath without a string context attached.
+ # See the comment at the usage site.
+ unsafeDerivationToUntrackedOutpath = drv:
+ if lib.isDerivation drv
+ then builtins.unsafeDiscardStringContext drv.outPath
+ else drv;
+
noNonNativeDeps = builtins.length (depsBuildTarget ++ depsBuildTargetPropagated
++ depsHostHost ++ depsHostHostPropagated
++ buildInputs ++ propagatedBuildInputs
@@ -444,6 +452,40 @@ else let
"/bin/sh"
];
__propagatedImpureHostDeps = computedPropagatedImpureHostDeps ++ __propagatedImpureHostDeps;
+ } //
+ # If we use derivations directly here, they end up as build-time dependencies.
+ # This is especially problematic in the case of disallowed*, since the disallowed
+ # derivations will be built by nix as build-time dependencies, while those
+ # derivations might take a very long time to build, or might not even build
+ # successfully on the platform used.
+ # We can improve on this situation by instead passing only the outPath,
+ # without an attached string context, to nix. The out path will be a placeholder
+ # which will be replaced by the actual out path if the derivation in question
+ # is part of the final closure (and thus needs to be built). If it is not
+ # part of the final closure, then the placeholder will be passed along,
+ # but in that case we know for a fact that the derivation is not part of the closure.
+ # This means that passing the out path to nix does the right thing in either
+ # case, both for disallowed and allowed references/requisites, and we won't
+ # build the derivation if it wouldn't be part of the closure, saving time and resources.
+ # While the problem is less severe for allowed*, since we want the derivation
+ # to be built eventually, we would still like to get the error early and without
+ # having to wait while nix builds a derivation that might not be used.
+ # See also https://github.com/NixOS/nix/issues/4629
+ lib.optionalAttrs (attrs ? disallowedReferences) {
+ disallowedReferences =
+ map unsafeDerivationToUntrackedOutpath attrs.disallowedReferences;
+ } //
+ lib.optionalAttrs (attrs ? disallowedRequisites) {
+ disallowedRequisites =
+ map unsafeDerivationToUntrackedOutpath attrs.disallowedRequisites;
+ } //
+ lib.optionalAttrs (attrs ? allowedReferences) {
+ allowedReferences =
+ lib.mapNullable unsafeDerivationToUntrackedOutpath attrs.allowedReferences;
+ } //
+ lib.optionalAttrs (attrs ? allowedRequisites) {
+ allowedRequisites =
+ lib.mapNullable unsafeDerivationToUntrackedOutpath attrs.allowedRequisites;
};
validity = checkMeta { inherit meta attrs; };
diff --git a/pkgs/stdenv/generic/setup.sh b/pkgs/stdenv/generic/setup.sh
index b1b982ecdffc1..1a637bf13fdd2 100644
--- a/pkgs/stdenv/generic/setup.sh
+++ b/pkgs/stdenv/generic/setup.sh
@@ -28,10 +28,16 @@ if [ -n "$__structuredAttrs" ]; then
# ex: out=/nix/store/...
export "$outputName=${outputs[$outputName]}"
done
- # $NIX_ATTRS_JSON_FILE points to the wrong location in sandbox
- # https://github.com/NixOS/nix/issues/6736
- export NIX_ATTRS_JSON_FILE="$NIX_BUILD_TOP/.attrs.json"
- export NIX_ATTRS_SH_FILE="$NIX_BUILD_TOP/.attrs.sh"
+
+ # $NIX_ATTRS_JSON_FILE pointed to the wrong location in sandbox
+ # https://github.com/NixOS/nix/issues/6736; please keep around until the
+ # fix reaches *every patch version* that's >= lib/minver.nix
+ if ! [[ -e "$NIX_ATTRS_JSON_FILE" ]]; then
+ export NIX_ATTRS_JSON_FILE="$NIX_BUILD_TOP/.attrs.json"
+ fi
+ if ! [[ -e "$NIX_ATTRS_SH_FILE" ]]; then
+ export NIX_ATTRS_SH_FILE="$NIX_BUILD_TOP/.attrs.sh"
+ fi
else
: "${outputs:=out}"
fi
@@ -989,16 +995,58 @@ stripHash() {
}
+recordPropagatedDependencies() {
+ # Propagate dependencies into the development output.
+ declare -ra flatVars=(
+ # Build
+ depsBuildBuildPropagated
+ propagatedNativeBuildInputs
+ depsBuildTargetPropagated
+ # Host
+ depsHostHostPropagated
+ propagatedBuildInputs
+ # Target
+ depsTargetTargetPropagated
+ )
+ declare -ra flatFiles=(
+ "${propagatedBuildDepFiles[@]}"
+ "${propagatedHostDepFiles[@]}"
+ "${propagatedTargetDepFiles[@]}"
+ )
+
+ local propagatedInputsIndex
+ for propagatedInputsIndex in "${!flatVars[@]}"; do
+ local propagatedInputsSlice="${flatVars[$propagatedInputsIndex]}[@]"
+ local propagatedInputsFile="${flatFiles[$propagatedInputsIndex]}"
+
+ [[ "${!propagatedInputsSlice}" ]] || continue
+
+ mkdir -p "${!outputDev}/nix-support"
+ # shellcheck disable=SC2086
+ printWords ${!propagatedInputsSlice} > "${!outputDev}/nix-support/$propagatedInputsFile"
+ done
+}
+
+
unpackCmdHooks+=(_defaultUnpack)
_defaultUnpack() {
local fn="$1"
+ local destination
if [ -d "$fn" ]; then
+ destination="$(stripHash "$fn")"
+
+ if [ -e "$destination" ]; then
+ echo "Cannot copy $fn to $destination: destination already exists!"
+ echo "Did you specify two \"srcs\" with the same \"name\"?"
+ return 1
+ fi
+
# We can't preserve hardlinks because they may have been
# introduced by store optimization, which might break things
# in the build.
- cp -pr --reflink=auto -- "$fn" "$(stripHash "$fn")"
+ cp -pr --reflink=auto -- "$fn" "$destination"
else
@@ -1364,36 +1412,8 @@ fixupPhase() {
done
- # Propagate dependencies & setup hook into the development output.
- declare -ra flatVars=(
- # Build
- depsBuildBuildPropagated
- propagatedNativeBuildInputs
- depsBuildTargetPropagated
- # Host
- depsHostHostPropagated
- propagatedBuildInputs
- # Target
- depsTargetTargetPropagated
- )
- declare -ra flatFiles=(
- "${propagatedBuildDepFiles[@]}"
- "${propagatedHostDepFiles[@]}"
- "${propagatedTargetDepFiles[@]}"
- )
-
- local propagatedInputsIndex
- for propagatedInputsIndex in "${!flatVars[@]}"; do
- local propagatedInputsSlice="${flatVars[$propagatedInputsIndex]}[@]"
- local propagatedInputsFile="${flatFiles[$propagatedInputsIndex]}"
-
- [[ "${!propagatedInputsSlice}" ]] || continue
-
- mkdir -p "${!outputDev}/nix-support"
- # shellcheck disable=SC2086
- printWords ${!propagatedInputsSlice} > "${!outputDev}/nix-support/$propagatedInputsFile"
- done
-
+ # record propagated dependencies & setup hook into the development output.
+ recordPropagatedDependencies
if [ -n "${setupHook:-}" ]; then
mkdir -p "${!outputDev}/nix-support"
diff --git a/pkgs/test/default.nix b/pkgs/test/default.nix
index 39039c5950e46..71d065179d172 100644
--- a/pkgs/test/default.nix
+++ b/pkgs/test/default.nix
@@ -61,6 +61,8 @@ with pkgs;
nixos-functions = callPackage ./nixos-functions {};
+ overriding = callPackage ./overriding.nix { };
+
patch-shebangs = callPackage ./patch-shebangs {};
texlive = callPackage ./texlive {};
diff --git a/pkgs/test/overriding.nix b/pkgs/test/overriding.nix
new file mode 100644
index 0000000000000..edc1b27cf4f1d
--- /dev/null
+++ b/pkgs/test/overriding.nix
@@ -0,0 +1,56 @@
+{ lib, pkgs, stdenvNoCC }:
+
+let
+ tests =
+ let
+ p = pkgs.python3Packages.xpybutil.overridePythonAttrs (_: { dontWrapPythonPrograms = true; });
+ in
+ [
+ ({
+ name = "overridePythonAttrs";
+ expr = !lib.hasInfix "wrapPythonPrograms" p.postFixup;
+ expected = true;
+ })
+ ({
+ name = "repeatedOverrides-pname";
+ expr = repeatedOverrides.pname == "a-better-hello-with-blackjack";
+ expected = true;
+ })
+ ({
+ name = "repeatedOverrides-entangled-pname";
+ expr = repeatedOverrides.entangled.pname == "a-better-figlet-with-blackjack";
+ expected = true;
+ })
+ ];
+
+ addEntangled = origOverrideAttrs: f:
+ origOverrideAttrs (
+ lib.composeExtensions f (self: super: {
+ passthru = super.passthru // {
+ entangled = super.passthru.entangled.overrideAttrs f;
+ overrideAttrs = addEntangled self.overrideAttrs;
+ };
+ })
+ );
+
+ entangle = pkg1: pkg2: pkg1.overrideAttrs (self: super: {
+ passthru = super.passthru // {
+ entangled = pkg2;
+ overrideAttrs = addEntangled self.overrideAttrs;
+ };
+ });
+
+ example = entangle pkgs.hello pkgs.figlet;
+
+ overrides1 = example.overrideAttrs (_: super: { pname = "a-better-${super.pname}"; });
+
+ repeatedOverrides = overrides1.overrideAttrs (_: super: { pname = "${super.pname}-with-blackjack"; });
+in
+
+stdenvNoCC.mkDerivation {
+ name = "test-overriding";
+ passthru = { inherit tests; };
+ buildCommand = ''
+ touch $out
+ '' + lib.concatMapStringsSep "\n" (t: "([[ ${lib.boolToString t.expr} == ${lib.boolToString t.expected} ]] && echo '${t.name} success') || (echo '${t.name} fail' && exit 1)") tests;
+}
diff --git a/pkgs/test/stdenv/hooks.nix b/pkgs/test/stdenv/hooks.nix
index 7f25d7dbd2db0..3d72efae6c479 100644
--- a/pkgs/test/stdenv/hooks.nix
+++ b/pkgs/test/stdenv/hooks.nix
@@ -23,19 +23,29 @@
};
make-symlinks-relative = stdenv.mkDerivation {
name = "test-make-symlinks-relative";
+ outputs = [ "out" "man" ];
buildCommand = ''
mkdir -p $out/{bar,baz}
+ mkdir -p $man/share/{x,y}
source1="$out/bar/foo"
destination1="$out/baz/foo"
+ source2="$man/share/x/file1"
+ destination2="$man/share/y/file2"
echo foo > $source1
+ echo foo > $source2
ln -s $source1 $destination1
+ ln -s $source2 $destination2
echo "symlink before patching: $(readlink $destination1)"
+ echo "symlink before patching: $(readlink $destination2)"
- _makeSymlinksRelative
+ _makeSymlinksRelativeInAllOutputs
echo "symlink after patching: $(readlink $destination1)"
([[ -e $destination1 ]] && echo "symlink isn't broken") || (echo "symlink is broken" && exit 1)
([[ $(readlink $destination1) == "../bar/foo" ]] && echo "absolute symlink was made relative") || (echo "symlink was not made relative" && exit 1)
+ echo "symlink after patching: $(readlink $destination2)"
+ ([[ -e $destination2 ]] && echo "symlink isn't broken") || (echo "symlink is broken" && exit 1)
+ ([[ $(readlink $destination2) == "../x/file1" ]] && echo "absolute symlink was made relative") || (echo "symlink was not made relative" && exit 1)
'';
};
move-docs = stdenv.mkDerivation {
diff --git a/pkgs/tools/X11/arandr/default.nix b/pkgs/tools/X11/arandr/default.nix
index 0d8303c0df46f..6c4c89e888875 100644
--- a/pkgs/tools/X11/arandr/default.nix
+++ b/pkgs/tools/X11/arandr/default.nix
@@ -27,10 +27,6 @@ buildPythonApplication rec {
# no tests
doCheck = false;
- # hook for gobject-introspection doesn't like strictDeps
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
buildInputs = [ docutils gsettings-desktop-schemas gtk3 ];
nativeBuildInputs = [ gobject-introspection wrapGAppsHook ];
propagatedBuildInputs = [ xrandr pygobject3 ];
diff --git a/pkgs/tools/admin/tigervnc/default.nix b/pkgs/tools/admin/tigervnc/default.nix
index e4933986176e8..2c282514d330c 100644
--- a/pkgs/tools/admin/tigervnc/default.nix
+++ b/pkgs/tools/admin/tigervnc/default.nix
@@ -34,7 +34,6 @@ stdenv.mkDerivation rec {
sha256 = "sha256-77X+AvHFWfYYIio3c+EYf11jg/1IbYhNUweRIDHMOZw=";
};
-
patches = [
(fetchpatch {
url = "https://patch-diff.githubusercontent.com/raw/TigerVNC/tigervnc/pull/1383.patch";
@@ -65,6 +64,10 @@ stdenv.mkDerivation rec {
"-DCMAKE_INSTALL_LIBEXECDIR=${placeholder "out"}/bin"
];
+ NIX_CFLAGS_COMPILE = [
+ "-Wno-error=array-bounds"
+ ];
+
postBuild = lib.optionalString stdenv.isLinux ''
export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -Wno-error=int-to-pointer-cast -Wno-error=pointer-to-int-cast"
export CXXFLAGS="$CXXFLAGS -fpermissive"
diff --git a/pkgs/tools/archivers/arc_unpacker/default.nix b/pkgs/tools/archivers/arc_unpacker/default.nix
index ab018fde3d64e..2ade0f88a8d0d 100644
--- a/pkgs/tools/archivers/arc_unpacker/default.nix
+++ b/pkgs/tools/archivers/arc_unpacker/default.nix
@@ -17,6 +17,7 @@ stdenv.mkDerivation rec {
postPatch = ''
cp ${catch2}/include/catch2/catch.hpp tests/test_support/catch.h
+ sed '1i#include ' -i src/dec/eagls/pak_archive_decoder.cc # gcc12
'';
checkPhase = ''
diff --git a/pkgs/tools/audio/beets/common.nix b/pkgs/tools/audio/beets/common.nix
index 4cfef4657e378..b3eefbf9cba61 100644
--- a/pkgs/tools/audio/beets/common.nix
+++ b/pkgs/tools/audio/beets/common.nix
@@ -61,7 +61,6 @@ python3Packages.buildPythonApplication rec {
propagatedBuildInputs = with python3Packages; [
confuse
- gobject-introspection
gst-python
jellyfish
mediafile
@@ -74,7 +73,6 @@ python3Packages.buildPythonApplication rec {
unidecode
] ++ (concatMap (p: p.propagatedBuildInputs) (attrValues enabledPlugins));
- # see: https://github.com/NixOS/nixpkgs/issues/56943#issuecomment-1131643663
nativeBuildInputs = [
gobject-introspection
sphinxHook
diff --git a/pkgs/tools/audio/mpdris2/default.nix b/pkgs/tools/audio/mpdris2/default.nix
index a367da9828ed0..fd8618d6243d9 100644
--- a/pkgs/tools/audio/mpdris2/default.nix
+++ b/pkgs/tools/audio/mpdris2/default.nix
@@ -13,7 +13,6 @@ python3.pkgs.buildPythonApplication rec {
pname = "mpDris2";
version = "0.9.1";
format = "other";
- strictDeps = false; # https://github.com/NixOS/nixpkgs/issues/56943
src = fetchFromGitHub {
owner = "eonpatapon";
diff --git a/pkgs/tools/audio/mpris-scrobbler/default.nix b/pkgs/tools/audio/mpris-scrobbler/default.nix
index 35685fd5fb2f5..0c051047c0fc3 100644
--- a/pkgs/tools/audio/mpris-scrobbler/default.nix
+++ b/pkgs/tools/audio/mpris-scrobbler/default.nix
@@ -53,14 +53,17 @@ stdenv.mkDerivation rec {
"-Dversion=${version}"
];
- NIX_CFLAGS_COMPILE = toString (lib.optionals stdenv.isDarwin [
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=address"
+ ] ++ lib.optionals stdenv.isDarwin [
"-Wno-sometimes-uninitialized"
"-Wno-tautological-pointer-compare"
] ++ lib.optionals stdenv.isLinux [
"-Wno-array-bounds"
"-Wno-free-nonheap-object"
"-Wno-stringop-truncation"
- ]);
+ ];
passthru = {
updateScript = nix-update-script { };
diff --git a/pkgs/tools/filesystems/blobfuse/default.nix b/pkgs/tools/filesystems/blobfuse/default.nix
index a620a07d4753e..b9bed9cc20c06 100644
--- a/pkgs/tools/filesystems/blobfuse/default.nix
+++ b/pkgs/tools/filesystems/blobfuse/default.nix
@@ -24,7 +24,11 @@ in stdenv.mkDerivation rec {
pname = "blobfuse";
inherit version src;
- NIX_CFLAGS_COMPILE = "-Wno-error=catch-value";
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=deprecated-declarations"
+ "-Wno-error=catch-value"
+ ];
buildInputs = [ curl gnutls libgcrypt libuuid fuse boost cpplite ];
nativeBuildInputs = [ cmake pkg-config ];
diff --git a/pkgs/tools/filesystems/ceph/default.nix b/pkgs/tools/filesystems/ceph/default.nix
index d9ec176220baf..e2677957e9cdf 100644
--- a/pkgs/tools/filesystems/ceph/default.nix
+++ b/pkgs/tools/filesystems/ceph/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, runCommand, fetchurl
+{ lib, stdenv, runCommand, fetchurl, fetchpatch
, ensureNewerSourcesHook
, cmake, pkg-config
, which, git
@@ -152,6 +152,21 @@ in rec {
patches = [
./0000-fix-SPDK-build-env.patch
+ # pacific: include/buffer: include
+ # fixes build with gcc 12
+ # https://github.com/ceph/ceph/pull/47295
+ (fetchpatch {
+ url = "https://github.com/ceph/ceph/pull/47295/commits/df88789a38c053513d3b2a9b7d12a952fc0c9042.patch";
+ hash = "sha256-je65kBfa5hR0ZKo6ZI10XmD5ZUbKj5rxlGxxI9ZJVfo=";
+ })
+ (fetchpatch {
+ url = "https://github.com/ceph/ceph/pull/47295/commits/2abcbe4e47705e6e0fcc7d9d9b75625f563199af.patch";
+ hash = "sha256-8sWQKoZNHuGuhzX/F+3fY4+kjsrwsfoMdVpfVSj2x5w=";
+ })
+ (fetchpatch {
+ url = "https://github.com/ceph/ceph/pull/47295/commits/13dc077cf6c65a3b8c4f13d896847b9964b3fcbb.patch";
+ hash = "sha256-byfiZh9OJrux/y5m3QCPg0LET6q33ZDXmp/CN+yOSQQ=";
+ })
];
nativeBuildInputs = [
diff --git a/pkgs/tools/filesystems/idsk/default.nix b/pkgs/tools/filesystems/idsk/default.nix
index 39052ecba9356..34a32c4a6dfe7 100644
--- a/pkgs/tools/filesystems/idsk/default.nix
+++ b/pkgs/tools/filesystems/idsk/default.nix
@@ -14,6 +14,11 @@ stdenv.mkDerivation rec {
nativeBuildInputs = [ cmake ];
+ NIX_CFLAGS_COMPILE = lib.optionals stdenv.cc.isGNU [
+ # Needed with GCC 12 but breaks on darwin (with clang)
+ "-std=c++14"
+ ];
+
installPhase = ''
mkdir -p $out/bin
cp iDSK $out/bin
diff --git a/pkgs/tools/graphics/argyllcms/default.nix b/pkgs/tools/graphics/argyllcms/default.nix
index 2b17fa796e845..f060216935047 100644
--- a/pkgs/tools/graphics/argyllcms/default.nix
+++ b/pkgs/tools/graphics/argyllcms/default.nix
@@ -85,7 +85,7 @@ stdenv.mkDerivation rec {
LINKFLAGS +=
${lib.concatStringsSep " " (map (x: "-L${x}/lib") buildInputs)}
- -ldl -lrt -lX11 -lXext -lXxf86vm -lXinerama -lXrandr -lXau -lXdmcp -lXss
+ -lrt -lX11 -lXext -lXxf86vm -lXinerama -lXrandr -lXau -lXdmcp -lXss
-ljpeg -ltiff -lpng -lssl ;
'';
in ''
diff --git a/pkgs/tools/graphics/libyafaray/default.nix b/pkgs/tools/graphics/libyafaray/default.nix
index db48aa678cc55..22bbfddbcf5d4 100644
--- a/pkgs/tools/graphics/libyafaray/default.nix
+++ b/pkgs/tools/graphics/libyafaray/default.nix
@@ -26,6 +26,11 @@ stdenv.mkDerivation rec {
sha256 = "sha256-UVBA1vXOuLg4RT+BdF4rhbZ6I9ySeZX0N81gh3MH84I=";
};
+ postPatch = ''
+ sed '1i#include ' -i \
+ include/geometry/poly_double.h include/noise/noise_generator.h # gcc12
+ '';
+
preConfigure = ''
NIX_CFLAGS_COMPILE+=" -isystem ${ilmbase.dev}/include/OpenEXR"
'';
diff --git a/pkgs/tools/graphics/pikchr/default.nix b/pkgs/tools/graphics/pikchr/default.nix
index aed3d485c4ad2..d750d243fc36c 100644
--- a/pkgs/tools/graphics/pikchr/default.nix
+++ b/pkgs/tools/graphics/pikchr/default.nix
@@ -1,6 +1,9 @@
{ lib
, stdenv
, fetchfossil
+, tcl
+
+, enableTcl ? true
}:
stdenv.mkDerivation {
@@ -19,14 +22,27 @@ stdenv.mkDerivation {
substituteInPlace Makefile --replace open "test -f"
'';
+ nativeBuildInputs = lib.optional enableTcl tcl.tclPackageHook;
+
+ buildInputs = lib.optional enableTcl tcl;
+
makeFlags = [ "CC=${stdenv.cc.targetPrefix}cc" ];
+ buildFlags = [ "pikchr" ] ++ lib.optional enableTcl "piktcl";
+
installPhase = ''
+ runHook preInstall
install -Dm755 pikchr $out/bin/pikchr
install -Dm755 pikchr.out $out/lib/pikchr.o
install -Dm644 pikchr.h $out/include/pikchr.h
+ '' + lib.optionalString enableTcl ''
+ cp -r piktcl $out/lib/piktcl
+ '' + ''
+ runHook postInstall
'';
+ dontWrapTclBinaries = true;
+
doCheck = true;
checkTarget = "test";
diff --git a/pkgs/tools/graphics/spirv-cross/default.nix b/pkgs/tools/graphics/spirv-cross/default.nix
index 4a75e28deb8ac..b66c2d0a7590f 100644
--- a/pkgs/tools/graphics/spirv-cross/default.nix
+++ b/pkgs/tools/graphics/spirv-cross/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation (finalAttrs: {
pname = "spirv-cross";
- version = "1.3.236.0";
+ version = "1.3.239.0";
src = fetchFromGitHub {
owner = "KhronosGroup";
repo = "SPIRV-Cross";
rev = "sdk-${finalAttrs.version}";
- hash = "sha256-zx/fjDKgteWizC3O1bL4WSwwPNw2/2m0xCnCiOttgAo=";
+ hash = "sha256-Awtsz4iMuS3JuvaYHRxjo56EnnZPjo9YGfeYAi7lmJY=";
};
nativeBuildInputs = [ cmake python3 ];
diff --git a/pkgs/tools/graphics/vulkan-extension-layer/default.nix b/pkgs/tools/graphics/vulkan-extension-layer/default.nix
index bf60e8ed85f32..63d763a893daf 100644
--- a/pkgs/tools/graphics/vulkan-extension-layer/default.nix
+++ b/pkgs/tools/graphics/vulkan-extension-layer/default.nix
@@ -2,14 +2,14 @@
stdenv.mkDerivation rec {
pname = "vulkan-extension-layer";
- version = "1.3.236.0";
+ version = "1.3.239.0";
src = (assert version == vulkan-headers.version;
fetchFromGitHub {
owner = "KhronosGroup";
repo = "Vulkan-ExtensionLayer";
rev = "sdk-${version}";
- hash = "sha256-NlBS7UuV2AZPY5VyoqTnTf63M7fHIPQDZRtMZ4XwMzA=";
+ hash = "sha256-0t9HGyiYk3twYQLFCcWsrPiXY1dqjdCadjP4yMLoFwA=";
});
nativeBuildInputs = [ cmake jq ];
diff --git a/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix b/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
index 11cef8eeb886b..ec1862df9cd77 100644
--- a/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
+++ b/pkgs/tools/graphics/vulkan-tools-lunarg/default.nix
@@ -10,6 +10,7 @@
, libXrandr
, libffi
, libxcb
+, pkg-config
, wayland
, which
, xcbutilkeysyms
@@ -24,18 +25,18 @@
stdenv.mkDerivation rec {
pname = "vulkan-tools-lunarg";
# The version must match that in vulkan-headers
- version = "1.3.236.0";
+ version = "1.3.239.0";
src = (assert version == vulkan-headers.version;
fetchFromGitHub {
owner = "LunarG";
repo = "VulkanTools";
rev = "sdk-${version}";
- hash = "sha256-0dGD3InmEd9hO8+uVGMqBHXXfyX8tswyuOaZCftudz0=";
+ hash = "sha256-zgkuTy9ccg8D/riA1CM/PnbXW1R0jWEINtcEVilETwk=";
fetchSubmodules = true;
});
- nativeBuildInputs = [ cmake python3 jq which ];
+ nativeBuildInputs = [ cmake python3 jq which pkg-config ];
buildInputs = [
expat
diff --git a/pkgs/tools/graphics/vulkan-tools/default.nix b/pkgs/tools/graphics/vulkan-tools/default.nix
index 8e94997db6c8e..da84038fd0fdb 100644
--- a/pkgs/tools/graphics/vulkan-tools/default.nix
+++ b/pkgs/tools/graphics/vulkan-tools/default.nix
@@ -21,7 +21,7 @@
stdenv.mkDerivation rec {
pname = "vulkan-tools";
- version = "1.3.236.0";
+ version = "1.3.239.0";
# It's not strictly necessary to have matching versions here, however
# since we're using the SDK version we may as well be consistent with
@@ -31,7 +31,7 @@ stdenv.mkDerivation rec {
owner = "KhronosGroup";
repo = "Vulkan-Tools";
rev = "sdk-${version}";
- hash = "sha256-PmNTpdAkXJkARLohRtUOuKTZPoKgeVF4DAo1wsAq5xE=";
+ hash = "sha256-DQGwxTZzS0eATKodMpeJaQdXADvomiqPOspDYoPFZjI=";
});
nativeBuildInputs = [
diff --git a/pkgs/tools/graphics/vulkan-tools/use-nix-moltenvk.patch b/pkgs/tools/graphics/vulkan-tools/use-nix-moltenvk.patch
index 5cbcec6a8a145..5d09bff9c958c 100644
--- a/pkgs/tools/graphics/vulkan-tools/use-nix-moltenvk.patch
+++ b/pkgs/tools/graphics/vulkan-tools/use-nix-moltenvk.patch
@@ -1,8 +1,8 @@
diff --git a/cube/CMakeLists.txt b/cube/CMakeLists.txt
-index 616fbc96..d2811c8d 100644
+index a2f026e7..327f5dba 100644
--- a/cube/CMakeLists.txt
+++ b/cube/CMakeLists.txt
-@@ -262,14 +262,7 @@ else()
+@@ -257,14 +257,7 @@ else()
endif()
if(APPLE)
@@ -18,7 +18,7 @@ index 616fbc96..d2811c8d 100644
else()
install(TARGETS vkcube RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
endif()
-@@ -309,14 +302,7 @@ else()
+@@ -302,14 +295,7 @@ else()
endif()
if(APPLE)
@@ -35,10 +35,10 @@ index 616fbc96..d2811c8d 100644
install(TARGETS vkcubepp RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
endif()
diff --git a/cube/macOS/cube/cube.cmake b/cube/macOS/cube/cube.cmake
-index 9b823f95..238c3e67 100644
+index 9b823f95..0c43a2c9 100644
--- a/cube/macOS/cube/cube.cmake
+++ b/cube/macOS/cube/cube.cmake
-@@ -72,12 +69,14 @@ set_source_files_properties("${CMAKE_BINARY_DIR}/staging-json/MoltenVK_icd.json"
+@@ -72,12 +72,14 @@ set_source_files_properties("${CMAKE_BINARY_DIR}/staging-json/MoltenVK_icd.json"
# Copy the MoltenVK lib into the bundle.
if(${CMAKE_GENERATOR} MATCHES "^Xcode.*")
add_custom_command(TARGET vkcube POST_BUILD
@@ -56,10 +56,10 @@ index 9b823f95..238c3e67 100644
DEPENDS vulkan)
endif()
diff --git a/cube/macOS/cubepp/cubepp.cmake b/cube/macOS/cubepp/cubepp.cmake
-index eae4de3c..0acd18f9 100644
+index eae4de3c..e528ae26 100644
--- a/cube/macOS/cubepp/cubepp.cmake
+++ b/cube/macOS/cubepp/cubepp.cmake
-@@ -74,12 +71,14 @@ set_source_files_properties("${CMAKE_BINARY_DIR}/staging-json/MoltenVK_icd.json"
+@@ -74,12 +74,14 @@ set_source_files_properties("${CMAKE_BINARY_DIR}/staging-json/MoltenVK_icd.json"
# Copy the MoltenVK lib into the bundle.
if(${CMAKE_GENERATOR} MATCHES "^Xcode.*")
add_custom_command(TARGET vkcubepp POST_BUILD
@@ -107,10 +107,10 @@ index bad3c414..b498906d 100644
find_library(COCOA NAMES Cocoa)
diff --git a/vulkaninfo/CMakeLists.txt b/vulkaninfo/CMakeLists.txt
-index fb236a5b..3c8270d4 100644
+index d23dcf89..32aa0ebb 100644
--- a/vulkaninfo/CMakeLists.txt
+++ b/vulkaninfo/CMakeLists.txt
-@@ -139,9 +139,4 @@ elseif(APPLE)
+@@ -136,9 +136,5 @@ elseif(APPLE)
add_definitions(-DVK_USE_PLATFORM_MACOS_MVK -DVK_USE_PLATFORM_METAL_EXT)
endif()
@@ -119,37 +119,5 @@ index fb236a5b..3c8270d4 100644
-else()
- install(TARGETS vulkaninfo RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-endif()
--
+install(TARGETS vulkaninfo RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
-diff --git a/vulkaninfo/macOS/vulkaninfo.cmake b/vulkaninfo/macOS/vulkaninfo.cmake
-index 9614530e..56af3b89 100644
---- a/vulkaninfo/macOS/vulkaninfo.cmake
-+++ b/vulkaninfo/macOS/vulkaninfo.cmake
-@@ -48,26 +48,4 @@ set_source_files_properties(${CMAKE_BINARY_DIR}/staging-json/MoltenVK_icd.json
- MACOSX_PACKAGE_LOCATION
- "Resources/vulkan/icd.d")
--# Xcode projects need some extra help with what would be install steps.
--if(${CMAKE_GENERATOR} MATCHES "^Xcode.*")
-- add_custom_command(TARGET vulkaninfo-bundle POST_BUILD
-- COMMAND ${CMAKE_COMMAND} -E copy "${MOLTENVK_DIR}/MoltenVK/dylib/macOS/libMoltenVK.dylib"
-- ${CMAKE_CURRENT_BINARY_DIR}/$/vulkaninfo.app/Contents/Frameworks/libMoltenVK.dylib
-- DEPENDS vulkan)
--else()
-- add_custom_command(TARGET vulkaninfo-bundle POST_BUILD
-- COMMAND ${CMAKE_COMMAND} -E copy "${MOLTENVK_DIR}/MoltenVK/dylib/macOS/libMoltenVK.dylib"
-- ${CMAKE_CURRENT_BINARY_DIR}/vulkaninfo.app/Contents/Frameworks/libMoltenVK.dylib
-- DEPENDS vulkan)
--endif()
--
--# Keep RPATH so fixup_bundle can use it to find libraries
--set_target_properties(vulkaninfo-bundle PROPERTIES INSTALL_RPATH_USE_LINK_PATH TRUE)
--install(TARGETS vulkaninfo-bundle BUNDLE DESTINATION "vulkaninfo")
--# Fix up the library search path in the executable to find (loader) libraries in the bundle. When fixup_bundle() is passed a bundle
--# in the first argument, it looks at the Info.plist file to determine the BundleExecutable. In this case, the executable is a
--# script, which can't be fixed up. Instead pass it the explicit name of the executable.
--install(CODE "
-- include(BundleUtilities)
-- fixup_bundle(\${CMAKE_INSTALL_PREFIX}/vulkaninfo/vulkaninfo.app/Contents/MacOS/vulkaninfo \"\" \"${Vulkan_LIBRARY_DIR}\")
-- ")
-+install(TARGETS vulkaninfo-bundle BUNDLE DESTINATION "Applications")
diff --git a/pkgs/tools/inputmethods/input-remapper/default.nix b/pkgs/tools/inputmethods/input-remapper/default.nix
index c69416076832a..092901e08c30e 100644
--- a/pkgs/tools/inputmethods/input-remapper/default.nix
+++ b/pkgs/tools/inputmethods/input-remapper/default.nix
@@ -45,11 +45,6 @@ in
hash = "sha256-KPQLgXSonuOgphagYN2JN+CMIpmjTIPUTCqOPDk0UYU=";
};
- # Fixes error
- # Couldn’t recognize the image file format for file "*.svg"
- # at startup, see https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
postPatch = ''
# fix FHS paths
substituteInPlace inputremapper/configs/data.py \
diff --git a/pkgs/tools/misc/ethtool/default.nix b/pkgs/tools/misc/ethtool/default.nix
index 5ebbbe1e118b4..08424a37d5f93 100644
--- a/pkgs/tools/misc/ethtool/default.nix
+++ b/pkgs/tools/misc/ethtool/default.nix
@@ -8,11 +8,11 @@
stdenv.mkDerivation rec {
pname = "ethtool";
- version = "6.0";
+ version = "6.1";
src = fetchurl {
url = "mirror://kernel/software/network/${pname}/${pname}-${version}.tar.xz";
- sha256 = "sha256-1URsk95XDOaPOx6mnb+hL8/Wf8GYl/ZV0/GCMeK4GNY=";
+ sha256 = "sha256-xB/Igf+lpAQy0t2CnrRMZKSd7kgucWuqz5Jixk2qj5A=";
};
nativeBuildInputs = [
diff --git a/pkgs/tools/misc/file/default.nix b/pkgs/tools/misc/file/default.nix
index 03be0c8b3be38..2edba63c1723a 100644
--- a/pkgs/tools/misc/file/default.nix
+++ b/pkgs/tools/misc/file/default.nix
@@ -7,16 +7,23 @@
stdenv.mkDerivation rec {
pname = "file";
- version = "5.43";
+ version = "5.44";
src = fetchurl {
urls = [
"https://astron.com/pub/file/${pname}-${version}.tar.gz"
"https://distfiles.macports.org/file/${pname}-${version}.tar.gz"
];
- sha256 = "sha256-jIAV6Rrg6NAyHZTHgjmJLvnbxwxK3gAIwOlYlKv7GZE=";
+ sha256 = "sha256-N1HH+6jbyDHLjXzIr/IQNUWbjOUVXviwiAon0ChHXzs=";
};
+ patches = [
+ # Backport fix to identification for pyzip files.
+ # Needed for strip-nondeterminism.
+ # https://salsa.debian.org/reproducible-builds/strip-nondeterminism/-/issues/20
+ ./pyzip.patch
+ ];
+
strictDeps = true;
enableParallelBuilding = true;
diff --git a/pkgs/tools/misc/file/pyzip.patch b/pkgs/tools/misc/file/pyzip.patch
new file mode 100644
index 0000000000000..57f9e7ef8b64e
--- /dev/null
+++ b/pkgs/tools/misc/file/pyzip.patch
@@ -0,0 +1,36 @@
+From dc71304b3b1fd2ed5f7098d59fb7f6ef10cfdc85 Mon Sep 17 00:00:00 2001
+From: Christos Zoulas
+Date: Sat, 31 Dec 2022 20:24:08 +0000
+Subject: [PATCH] pyzip improvements (FC Stegerman)
+
+---
+ magic/Magdir/archive | 9 +++++++--
+ 1 file changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/magic/Magdir/archive b/magic/Magdir/archive
+index a706556d5..d58201e69 100644
+--- a/magic/Magdir/archive
++++ b/magic/Magdir/archive
+@@ -1,5 +1,5 @@
+ #------------------------------------------------------------------------------
+-# $File: archive,v 1.179 2022/12/21 15:50:59 christos Exp $
++# $File: archive,v 1.180 2022/12/31 20:24:08 christos Exp $
+ # archive: file(1) magic for archive formats (see also "msdos" for self-
+ # extracting compressed archives)
+ #
+@@ -1876,9 +1876,14 @@
+ # https://en.wikipedia.org/wiki/ZIP_(file_format)#End_of_central_directory_record_(EOCD)
+ # by Michal Gorny
+ -2 uleshort 0
+->&-22 string PK\005\006 Zip archive, with extra data prepended
++>&-22 string PK\005\006
++# without #!
++>>0 string !#! Zip archive, with extra data prepended
+ !:mime application/zip
+ !:ext zip/cbz
++# with #!
++>>0 string/w #!\ a
++>>>&-1 string/T x %s script executable (Zip archive)
+
+ # ACE archive (from http://www.wotsit.org/download.asp?f=ace)
+ # by Stefan `Sec` Zehl
diff --git a/pkgs/tools/misc/gaphor/default.nix b/pkgs/tools/misc/gaphor/default.nix
index 95d9f911273cf..a97b887f1caaf 100644
--- a/pkgs/tools/misc/gaphor/default.nix
+++ b/pkgs/tools/misc/gaphor/default.nix
@@ -37,11 +37,7 @@ buildPythonApplication rec {
wrapGAppsHook
];
- # Setting gobject-introspection on booth nativeBuildInputs and
- # buildInputs because of #56943. This recognizes pango, avoiding
- # a "ValueError: Namespace PangoCairo not available".
buildInputs = [
- gobject-introspection
gtksourceview4
pango
];
diff --git a/pkgs/tools/misc/ipxe/default.nix b/pkgs/tools/misc/ipxe/default.nix
index 65c88eac4e880..c3a0c5aa906d4 100644
--- a/pkgs/tools/misc/ipxe/default.nix
+++ b/pkgs/tools/misc/ipxe/default.nix
@@ -48,16 +48,6 @@ stdenv.mkDerivation rec {
substituteInPlace src/util/genfsimg --replace " syslinux " " true "
''; # calling syslinux on a FAT image isn't going to work
- # Workaround '-idirafter' ordering bug in staging-next:
- # https://github.com/NixOS/nixpkgs/pull/210004
- # where libc '-idirafter' gets added after user's idirafter and
- # breaks.
- # TODO(trofi): remove it in staging once fixed in cc-wrapper.
- preConfigure = ''
- export NIX_CFLAGS_COMPILE_BEFORE_${lib.replaceStrings ["-" "."] ["_" "_"] buildPackages.stdenv.hostPlatform.config}=$(< ${buildPackages.stdenv.cc}/nix-support/libc-cflags)
- export NIX_CFLAGS_COMPILE_BEFORE_${lib.replaceStrings ["-" "."] ["_" "_"] stdenv.hostPlatform.config}=$(< ${stdenv.cc}/nix-support/libc-cflags)
- '';
-
# not possible due to assembler code
hardeningDisable = [ "pic" "stackprotector" ];
diff --git a/pkgs/tools/misc/lockfile-progs/default.nix b/pkgs/tools/misc/lockfile-progs/default.nix
index e245a05182dad..8fdee47befbf7 100644
--- a/pkgs/tools/misc/lockfile-progs/default.nix
+++ b/pkgs/tools/misc/lockfile-progs/default.nix
@@ -11,6 +11,11 @@ stdenv.mkDerivation rec {
buildInputs = [ liblockfile ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=format-overflow"
+ ];
+
installPhase = ''
runHook preInstall
mkdir -p $out/bin $out/man/man1
diff --git a/pkgs/tools/misc/mpdscribble/default.nix b/pkgs/tools/misc/mpdscribble/default.nix
index dc446d3f0a199..46bf31ed667ed 100644
--- a/pkgs/tools/misc/mpdscribble/default.nix
+++ b/pkgs/tools/misc/mpdscribble/default.nix
@@ -28,6 +28,10 @@ stdenv.mkDerivation rec {
sha256 = "sha256-3wLfQvbwx+OFrCl5vMV7Zps4e4iEYFhqPiVCo5hDqgw=";
})];
+ postPatch = ''
+ sed '1i#include ' -i src/Log.cxx # gcc12
+ '';
+
nativeBuildInputs = [ pkg-config meson ninja ];
buildInputs = [
libmpdclient
diff --git a/pkgs/tools/misc/trackma/default.nix b/pkgs/tools/misc/trackma/default.nix
index e3d6322b85eb8..855585dde3f81 100644
--- a/pkgs/tools/misc/trackma/default.nix
+++ b/pkgs/tools/misc/trackma/default.nix
@@ -35,10 +35,10 @@ python3.pkgs.buildPythonApplication rec {
};
nativeBuildInputs = [ copyDesktopItems ]
- ++ lib.optionals withGTK [ wrapGAppsHook ]
+ ++ lib.optionals withGTK [ wrapGAppsHook gobject-introspection ]
++ lib.optionals withQT [ qt5.wrapQtAppsHook ];
- buildInputs = lib.optionals withGTK [ glib gobject-introspection gtk3 ];
+ buildInputs = lib.optionals withGTK [ glib gtk3 ];
propagatedBuildInputs = with python3.pkgs; ([ urllib3 ]
++ lib.optionals withQT [ pyqt5 ]
@@ -47,9 +47,6 @@ python3.pkgs.buildPythonApplication rec {
++ lib.optionals stdenv.isLinux [ dbus-python pygobject3 pyinotify ]
++ lib.optionals (withGTK || withQT) [ pillow ]);
- # broken with gobject-introspection setup hook, see https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
dontWrapQtApps = true;
dontWrapGApps = true;
diff --git a/pkgs/tools/misc/wimboot/default.nix b/pkgs/tools/misc/wimboot/default.nix
index 12c411f3ef438..267272b0b664a 100644
--- a/pkgs/tools/misc/wimboot/default.nix
+++ b/pkgs/tools/misc/wimboot/default.nix
@@ -13,18 +13,14 @@ stdenv.mkDerivation rec {
sourceRoot = "source/src";
- # Workaround '-idirafter' ordering bug in staging-next:
- # https://github.com/NixOS/nixpkgs/pull/210004
- # where libc '-idirafter' gets added after user's idirafter and
- # breaks.
- # TODO(trofi): remove it in staging once fixed in cc-wrapper.
- preConfigure = ''
- export NIX_CFLAGS_COMPILE_BEFORE_${lib.replaceStrings ["-" "."] ["_" "_"] stdenv.hostPlatform.config}=$(< ${stdenv.cc}/nix-support/libc-cflags)
- '';
-
buildInputs = [ libbfd zlib libiberty ];
makeFlags = [ "wimboot.x86_64.efi" ];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=array-bounds"
+ ];
+
installPhase = ''
mkdir -p $out/share/wimboot/
cp wimboot.x86_64.efi $out/share/wimboot
diff --git a/pkgs/tools/misc/yafetch/default.nix b/pkgs/tools/misc/yafetch/default.nix
index f55926d0ae39a..4ebaea963c29e 100644
--- a/pkgs/tools/misc/yafetch/default.nix
+++ b/pkgs/tools/misc/yafetch/default.nix
@@ -15,6 +15,8 @@ stdenv.mkDerivation rec {
prePatch = ''
substituteInPlace ./config.h --replace \
"#include \"ascii/gnu.h\"" "#include \"ascii/nixos.h\""
+
+ sed '1i#include ' -i config.h # gcc12
'';
# Fixes installation path
diff --git a/pkgs/tools/networking/dsniff/default.nix b/pkgs/tools/networking/dsniff/default.nix
index 8e641ec83e73e..5d0c92f2bfb58 100644
--- a/pkgs/tools/networking/dsniff/default.nix
+++ b/pkgs/tools/networking/dsniff/default.nix
@@ -60,7 +60,7 @@ in gcc9Stdenv.mkDerivation rec {
nativeBuildInputs = [ autoreconfHook rpcsvc-proto ];
buildInputs = [ glib pcap libtirpc libnsl ];
- NIX_CFLAGS_LINK = "-lglib-2.0 -lpthread -ldl -ltirpc";
+ NIX_CFLAGS_LINK = "-lglib-2.0 -lpthread -ltirpc";
NIX_CFLAGS_COMPILE = [ "-I${libtirpc.dev}/include/tirpc" ];
postPatch = ''
for patch in debian/patches/*.patch; do
diff --git a/pkgs/tools/networking/ip2unix/default.nix b/pkgs/tools/networking/ip2unix/default.nix
index c4c03cae3a7f2..fabbbb40e7a70 100644
--- a/pkgs/tools/networking/ip2unix/default.nix
+++ b/pkgs/tools/networking/ip2unix/default.nix
@@ -14,6 +14,10 @@ stdenv.mkDerivation rec {
sha256 = "1pl8ayadxb0zzh5s26yschkjhr1xffbzzv347m88f9y0jv34d24r";
};
+ postPatch = ''
+ sed '1i#include ' -i src/dynports/dynports.cc # gcc12
+ '';
+
nativeBuildInputs = [
meson ninja pkg-config asciidoc libxslt.bin docbook_xml_dtd_45 docbook_xsl
libxml2.bin docbook5 python3Packages.pytest python3Packages.pytest-timeout
diff --git a/pkgs/tools/networking/modemmanager/default.nix b/pkgs/tools/networking/modemmanager/default.nix
index 01c70f3bf3f58..326e710752155 100644
--- a/pkgs/tools/networking/modemmanager/default.nix
+++ b/pkgs/tools/networking/modemmanager/default.nix
@@ -1,38 +1,77 @@
-{ lib, stdenv, fetchurl
-, glib, udev, libgudev, polkit, ppp, gettext, pkg-config, python3
-, libmbim, libqmi, systemd, vala, gobject-introspection, dbus
+{ lib
+, stdenv
+, fetchFromGitLab
+, glib
+, udev
+, libgudev
+, polkit
+, ppp
+, gettext
+, pkg-config
+, libxslt
+, python3
+, libmbim
+, libqmi
+, systemd
+, bash-completion
+, meson
+, ninja
+, vala
+, gobject-introspection
+, dbus
}:
stdenv.mkDerivation rec {
pname = "modemmanager";
- version = "1.18.12";
+ version = "1.20.4";
- src = fetchurl {
- url = "https://www.freedesktop.org/software/ModemManager/ModemManager-${version}.tar.xz";
- sha256 = "sha256-tGTkkl2VWmyobdCGFudjsmrkbX/Tfb4oFnjjQGWx5DA=";
+ src = fetchFromGitLab {
+ domain = "gitlab.freedesktop.org";
+ owner = "mobile-broadband";
+ repo = "ModemManager";
+ rev = version;
+ hash = "sha256-OWP23EQ7a8rghhV7AC9yinCxRI0xwcntB5dl9XtgK6M=";
};
- nativeBuildInputs = [ vala gobject-introspection gettext pkg-config ];
+ nativeBuildInputs = [
+ meson
+ ninja
+ vala
+ gobject-introspection
+ gettext
+ pkg-config
+ libxslt
+ ];
- buildInputs = [ glib udev libgudev polkit ppp libmbim libqmi systemd ];
+ buildInputs = [
+ glib
+ udev
+ libgudev
+ polkit
+ ppp
+ libmbim
+ libqmi
+ systemd
+ bash-completion
+ dbus
+ ];
nativeInstallCheckInputs = [
- python3 python3.pkgs.dbus-python python3.pkgs.pygobject3
+ python3
+ python3.pkgs.dbus-python
+ python3.pkgs.pygobject3
];
- configureFlags = [
- "--with-polkit"
- "--with-udev-base-dir=${placeholder "out"}/lib/udev"
- "--with-dbus-sys-dir=${placeholder "out"}/share/dbus-1/system.d"
- "--with-systemdsystemunitdir=${placeholder "out"}/etc/systemd/system"
+ mesonFlags = [
+ "-Dudevdir=${placeholder "out"}/lib/udev"
"--sysconfdir=/etc"
"--localstatedir=/var"
- "--with-systemd-suspend-resume"
- "--with-systemd-journal"
+ "-Dvapi=true"
];
postPatch = ''
- patchShebangs tools/test-modemmanager-service.py
+ patchShebangs \
+ tools/test-modemmanager-service.py
'';
# In Nixpkgs g-ir-scanner is patched to produce absolute paths, and
@@ -47,8 +86,6 @@ stdenv.mkDerivation rec {
'';
installCheckTarget = "check";
- enableParallelBuilding = true;
-
meta = with lib; {
description = "WWAN modem manager, part of NetworkManager";
homepage = "https://www.freedesktop.org/wiki/Software/ModemManager/";
diff --git a/pkgs/tools/networking/networkmanager/default.nix b/pkgs/tools/networking/networkmanager/default.nix
index 03c205f2d647e..5cd15525da72e 100644
--- a/pkgs/tools/networking/networkmanager/default.nix
+++ b/pkgs/tools/networking/networkmanager/default.nix
@@ -58,11 +58,11 @@ let
in
stdenv.mkDerivation rec {
pname = "networkmanager";
- version = "1.40.6";
+ version = "1.40.12";
src = fetchurl {
url = "mirror://gnome/sources/NetworkManager/${lib.versions.majorMinor version}/NetworkManager-${version}.tar.xz";
- sha256 = "sha256-LwJbLVr33lk7v0fBfk2YorlgjqkKgmD7CAgL6XQ5U04=";
+ sha256 = "sha256-wCJ+BKttAylmLfoKftxGbgQGJek2odjo4CoFM6cRca8=";
};
outputs = [ "out" "dev" "devdoc" "man" "doc" ];
diff --git a/pkgs/tools/networking/ppp/default.nix b/pkgs/tools/networking/ppp/default.nix
index be50397bf1d0a..4238391fdaea0 100644
--- a/pkgs/tools/networking/ppp/default.nix
+++ b/pkgs/tools/networking/ppp/default.nix
@@ -53,6 +53,14 @@ stdenv.mkDerivation rec {
NIX_LDFLAGS = "-lcrypt";
+ # This can probably be removed if version > 2.4.9, as IPX support
+ # has been removed upstream[1]. Just check whether pkgsMusl.ppp
+ # still builds.
+ #
+ # [1]: https://github.com/ppp-project/ppp/commit/c2881a6b71a36d28a89166e82820dc5e711fd775
+ NIX_CFLAGS_COMPILE =
+ lib.optionalString stdenv.hostPlatform.isMusl "-UIPX_CHANGE";
+
installPhase = ''
runHook preInstall
mkdir -p $out/bin
diff --git a/pkgs/tools/networking/tcpdump/default.nix b/pkgs/tools/networking/tcpdump/default.nix
index 73ccdb43fef86..9ccf68aa54370 100644
--- a/pkgs/tools/networking/tcpdump/default.nix
+++ b/pkgs/tools/networking/tcpdump/default.nix
@@ -2,11 +2,11 @@
stdenv.mkDerivation rec {
pname = "tcpdump";
- version = "4.99.1";
+ version = "4.99.3";
src = fetchurl {
- url = "http://www.tcpdump.org/release/${pname}-${version}.tar.gz";
- sha256 = "sha256-ebNphfsnAxRmGNh8Ss3j4Gi5HFU/uT8CGjN/F1/RDr4=";
+ url = "http://www.tcpdump.org/release/tcpdump-${version}.tar.gz";
+ sha256 = "sha256-rXWm7T3A2XMpRbLlSDy0Hci0tSihaTFeSZxoYZUuc7M=";
};
postPatch = ''
@@ -17,9 +17,7 @@ stdenv.mkDerivation rec {
buildInputs = [ libpcap ];
- configureFlags = lib.optional
- (stdenv.hostPlatform != stdenv.buildPlatform)
- "ac_cv_linux_vers=2";
+ configureFlags = lib.optional (stdenv.hostPlatform != stdenv.buildPlatform) "ac_cv_linux_vers=2";
meta = with lib; {
description = "Network sniffer";
diff --git a/pkgs/tools/networking/tgt/default.nix b/pkgs/tools/networking/tgt/default.nix
index 3d67bbb079322..bf2587d8c6589 100644
--- a/pkgs/tools/networking/tgt/default.nix
+++ b/pkgs/tools/networking/tgt/default.nix
@@ -22,6 +22,11 @@ stdenv.mkDerivation rec {
"SD_NOTIFY=1"
];
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=maybe-uninitialized"
+ ];
+
installFlags = [
"sysconfdir=${placeholder "out"}/etc"
];
diff --git a/pkgs/tools/networking/uqmi/default.nix b/pkgs/tools/networking/uqmi/default.nix
index 17a55d86b9a37..067bc51854ada 100644
--- a/pkgs/tools/networking/uqmi/default.nix
+++ b/pkgs/tools/networking/uqmi/default.nix
@@ -18,6 +18,11 @@ stdenv.mkDerivation {
nativeBuildInputs = [ cmake perl ];
buildInputs = [ libubox json_c ];
+ NIX_CFLAGS_COMPILE = lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12") [
+ # Needed with GCC 12 but breaks on darwin (with clang) or older gcc
+ "-Wno-error=dangling-pointer"
+ ];
+
meta = with lib; {
description = "Tiny QMI command line utility";
homepage = "https://git.openwrt.org/?p=project/uqmi.git;a=summary";
diff --git a/pkgs/tools/security/aflplusplus/default.nix b/pkgs/tools/security/aflplusplus/default.nix
index c25db9e2d3987..7817329f06de8 100644
--- a/pkgs/tools/security/aflplusplus/default.nix
+++ b/pkgs/tools/security/aflplusplus/default.nix
@@ -51,6 +51,11 @@ let
--replace '"clang++"' '"clang++-UNSUPPORTED"'
'';
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=use-after-free"
+ ];
+
makeFlags = [ "PREFIX=$(out)" ];
buildPhase = ''
common="$makeFlags -j$NIX_BUILD_CORES"
diff --git a/pkgs/tools/security/chipsec/default.nix b/pkgs/tools/security/chipsec/default.nix
index edb10f384bdf7..b897fe6187101 100644
--- a/pkgs/tools/security/chipsec/default.nix
+++ b/pkgs/tools/security/chipsec/default.nix
@@ -40,6 +40,11 @@ python3.pkgs.buildPythonApplication rec {
mkdir -p $CHIPSEC_BUILD_LIB/chipsec/helper/linux
'';
+ NIX_CFLAGS_COMPILE = [
+ # Needed with GCC 12
+ "-Wno-error=dangling-pointer"
+ ];
+
preInstall = lib.optionalString withDriver ''
mkdir -p $out/${python3.pkgs.python.sitePackages}/drivers/linux
mv $CHIPSEC_BUILD_LIB/chipsec/helper/linux/chipsec.ko \
diff --git a/pkgs/tools/security/gnome-keysign/default.nix b/pkgs/tools/security/gnome-keysign/default.nix
index 50a1ff98d14f0..f5157fc9e4190 100644
--- a/pkgs/tools/security/gnome-keysign/default.nix
+++ b/pkgs/tools/security/gnome-keysign/default.nix
@@ -67,9 +67,6 @@ python3.pkgs.buildPythonApplication rec {
twisted
];
- # https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
# bunch of linting
doCheck = false;
diff --git a/pkgs/tools/security/gnupg/23.nix b/pkgs/tools/security/gnupg/24.nix
similarity index 87%
rename from pkgs/tools/security/gnupg/23.nix
rename to pkgs/tools/security/gnupg/24.nix
index 0f56c4a8c15b7..c1f2825e8e93c 100644
--- a/pkgs/tools/security/gnupg/23.nix
+++ b/pkgs/tools/security/gnupg/24.nix
@@ -12,11 +12,11 @@ assert guiSupport -> enableMinimal == false;
stdenv.mkDerivation rec {
pname = "gnupg";
- version = "2.3.7";
+ version = "2.4.0";
src = fetchurl {
url = "mirror://gnupg/gnupg/${pname}-${version}.tar.bz2";
- sha256 = "sha256-7hY6X7nsmf/BsY5l+u+NCGgAxXE9FaZyq1fTeZ2oNmk=";
+ sha256 = "sha256-HXkVjdAdmSQx3S4/rLif2slxJ/iXhOosthDGAPsMFIM=";
};
depsBuildBuild = [ buildPackages.stdenv.cc ];
@@ -30,19 +30,13 @@ stdenv.mkDerivation rec {
patches = [
./fix-libusb-include-path.patch
./tests-add-test-cases-for-import-without-uid.patch
- ./allow-import-of-previously-known-keys-even-without-UI.patch
+ # TODO: Refresh patch? Doesn't apply on 2.4.0
+ #./allow-import-of-previously-known-keys-even-without-UI.patch
./accept-subkeys-with-a-good-revocation-but-no-self-sig.patch
# Patch for DoS vuln from https://seclists.org/oss-sec/2022/q3/27
./v3-0001-Disallow-compressed-signatures-and-certificates.patch
- # Fix regression when using YubiKey devices as smart cards.
- # See https://dev.gnupg.org/T6070 for details.
- # Committed upstream, remove this patch when updating to the next release.
- (fetchpatch {
- url = "https://dev.gnupg.org/rGf34b9147eb3070bce80d53febaa564164cd6c977?diff=1";
- sha256 = "sha256-J/PLSz8yiEgtGv+r3BTGTHrikV70AbbHQPo9xbjaHFE=";
- })
];
postPatch = ''
sed -i 's,\(hkps\|https\)://keyserver.ubuntu.com,hkps://keys.openpgp.org,g' configure configure.ac doc/dirmngr.texi doc/gnupg.info-1
diff --git a/pkgs/tools/security/xsser/default.nix b/pkgs/tools/security/xsser/default.nix
index 5028b3c77217b..6c75f2e733f26 100644
--- a/pkgs/tools/security/xsser/default.nix
+++ b/pkgs/tools/security/xsser/default.nix
@@ -22,10 +22,6 @@ buildPythonApplication rec {
substituteInPlace setup.py --replace /usr/share share
'';
- # Temporary fix
- # See https://github.com/NixOS/nixpkgs/issues/56943
- strictDeps = false;
-
nativeBuildInputs = [ wrapGAppsHook gobject-introspection ];
buildInputs = [
diff --git a/pkgs/tools/system/acpica-tools/default.nix b/pkgs/tools/system/acpica-tools/default.nix
index 88f39e8a63e45..98ac2254fb6ea 100644
--- a/pkgs/tools/system/acpica-tools/default.nix
+++ b/pkgs/tools/system/acpica-tools/default.nix
@@ -29,7 +29,11 @@ stdenv.mkDerivation rec {
"iasl"
];
- NIX_CFLAGS_COMPILE = "-O3";
+ NIX_CFLAGS_COMPILE = [
+ "-O3"
+ # Needed with GCC 12
+ "-Wno-dangling-pointer"
+ ];
enableParallelBuilding = true;
diff --git a/pkgs/tools/system/facter/default.nix b/pkgs/tools/system/facter/default.nix
index de4acffa63e4d..0e746b0d07a44 100644
--- a/pkgs/tools/system/facter/default.nix
+++ b/pkgs/tools/system/facter/default.nix
@@ -11,6 +11,10 @@ stdenv.mkDerivation rec {
owner = "puppetlabs";
};
+ postPatch = ''
+ sed '1i#include ' -i lib/src/facts/glib/load_average_resolver.cc # gcc12
+ '';
+
CXXFLAGS = lib.optionalString stdenv.cc.isGNU "-fpermissive -Wno-error=catch-value";
NIX_LDFLAGS = lib.optionalString stdenv.isLinux "-lblkid";
diff --git a/pkgs/tools/system/rocm-smi/default.nix b/pkgs/tools/system/rocm-smi/default.nix
index 47542d25370d1..d7e23a9acb017 100644
--- a/pkgs/tools/system/rocm-smi/default.nix
+++ b/pkgs/tools/system/rocm-smi/default.nix
@@ -17,6 +17,10 @@ stdenv.mkDerivation (finalAttrs: {
hash = "sha256-nkidiDNNU6MGhne9EbYClkODJZw/zZu3LWzlniJKyJE=";
};
+ postPatch = ''
+ sed '1i#include ' -i src/rocm_smi{,_gpu_metrics}.cc # since gcc12 probably
+ '';
+
nativeBuildInputs = [ cmake wrapPython ];
patches = [ ./cmake.patch ];
diff --git a/pkgs/tools/text/groff/default.nix b/pkgs/tools/text/groff/default.nix
index a38251557c090..215f7e7d25b83 100644
--- a/pkgs/tools/text/groff/default.nix
+++ b/pkgs/tools/text/groff/default.nix
@@ -5,6 +5,7 @@
, autoreconfHook
, pkg-config
, texinfo
+, bison
, bash
}:
@@ -51,7 +52,9 @@ stdenv.mkDerivation rec {
'';
strictDeps = true;
- nativeBuildInputs = [ autoreconfHook pkg-config texinfo ];
+ nativeBuildInputs = [ autoreconfHook pkg-config texinfo ]
+ # Required due to the patch that changes .ypp files.
+ ++ lib.optional (stdenv.cc.isClang && lib.versionAtLeast stdenv.cc.version "9") bison;
buildInputs = [ perl bash ]
++ lib.optionals enableGhostscript [ ghostscript ]
++ lib.optionals enableHtml [ psutils netpbm ];
diff --git a/pkgs/tools/text/justify/default.nix b/pkgs/tools/text/justify/default.nix
index 1e18e22db8e25..86de7365663e1 100644
--- a/pkgs/tools/text/justify/default.nix
+++ b/pkgs/tools/text/justify/default.nix
@@ -16,6 +16,10 @@ stdenv.mkDerivation rec {
sha256 = "sha256-406OhJt2Ila/LIhfqJXhbFqFxJJiRyMVI4/VK8Y43kc=";
};
+ postPatch = ''
+ sed '1i#include ' -i src/stringHelper.h # gcc12
+ '';
+
nativeBuildInputs = [ cmake ];
installPhase = ''
diff --git a/pkgs/tools/text/qgrep/default.nix b/pkgs/tools/text/qgrep/default.nix
index 032e9474128ae..4145ec656d20b 100644
--- a/pkgs/tools/text/qgrep/default.nix
+++ b/pkgs/tools/text/qgrep/default.nix
@@ -21,6 +21,11 @@ stdenv.mkDerivation rec {
buildInputs = lib.optionals stdenv.isDarwin [ CoreServices CoreFoundation ];
+ NIX_CFLAGS_COMPILE = lib.optionals (stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "12") [
+ # Needed with GCC 12 but breaks on darwin (with clang) or older gcc
+ "-Wno-error=mismatched-new-delete"
+ ];
+
postPatch = lib.optionalString stdenv.isAarch64 ''
substituteInPlace Makefile \
--replace "-msse2" "" --replace "-DUSE_SSE2" ""
diff --git a/pkgs/tools/text/tab/default.nix b/pkgs/tools/text/tab/default.nix
index 0802f7b983612..0ddd7509c9f1e 100644
--- a/pkgs/tools/text/tab/default.nix
+++ b/pkgs/tools/text/tab/default.nix
@@ -11,6 +11,11 @@ stdenv.mkDerivation rec {
sha256 = "sha256-AhgWeV/ojB8jM16A5ggrOD1YjWfRVcoQbkd3S2bgdyE=";
};
+ # gcc12; see https://github.com/ivan-tkatchev/tab/commit/673bdac998
+ postPatch = ''
+ sed '1i#include ' -i deps.h
+ '';
+
nativeCheckInputs = [ python3 ];
doCheck = !stdenv.isDarwin;
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index 818abd1e36728..6b487197435a4 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -805,6 +805,7 @@ mapAliases ({
libpulseaudio-vanilla = libpulseaudio; # Added 2022-04-20
libqmatrixclient = throw "libqmatrixclient was renamed to libquotient"; # Added 2020-04-09
libqrencode = throw "'libqrencode' has been renamed to/replaced by 'qrencode'"; # Converted to throw 2022-02-22
+ libraw_unstable = throw "'libraw_unstable' has been removed, please use libraw"; # Added 2023-01-30
librdf = lrdf; # Added 2020-03-22
librecad2 = throw "'librecad2' has been renamed to/replaced by 'librecad'"; # Converted to throw 2022-02-22
libressl_3_2 = throw "'libressl_3_2' has reached end-of-life "; # Added 2022-03-19
@@ -1213,6 +1214,7 @@ mapAliases ({
pleroma-otp = pleroma; # Added 2021-07-10
plexpy = throw "'plexpy' has been renamed to/replaced by 'tautulli'"; # Converted to throw 2022-02-22
pltScheme = racket; # just to be sure
+ pmdk = throw "'pmdk' is discontinued, no further support or maintenance is planned by upstream"; # Added 2023-02-06
pmtools = throw "'pmtools' has been renamed to/replaced by 'acpica-tools'"; # Converted to throw 2022-02-22
pocketsphinx = throw "pocketsphinx has been removed: unmaintained"; # Added 2022-04-24
polarssl = throw "'polarssl' has been renamed to/replaced by 'mbedtls'"; # Converted to throw 2022-02-22
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 3d3fb3c564670..b0f0bd890dd27 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -160,14 +160,14 @@ with pkgs;
### BUILD SUPPORT
auditBlasHook = makeSetupHook
- { name = "auto-blas-hook"; deps = [ blas lapack ]; }
+ { name = "auto-blas-hook"; propagatedBuildInputs = [ blas lapack ]; }
../build-support/setup-hooks/audit-blas.sh;
autoreconfHook = callPackage (
{ makeSetupHook, autoconf, automake, gettext, libtool }:
makeSetupHook {
name = "autoreconf-hook";
- deps = [ autoconf automake gettext libtool ];
+ propagatedBuildInputs = [ autoconf automake gettext libtool ];
} ../build-support/setup-hooks/autoreconf.sh
) { };
@@ -184,7 +184,7 @@ with pkgs;
autoPatchelfHook = makeSetupHook {
name = "auto-patchelf-hook";
- deps = [ bintools ];
+ propagatedBuildInputs = [ bintools ];
substitutions = {
pythonInterpreter = "${python3.withPackages (ps: [ ps.pyelftools ])}/bin/python";
autoPatchelfScript = ../build-support/setup-hooks/auto-patchelf.py;
@@ -356,7 +356,7 @@ with pkgs;
gogUnpackHook = makeSetupHook {
name = "gog-unpack-hook";
- deps = [ innoextract file-rename ]; }
+ propagatedBuildInputs = [ innoextract file-rename ]; }
../build-support/setup-hooks/gog-unpack.sh;
buildEnv = callPackage ../build-support/buildenv { }; # not actually a package
@@ -1014,7 +1014,7 @@ with pkgs;
makeShellWrapper = makeSetupHook {
name = "make-shell-wrapper-hook";
- deps = [ dieHook ];
+ propagatedBuildInputs = [ dieHook ];
substitutions = {
# targetPackages.runtimeShell only exists when pkgs == targetPackages (when targetPackages is not __raw)
shell = if targetPackages ? runtimeShell then targetPackages.runtimeShell else throw "makeWrapper/makeShellWrapper must be in nativeBuildInputs";
@@ -1067,7 +1067,7 @@ with pkgs;
shortenPerlShebang = makeSetupHook {
name = "shorten-perl-shebang-hook";
- deps = [ dieHook ];
+ propagatedBuildInputs = [ dieHook ];
} ../build-support/setup-hooks/shorten-perl-shebang.sh;
singularity-tools = callPackage ../build-support/singularity-tools { };
@@ -1119,7 +1119,7 @@ with pkgs;
desktopToDarwinBundle = makeSetupHook {
name = "desktop-to-darwin-bundle-hook";
- deps = [ writeDarwinBundle librsvg imagemagick python3Packages.icnsutil ];
+ propagatedBuildInputs = [ writeDarwinBundle librsvg imagemagick python3Packages.icnsutil ];
} ../build-support/setup-hooks/desktop-to-darwin-bundle.sh;
keepBuildTree = makeSetupHook {
@@ -1132,7 +1132,7 @@ with pkgs;
makeGCOVReport = makeSetupHook {
name = "make-gcov-report-hook";
- deps = [ lcov enableGCOVInstrumentation ];
+ propagatedBuildInputs = [ lcov enableGCOVInstrumentation ];
} ../build-support/setup-hooks/make-coverage-analysis-report.sh;
makeHardcodeGsettingsPatch = callPackage ../build-support/make-hardcode-gsettings-patch { };
@@ -1167,7 +1167,7 @@ with pkgs;
iconConvTools = callPackage ../build-support/icon-conv-tools {};
validatePkgConfig = makeSetupHook
- { name = "validate-pkg-config"; deps = [ findutils pkg-config ]; }
+ { name = "validate-pkg-config"; propagatedBuildInputs = [ findutils pkg-config ]; }
../build-support/setup-hooks/validate-pkg-config.sh;
patchPpdFilesHook = callPackage ../build-support/setup-hooks/patch-ppd-files {};
@@ -1252,7 +1252,6 @@ with pkgs;
arc_unpacker = callPackage ../tools/archivers/arc_unpacker {
boost = boost16x; # checkPhase fails with Boost 1.77
- stdenv = gcc10StdenvCompat;
};
adminer = callPackage ../servers/adminer { };
@@ -2550,7 +2549,7 @@ with pkgs;
writefreely = callPackage ../applications/misc/writefreely { };
- iqueue = callPackage ../development/libraries/iqueue { stdenv = gcc10StdenvCompat; };
+ iqueue = callPackage ../development/libraries/iqueue { };
lifecycled = callPackage ../tools/misc/lifecycled { };
@@ -2940,7 +2939,9 @@ with pkgs;
bcachefs-tools = callPackage ../tools/filesystems/bcachefs-tools { };
- bisq-desktop = callPackage ../applications/blockchains/bisq-desktop { };
+ bisq-desktop = callPackage ../applications/blockchains/bisq-desktop {
+ openjdk11 = openjdk11.override { enableJavaFX = true; };
+ };
bic = callPackage ../development/interpreters/bic { };
@@ -4922,11 +4923,11 @@ with pkgs;
};
hyprland = callPackage ../applications/window-managers/hyprwm/hyprland {
- stdenv = gcc11Stdenv;
+ stdenv = gcc12Stdenv;
};
hyprpaper = callPackage ../applications/window-managers/hyprwm/hyprpaper {
- stdenv = gcc11Stdenv;
+ stdenv = gcc12Stdenv;
};
hysteria = callPackage ../tools/networking/hysteria { };
@@ -5146,7 +5147,9 @@ with pkgs;
merriweather-sans = callPackage ../data/fonts/merriweather-sans { };
- meson = callPackage ../development/tools/build-managers/meson { };
+ meson = callPackage ../development/tools/build-managers/meson {
+ inherit (darwin.apple_sdk.frameworks) Foundation OpenGL AppKit Cocoa;
+ };
# while building documentation meson may want to run binaries for host
# which needs an emulator
@@ -7747,11 +7750,11 @@ with pkgs;
gnupg1orig = callPackage ../tools/security/gnupg/1.nix { };
gnupg1compat = callPackage ../tools/security/gnupg/1compat.nix { };
gnupg1 = gnupg1compat; # use config.packageOverrides if you prefer original gnupg1
- gnupg23 = callPackage ../tools/security/gnupg/23.nix {
+ gnupg24 = callPackage ../tools/security/gnupg/24.nix {
guiSupport = stdenv.isDarwin;
pinentry = if stdenv.isDarwin then pinentry_mac else pinentry-gtk2;
};
- gnupg = gnupg23;
+ gnupg = gnupg24;
gnupg-pkcs11-scd = callPackage ../tools/security/gnupg-pkcs11-scd { };
@@ -14304,7 +14307,7 @@ with pkgs;
num =
if (with stdenv.targetPlatform; isVc4 || libc == "relibc") then 6
else if (stdenv.targetPlatform.isAarch64 && stdenv.isLinux) then 9
- else 11;
+ else 12;
numS = toString num;
in {
gcc = pkgs.${"gcc${numS}"};
@@ -14342,7 +14345,8 @@ with pkgs;
gcc11Stdenv = overrideCC gccStdenv buildPackages.gcc11;
gcc12Stdenv = overrideCC gccStdenv buildPackages.gcc12;
- gcc10StdenvCompat = if stdenv.cc.isGNU && lib.versions.major stdenv.cc.version == "11" then gcc10Stdenv else stdenv;
+ # Meant for packages that fail with newer than gcc10.
+ gcc10StdenvCompat = if stdenv.cc.isGNU && lib.versionAtLeast stdenv.cc.version "11" then gcc10Stdenv else stdenv;
# This is not intended for use in nixpkgs but for providing a faster-running
# compiler to nixpkgs users by building gcc with reproducibility-breaking
@@ -14941,7 +14945,7 @@ with pkgs;
hugs = callPackage ../development/interpreters/hugs { };
- inherit (javaPackages) openjfx11 openjfx15 openjfx17;
+ inherit (javaPackages) openjfx11 openjfx15 openjfx17 openjfx19;
openjfx = openjfx17;
openjdk8-bootstrap = javaPackages.compiler.openjdk8-bootstrap;
@@ -15270,7 +15274,7 @@ with pkgs;
mitama-cpp-result = callPackage ../development/libraries/mitama-cpp-result { };
mitscheme = callPackage ../development/compilers/mit-scheme
- { stdenv = gcc10StdenvCompat; texLive = texlive.combine { inherit (texlive) scheme-small epsf texinfo; }; };
+ { texLive = texlive.combine { inherit (texlive) scheme-small epsf texinfo; }; };
mitschemeX11 = mitscheme.override {
enableX11 = true;
@@ -15650,13 +15654,13 @@ with pkgs;
inherit (darwin) apple_sdk;
};
- rust_1_66 = callPackage ../development/compilers/rust/1_66.nix {
+ rust_1_67 = callPackage ../development/compilers/rust/1_67.nix {
inherit (darwin.apple_sdk.frameworks) CoreFoundation Security SystemConfiguration;
- llvm_14 = llvmPackages_14.libllvm;
+ llvm_15 = llvmPackages_15.libllvm;
# https://github.com/NixOS/nixpkgs/issues/201254
stdenv = if stdenv.isLinux && stdenv.isAarch64 && stdenv.cc.isGNU then gcc11Stdenv else stdenv;
};
- rust = rust_1_66;
+ rust = rust_1_67;
mrustc = callPackage ../development/compilers/mrustc { };
mrustc-minicargo = callPackage ../development/compilers/mrustc/minicargo.nix { };
@@ -15665,8 +15669,8 @@ with pkgs;
openssl = openssl_1_1;
};
- rustPackages_1_66 = rust_1_66.packages.stable;
- rustPackages = rustPackages_1_66;
+ rustPackages_1_67 = rust_1_67.packages.stable;
+ rustPackages = rustPackages_1_67;
inherit (rustPackages) cargo cargo-auditable cargo-auditable-cargo-wrapper clippy rustc rustPlatform;
@@ -17196,13 +17200,9 @@ with pkgs;
libc = preLibcCrossHeaders;
};
- libbfd = callPackage ../development/tools/misc/binutils/libbfd.nix {
- autoreconfHook = buildPackages.autoreconfHook269;
- };
+ libbfd = callPackage ../development/tools/misc/binutils/libbfd.nix { };
- libopcodes = callPackage ../development/tools/misc/binutils/libopcodes.nix {
- autoreconfHook = buildPackages.autoreconfHook269;
- };
+ libopcodes = callPackage ../development/tools/misc/binutils/libopcodes.nix { };
# Held back 2.38 release. Remove once all dependencies are ported to 2.39.
binutils-unwrapped_2_38 = callPackage ../development/tools/misc/binutils/2.38 {
@@ -17534,6 +17534,7 @@ with pkgs;
libgcc = callPackage ../development/libraries/gcc/libgcc {
stdenvNoLibs = gccStdenvNoLibs; # cannot be built with clang it seems
+ gcc = gcc11; # fails to build with gcc12
};
# This is for e.g. LLVM libraries on linux.
@@ -17772,8 +17773,6 @@ with pkgs;
openjdk = openjdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
};
- pmdk = callPackage ../development/libraries/pmdk { };
-
jdepend = callPackage ../development/tools/analysis/jdepend {
jdk = jdk8; # TODO: remove override https://github.com/NixOS/nixpkgs/pull/89731
};
@@ -18794,13 +18793,13 @@ with pkgs;
xcbuild = xcodebuild;
xcbuildHook = makeSetupHook {
name = "xcbuild-hook";
- deps = [ xcbuild ];
+ propagatedBuildInputs = [ xcbuild ];
} ../development/tools/xcbuild/setup-hook.sh ;
# xcbuild with llvm 6
xcbuild6Hook = makeSetupHook {
name = "xcbuild6-hook";
- deps = [ xcodebuild6 ];
+ propagatedBuildInputs = [ xcodebuild6 ];
} ../development/tools/xcbuild/setup-hook.sh ;
xcpretty = callPackage ../development/tools/xcpretty { };
@@ -19553,30 +19552,28 @@ with pkgs;
linbox = callPackage ../development/libraries/linbox { };
- ffmpeg_4-headless = callPackage ../development/libraries/ffmpeg/4.nix {
- inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia VideoToolbox;
-
- sdlSupport = false;
- vdpauSupport = false;
- pulseaudioSupport = false;
- libva = libva-minimal;
- };
-
ffmpeg_4 = callPackage ../development/libraries/ffmpeg/4.nix {
- inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia VideoToolbox;
+ inherit (darwin.apple_sdk.frameworks)
+ Cocoa CoreServices CoreAudio CoreMedia AVFoundation MediaToolbox
+ VideoDecodeAcceleration VideoToolbox;
};
-
- ffmpeg_5-headless = callPackage ../development/libraries/ffmpeg/5.nix {
- inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia VideoToolbox;
-
- sdlSupport = false;
- vdpauSupport = false;
- pulseaudioSupport = false;
- libva = libva-minimal;
+ ffmpeg_4-headless = ffmpeg_4.override {
+ ffmpegVariant = "headless";
+ };
+ ffmpeg_4-full = ffmpeg.override {
+ ffmpegVariant = "full";
};
ffmpeg_5 = callPackage ../development/libraries/ffmpeg/5.nix {
- inherit (darwin.apple_sdk.frameworks) Cocoa CoreMedia VideoToolbox;
+ inherit (darwin.apple_sdk.frameworks)
+ Cocoa CoreServices CoreAudio CoreMedia AVFoundation MediaToolbox
+ VideoDecodeAcceleration VideoToolbox;
+ };
+ ffmpeg_5-headless = ffmpeg_5.override {
+ ffmpegVariant = "headless";
+ };
+ ffmpeg_5-full = ffmpeg_5.override {
+ ffmpegVariant = "full";
};
# Aliases
@@ -19585,26 +19582,8 @@ with pkgs;
# Packages which use ffmpeg as a library, should pin to the relevant major
# version number which the upstream support.
ffmpeg = ffmpeg_4;
-
ffmpeg-headless = ffmpeg_4-headless;
-
- ffmpeg-full = callPackage ../development/libraries/ffmpeg-full {
- svt-av1 = if stdenv.isAarch64 then null else svt-av1;
- rtmpdump = null; # Prefer the built-in RTMP implementation
- # The following need to be fixed on Darwin
- libjack2 = if stdenv.isDarwin then null else libjack2;
- libmodplug = if stdenv.isDarwin then null else libmodplug;
- libmfx = if stdenv.isDarwin then null else intel-media-sdk;
- libpulseaudio = if stdenv.isDarwin then null else libpulseaudio;
- samba = if stdenv.isDarwin then null else samba;
- inherit (darwin.apple_sdk.frameworks)
- Cocoa CoreServices CoreAudio AVFoundation MediaToolbox
- VideoDecodeAcceleration VideoToolbox;
- };
-
- ffmpeg_5-full = ffmpeg-full.override {
- ffmpeg = ffmpeg_5;
- };
+ ffmpeg-full = ffmpeg_4-full;
ffmpegthumbnailer = callPackage ../development/libraries/ffmpegthumbnailer { };
@@ -19667,7 +19646,6 @@ with pkgs;
freeimage = callPackage ../development/libraries/freeimage {
inherit (darwin) autoSignDarwinBinariesHook;
- libraw = libraw_unstable;
};
freetts = callPackage ../development/libraries/freetts {
@@ -20615,7 +20593,7 @@ with pkgs;
lmdbxx = callPackage ../development/libraries/lmdbxx { };
lemon-graph = callPackage ../development/libraries/lemon-graph {
- stdenv = if stdenv.isLinux then gcc11Stdenv else stdenv;
+ stdenv = if stdenv.isLinux then gcc12Stdenv else stdenv;
};
levmar = callPackage ../development/libraries/levmar { };
@@ -22097,7 +22075,7 @@ with pkgs;
memorymapping = callPackage ../development/libraries/memorymapping { };
memorymappingHook = makeSetupHook {
name = "memorymapping-hook";
- deps = [ memorymapping ];
+ propagatedBuildInputs = [ memorymapping ];
} ../development/libraries/memorymapping/setup-hook.sh;
memray = callPackage ../development/tools/memray { };
@@ -22105,7 +22083,7 @@ with pkgs;
memstream = callPackage ../development/libraries/memstream { };
memstreamHook = makeSetupHook {
name = "memstream-hook";
- deps = [ memstream ];
+ propagatedBuildInputs = [ memstream ];
} ../development/libraries/memstream/setup-hook.sh;
menu-cache = callPackage ../development/libraries/menu-cache { };
@@ -23630,7 +23608,10 @@ with pkgs;
vte = callPackage ../development/libraries/vte {
# Needs GCC ≥10 but aarch64 defaults to GCC 9.
- stdenv = clangStdenv;
+ stdenv =
+ if stdenv.isLinux && stdenv.isAarch64 && stdenv.cc.isGNU
+ then clangStdenv
+ else stdenv;
};
vte-gtk4 = vte.override {
@@ -25446,8 +25427,7 @@ with pkgs;
inherit (buildPackages.darwin) bootstrap_cmds;
udev = if stdenv.isLinux then udev else null;
libdrm = if stdenv.isLinux then libdrm else null;
- abiCompat = config.xorg.abiCompat # `config` because we have no `xorg.override`
- or (if stdenv.isDarwin then "1.18" else null); # 1.19 needs fixing on Darwin
+ abiCompat = config.xorg.abiCompat or null; # `config` because we have no `xorg.override`
};
generatedPackages = lib.callPackageWith __splicedPackages ../servers/x11/xorg/default.nix {};
@@ -25837,7 +25817,7 @@ with pkgs;
};
btop = callPackage ../tools/system/btop {
- stdenv = gcc11Stdenv;
+ stdenv = gcc12Stdenv;
};
nmon = callPackage ../os-specific/linux/nmon { };
@@ -26106,7 +26086,6 @@ with pkgs;
};
libraw = callPackage ../development/libraries/libraw { };
- libraw_unstable = callPackage ../development/libraries/libraw/unstable.nix { };
libraw1394 = callPackage ../development/libraries/libraw1394 { };
@@ -26440,7 +26419,7 @@ with pkgs;
pipework = callPackage ../os-specific/linux/pipework { };
- pktgen = callPackage ../os-specific/linux/pktgen { stdenv = gcc10StdenvCompat; };
+ pktgen = callPackage ../os-specific/linux/pktgen { };
plymouth = callPackage ../os-specific/linux/plymouth { };
@@ -26616,7 +26595,7 @@ with pkgs;
# break some cyclic dependencies
util-linux = util-linuxMinimal;
# provide a super minimal gnupg used for systemd-machined
- gnupg = callPackage ../tools/security/gnupg/23.nix {
+ gnupg = gnupg.override {
enableMinimal = true;
guiSupport = false;
};
@@ -31819,7 +31798,9 @@ with pkgs;
pdfdiff = callPackage ../applications/misc/pdfdiff { };
- pdfsam-basic = callPackage ../applications/misc/pdfsam-basic { };
+ pdfsam-basic = callPackage ../applications/misc/pdfsam-basic {
+ jdk19 = openjdk19.override { enableJavaFX = true; };
+ };
mupdf = callPackage ../applications/misc/mupdf { };
mupdf_1_17 = callPackage ../applications/misc/mupdf/1.17.nix { };
diff --git a/pkgs/top-level/cuda-packages.nix b/pkgs/top-level/cuda-packages.nix
index c57e486406e1f..2044d74cab79d 100644
--- a/pkgs/top-level/cuda-packages.nix
+++ b/pkgs/top-level/cuda-packages.nix
@@ -50,7 +50,7 @@ let
autoAddOpenGLRunpathHook = final.callPackage ( { makeSetupHook, addOpenGLRunpath }:
makeSetupHook {
name = "auto-add-opengl-runpath-hook";
- deps = [
+ propagatedBuildInputs = [
addOpenGLRunpath
];
} ../development/compilers/cudatoolkit/auto-add-opengl-runpath-hook.sh
diff --git a/pkgs/top-level/darwin-packages.nix b/pkgs/top-level/darwin-packages.nix
index b067f5cbbc1e6..4ee606ae5e76c 100644
--- a/pkgs/top-level/darwin-packages.nix
+++ b/pkgs/top-level/darwin-packages.nix
@@ -121,7 +121,7 @@ impure-cmds // appleSourcePackages // chooseLibs // {
checkReexportsHook = pkgs.makeSetupHook {
name = "darwin-check-reexports-hook";
- deps = [ pkgs.darwin.print-reexports ];
+ propagatedBuildInputs = [ pkgs.darwin.print-reexports ];
} ../os-specific/darwin/print-reexports/setup-hook.sh;
sigtool = callPackage ../os-specific/darwin/sigtool { };
@@ -142,7 +142,7 @@ impure-cmds // appleSourcePackages // chooseLibs // {
autoSignDarwinBinariesHook = pkgs.makeSetupHook {
name = "auto-sign-darwin-binaries-hook";
- deps = [ self.signingUtils ];
+ propagatedBuildInputs = [ self.signingUtils ];
} ../os-specific/darwin/signing-utils/auto-sign-hook.sh;
maloader = callPackage ../os-specific/darwin/maloader {
diff --git a/pkgs/top-level/python2-packages.nix b/pkgs/top-level/python2-packages.nix
index 83a90a2a5e6d9..a79dc31ed9dd9 100644
--- a/pkgs/top-level/python2-packages.nix
+++ b/pkgs/top-level/python2-packages.nix
@@ -83,6 +83,8 @@ with self; with super; {
doCheck = false; # circular dependency with pytest
});
+ wheel = callPackage ../development/python2-modules/wheel { };
+
zeek = disabled super.zeek;
zipp = callPackage ../development/python2-modules/zipp { };