flake.lib.buildNixpkgsConfig: fix build

This commit is contained in:
2025-12-02 20:21:23 +08:00
parent 60bd4d124c
commit f83e3a9599
4 changed files with 75 additions and 29 deletions

View File

@@ -38,7 +38,9 @@ in platformConfig //
overlays =
[
inputs.topInputs.aagl.overlays.default
inputs.topInputs.nur-xddxdd.overlays.inSubTree
# xddxdd overlay use prev instead of final, we import it manually
(final: prev: { svp = final.callPackage "${inputs.topInputs.nur-xddxdd}/pkgs/uncategorized/svp"
{ sources = final.callPackage "${inputs.topInputs.nur-xddxdd}/_sources/generated.nix" {}; }; })
inputs.topInputs.buildproxy.overlays.default
inputs.topInputs.nix4vscode.overlays.default
inputs.topInputs.bscpkgs.overlays.default
@@ -125,41 +127,49 @@ in platformConfig //
in builtins.listToAttrs (builtins.map
(name: { inherit name; value = packages name; }) (builtins.attrNames source))
)
# // (inputs.lib.optionalAttrs (prev.stdenv.hostPlatform.avx512Support)
# { gsl = prev.gsl.overrideAttrs { doCheck = false; }; })
# // (inputs.lib.optionalAttrs (prev.stdenv.hostPlatform.sse4_1Support)
# {
# frei0r = final.genericPackages.frei0r;
# valkey = final.genericPackages.valkey;
# })
# // (inputs.lib.optionalAttrs (nixpkgs.march != null)
# {
# assimp = prev.assimp.override { stdenv = final.genericPackages.stdenv; };
// (inputs.lib.optionalAttrs (prev.stdenv.hostPlatform.avx512Support)
{ gsl = prev.gsl.overrideAttrs { doCheck = false; }; })
// (inputs.lib.optionalAttrs (prev.stdenv.hostPlatform.sse4_1Support)
{
frei0r = final.genericPackages.frei0r;
# valkey = final.genericPackages.valkey;
})
// (inputs.lib.optionalAttrs (nixpkgs.march != null)
{
ffmpeg_8 = prev.ffmpeg_8.overrideAttrs (prev: { patches = prev.patches or [] ++ [ ./ffmpeg.patch ]; });
ffmpeg_8-headless = prev.ffmpeg_8-headless.overrideAttrs
(prev: { patches = prev.patches or [] ++ [ ./ffmpeg.patch ]; });
ffmpeg_8-full = prev.ffmpeg_8-full.overrideAttrs
(prev: { patches = prev.patches or [] ++ [ ./ffmpeg.patch ]; });
ffmpeg = final.ffmpeg_8;
ffmpeg-headless = final.ffmpeg_8-headless;
ffmpeg-full = final.ffmpeg_8-full;
assimp = prev.assimp.override { stdenv = final.genericPackages.stdenv; };
# redis = prev.redis.overrideAttrs (prev: { doCheck = false; });
# wannier90 = prev.wannier90.overrideAttrs { buildFlags = [ "dynlib" ]; };
# xen = prev.xen.overrideAttrs (prev: { patches = prev.patches or [] ++ [ ./xen.patch ]; });
# lib2geom = prev.lib2geom.overrideAttrs (prev: { doCheck = false; });
lib2geom = prev.lib2geom.overrideAttrs (prev: { doCheck = false; });
# libreoffice-qt6-still = prev.libreoffice-qt6-still.override (prev:
# { unwrapped = prev.unwrapped.overrideAttrs (prev: { postPatch = prev.postPatch or "" +
# ''
# sed -i '/CPPUNIT_TEST.testDubiousArrayFormulasFODS/d' sc/qa/unit/functions_array.cxx
# '';});});
# opencolorio = prev.opencolorio.overrideAttrs (prev: { doCheck = false; });
# rapidjson = prev.rapidjson.overrideAttrs { doCheck = false; };
opencolorio = prev.opencolorio.overrideAttrs (prev: { doCheck = false; });
rapidjson = prev.rapidjson.overrideAttrs { doCheck = false; };
# embree = prev.embree.override { stdenv = final.genericPackages.stdenv; };
# simde = prev.simde.override { stdenv = final.genericPackages.stdenv; };
# pythonPackagesExtensions = prev.pythonPackagesExtensions or [] ++ [(final: prev:
# {
# picosvg = prev.picosvg.overridePythonAttrs { doCheck = false; };
# aiocache = prev.aiocache.overridePythonAttrs { doCheck = false; };
# numpy =
# if inputs.lib.hasInfix "bar" prev.numpy.outPath then prev.numpy.overridePythonAttrs
# (prev:{ disabledTests = prev.disabledTests or [] ++ [ "test_nowrap_private_proceedures" ]; })
# else prev.numpy;
# })];
# ctranslate2 = prev.ctranslate2.overrideAttrs (prev:
# { cmakeFlags = prev.cmakeFlags or [] ++ [ "-DENABLE_CPU_DISPATCH=OFF" ]; });
pythonPackagesExtensions = prev.pythonPackagesExtensions or [] ++ [(final: prev:
{
picosvg = prev.picosvg.overridePythonAttrs { doCheck = false; };
# aiocache = prev.aiocache.overridePythonAttrs { doCheck = false; };
# numpy =
# if inputs.lib.hasInfix "bar" prev.numpy.outPath then prev.numpy.overridePythonAttrs
# (prev:{ disabledTests = prev.disabledTests or [] ++ [ "test_nowrap_private_proceedures" ]; })
# else prev.numpy;
})];
ctranslate2 = prev.ctranslate2.overrideAttrs (prev:
{ cmakeFlags = prev.cmakeFlags or [] ++ [ "-DENABLE_CPU_DISPATCH=OFF" ]; });
# # valkey = final.redis;
# })
})
)];
}

View File

@@ -0,0 +1,36 @@
Index: FFmpeg/libavcodec/huffyuvdsp.c
===================================================================
--- FFmpeg.orig/libavcodec/huffyuvdsp.c
+++ FFmpeg/libavcodec/huffyuvdsp.c
@@ -16,6 +16,13 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
+// GCC Vectorize with AVX will break huffyuv unit tests.
+#if defined(__GNUC__) && !defined(__clang__)
+ #if (__GNUC__ > 6)
+ #pragma GCC optimize ("no-tree-vectorize")
+ #endif
+#endif
+
#include <stdint.h>
#include "config.h"
Index: FFmpeg/libavcodec/huffyuvenc.c
===================================================================
--- FFmpeg.orig/libavcodec/huffyuvenc.c
+++ FFmpeg/libavcodec/huffyuvenc.c
@@ -28,6 +28,13 @@
* huffyuv encoder
*/
+ // GCC Vectorize with AVX will break huffyuv unit tests.
+#if defined(__GNUC__) && !defined(__clang__)
+ #if (__GNUC__ > 6)
+ #pragma GCC optimize ("no-tree-vectorize")
+ #endif
+#endif
+
#include "config_components.h"
#include "avcodec.h"