From 5a3155ec8617e838d83ad84a5d1ba5c6dcd20851 Mon Sep 17 00:00:00 2001 From: Emily Date: Fri, 8 Aug 2025 18:22:54 +0100 Subject: [PATCH 1/9] llvmPackages_13.*: unpin GCC This was added to LLVM 6, 8, 9, 10, 13, and 14 (but no others) in 695fe131c264a3cc244c9b07c71335f07bb92452, and then I guess gradually got removed from all of them except 13. Anyway, I successfully built `llvmPackages_13.stdenv` with the default GCC. --- pkgs/development/compilers/llvm/default.nix | 8 -------- 1 file changed, 8 deletions(-) diff --git a/pkgs/development/compilers/llvm/default.nix b/pkgs/development/compilers/llvm/default.nix index 41c1db1c66eb..49c1e4950e20 100644 --- a/pkgs/development/compilers/llvm/default.nix +++ b/pkgs/development/compilers/llvm/default.nix @@ -5,7 +5,6 @@ buildPackages, targetPackages, stdenv, - gcc12Stdenv, pkgs, recurseIntoAttrs, # This is the default binutils, but with *this* version of LLD rather @@ -81,13 +80,6 @@ let ; } // packageSetArgs # Allow overrides. - // { - stdenv = - if (lib.versions.major release_version == "13" && stdenv.cc.cc.isGNU or false) then - gcc12Stdenv - else - stdenv; # does not build with gcc13 - } ) ) ); From 12011af9d57b688ad07fff733ac718edeaf8467b Mon Sep 17 00:00:00 2001 From: Emily Date: Fri, 8 Aug 2025 18:22:54 +0100 Subject: [PATCH 2/9] bazel_6: unpin GCC --- pkgs/top-level/all-packages.nix | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e3c60cda341a..c782ed75601f 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6813,13 +6813,7 @@ with pkgs; inherit (darwin) sigtool; buildJdk = jdk11_headless; runJdk = jdk11_headless; - stdenv = - if stdenv.cc.isClang then - llvmPackages_17.stdenv - else if stdenv.cc.isGNU then - gcc12Stdenv - else - stdenv; + stdenv = if stdenv.cc.isClang then llvmPackages_17.stdenv else stdenv; bazel_self = bazel_6; }; From 2844e6aff46e820eb6902fb2a513e1a500273ef5 Mon Sep 17 00:00:00 2001 From: Emily Date: Fri, 8 Aug 2025 18:22:54 +0100 Subject: [PATCH 3/9] texlive: unpin GCC Seems to build fine with the default now. --- pkgs/tools/typesetting/tex/texlive/default.nix | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/pkgs/tools/typesetting/tex/texlive/default.nix b/pkgs/tools/typesetting/tex/texlive/default.nix index 36435d58ff42..0e59e542ae4d 100644 --- a/pkgs/tools/typesetting/tex/texlive/default.nix +++ b/pkgs/tools/typesetting/tex/texlive/default.nix @@ -5,8 +5,7 @@ */ { lib, - #, stdenv - gcc12Stdenv, + stdenv, fetchpatch, fetchurl, runCommand, @@ -45,9 +44,6 @@ recurseIntoAttrs, nixfmt, }: -let - stdenv = gcc12Stdenv; -in let # various binaries (compiled) bin = callPackage ./bin.nix { From c2f81c1b2af211b51596737e8bc7f70bcac5939e Mon Sep 17 00:00:00 2001 From: Emily Date: Fri, 8 Aug 2025 18:22:54 +0100 Subject: [PATCH 4/9] dmd: unpin GCC Seems to build fine with the default GCC. --- pkgs/top-level/all-packages.nix | 9 --------- 1 file changed, 9 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index c782ed75601f..1d3486cd8025 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2751,15 +2751,6 @@ with pkgs; diffutils = callPackage ../tools/text/diffutils { }; - dmd = callPackage ../by-name/dm/dmd/package.nix ( - { - } - // lib.optionalAttrs stdenv.hostPlatform.isLinux { - # https://github.com/NixOS/nixpkgs/pull/206907#issuecomment-1527034123 - stdenv = gcc11Stdenv; - } - ); - dotnetfx35 = callPackage ../development/libraries/dotnetfx35 { }; dotnetfx40 = callPackage ../development/libraries/dotnetfx40 { }; From 3ba3a7a5f237aa58e90bb3e832b368137bb7a1e9 Mon Sep 17 00:00:00 2001 From: Emily Date: Sun, 17 Aug 2025 00:57:51 +0100 Subject: [PATCH 5/9] amdvlk: disable ray tracing support for `i686-linux` --- pkgs/by-name/am/amdvlk/package.nix | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/pkgs/by-name/am/amdvlk/package.nix b/pkgs/by-name/am/amdvlk/package.nix index d743655d1eba..8b6d97d3bcae 100644 --- a/pkgs/by-name/am/amdvlk/package.nix +++ b/pkgs/by-name/am/amdvlk/package.nix @@ -85,6 +85,20 @@ stdenv.mkDerivation (finalAttrs: { cmakeDir = "../drivers/xgl"; + cmakeFlags = [ + # There is some incredibly cursed issue with + # `directx-shader-compiler` flagging up compiler errors only on + # `i686-linux` and only when it has been compiled with a recent + # GCC. Since few 32‐bit games are going to use ray tracing anyway, + # we just disable it for now. Arch has done this since 2022. + # + # See: + # * + # * + # * + (lib.cmakeBool "VKI_RAY_TRACING" (!(stdenv.hostPlatform.isx86 && stdenv.hostPlatform.is32bit))) + ]; + installPhase = '' runHook preInstall From 0a7836def9b2d9d863b25a9532e16a167b844193 Mon Sep 17 00:00:00 2001 From: Emily Date: Fri, 8 Aug 2025 18:22:54 +0100 Subject: [PATCH 6/9] directx-shader-compiler: unpin GCC Seems to build fine now. --- pkgs/top-level/all-packages.nix | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1d3486cd8025..78df92f7e61b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -10018,10 +10018,7 @@ with pkgs; diod = callPackage ../servers/diod { lua = lua5_1; }; - directx-shader-compiler = callPackage ../tools/graphics/directx-shader-compiler { - # https://github.com/NixOS/nixpkgs/issues/216294 - stdenv = if stdenv.cc.isGNU && stdenv.hostPlatform.isi686 then gcc11Stdenv else stdenv; - }; + directx-shader-compiler = callPackage ../tools/graphics/directx-shader-compiler { }; dodgy = with python3Packages; toPythonApplication dodgy; From 5b6ae0b1b4fc02e8daa7a79ab34ebeb5937e1c4e Mon Sep 17 00:00:00 2001 From: Emily Date: Fri, 8 Aug 2025 18:22:54 +0100 Subject: [PATCH 7/9] python313Packages.itk: bump GCC to 13 --- pkgs/top-level/python-packages.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index bb1a3d6e0f12..c3010bcfc31b 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7227,7 +7227,7 @@ self: super: with self; { enablePython = true; enableRtk = false; stdenv = - if stdenv.cc.isGNU then pkgs.stdenvAdapters.useLibsFrom stdenv pkgs.gcc12Stdenv else stdenv; + if stdenv.cc.isGNU then pkgs.stdenvAdapters.useLibsFrom stdenv pkgs.gcc13Stdenv else stdenv; } ); From 3d3e80e3309ade2152f1f4375a23ead6eb7932d8 Mon Sep 17 00:00:00 2001 From: Emily Date: Fri, 8 Aug 2025 18:22:54 +0100 Subject: [PATCH 8/9] falcon: unstable-2018-10-23 -> 0-unstable-2023-11-19 Fixes the build with the default GCC. --- pkgs/development/interpreters/falcon/default.nix | 11 ++++------- pkgs/top-level/all-packages.nix | 4 +--- 2 files changed, 5 insertions(+), 10 deletions(-) diff --git a/pkgs/development/interpreters/falcon/default.nix b/pkgs/development/interpreters/falcon/default.nix index 4acd72081967..ac78505923ac 100644 --- a/pkgs/development/interpreters/falcon/default.nix +++ b/pkgs/development/interpreters/falcon/default.nix @@ -11,19 +11,15 @@ stdenv.mkDerivation { pname = "falcon"; - version = "unstable-2018-10-23"; + version = "0-unstable-2023-11-19"; src = fetchFromGitHub { owner = "falconpl"; repo = "falcon"; - rev = "637e2d5cd950a874496042993c02ab7d17c1b688"; - sha256 = "iCyvvZJjXb1CR396EJ6GiP6d4e7iAc6QQlAOQoAfehg="; + rev = "fc403c6e8c1f3d8c2a5a6ebce5db6f1b3e355808"; + hash = "sha256-0yLhwDVFNbfiW23hNxrvItCCkyaOvEbFSg1ZQuJvhIs="; }; - # -Wnarrowing is enabled by default in recent GCC versions, - # causing compilation to fail. - env.NIX_CFLAGS_COMPILE = "-Wno-narrowing"; - nativeBuildInputs = [ cmake pkg-config @@ -39,5 +35,6 @@ stdenv.mkDerivation { license = licenses.gpl2Only; maintainers = with maintainers; [ pSub ]; platforms = with platforms; unix; + broken = stdenv.cc.isClang; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 78df92f7e61b..ff5fb126d395 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -5475,9 +5475,7 @@ with pkgs; haxePackages = recurseIntoAttrs (callPackage ./haxe-packages.nix { }); inherit (haxePackages) hxcpp; - falcon = callPackage ../development/interpreters/falcon { - stdenv = gcc10Stdenv; - }; + falcon = callPackage ../development/interpreters/falcon { }; dotnetPackages = recurseIntoAttrs (callPackage ./dotnet-packages.nix { }); From 177adfa166396fd5073c6f66563ef8f88ad5fd30 Mon Sep 17 00:00:00 2001 From: Emily Date: Fri, 8 Aug 2025 18:22:54 +0100 Subject: [PATCH 9/9] =?UTF-8?q?chow-tape-model:=20patch=20for=20GCC=20?= =?UTF-8?q?=E2=89=A5=2012?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ch/chow-tape-model/fix-juce-gcc-12.patch | 14 ++++++++++++++ pkgs/by-name/ch/chow-tape-model/package.nix | 12 ++++++------ 2 files changed, 20 insertions(+), 6 deletions(-) create mode 100644 pkgs/by-name/ch/chow-tape-model/fix-juce-gcc-12.patch diff --git a/pkgs/by-name/ch/chow-tape-model/fix-juce-gcc-12.patch b/pkgs/by-name/ch/chow-tape-model/fix-juce-gcc-12.patch new file mode 100644 index 000000000000..3f18f07d4012 --- /dev/null +++ b/pkgs/by-name/ch/chow-tape-model/fix-juce-gcc-12.patch @@ -0,0 +1,14 @@ +Submodule Plugin/modules/JUCE contains modified content +diff --git a/Plugin/modules/JUCE/modules/juce_gui_basics/windows/juce_ComponentPeer.h b/Plugin/modules/JUCE/modules/juce_gui_basics/windows/juce_ComponentPeer.h +index 06c0a729d..119f146b8 100644 +--- a/Plugin/modules/JUCE/modules/juce_gui_basics/windows/juce_ComponentPeer.h ++++ b/Plugin/modules/JUCE/modules/juce_gui_basics/windows/juce_ComponentPeer.h +@@ -23,6 +23,8 @@ + ============================================================================== + */ + ++#include ++ + namespace juce + { + diff --git a/pkgs/by-name/ch/chow-tape-model/package.nix b/pkgs/by-name/ch/chow-tape-model/package.nix index 75da391e7914..b9f5a5eb3a3a 100644 --- a/pkgs/by-name/ch/chow-tape-model/package.nix +++ b/pkgs/by-name/ch/chow-tape-model/package.nix @@ -32,14 +32,9 @@ pkg-config, python3, sqlite, - gcc11Stdenv, + stdenv, webkitgtk_4_0, }: -let - # JUCE version in submodules is incompatible with GCC12 - # See here: https://forum.juce.com/t/build-fails-on-fedora-wrong-c-version/50902/2 - stdenv = gcc11Stdenv; -in stdenv.mkDerivation (finalAttrs: { pname = "chow-tape-model"; version = "2.11.4"; @@ -52,6 +47,11 @@ stdenv.mkDerivation (finalAttrs: { fetchSubmodules = true; }; + patches = [ + # Fix the old JUCE submodule for GCC ≥ 12 + ./fix-juce-gcc-12.patch + ]; + nativeBuildInputs = [ pkg-config cmake