From 4f5cf5f5fa684e9cb5d1417a6a654c976609098f Mon Sep 17 00:00:00 2001 From: Damocles Date: Mon, 4 May 2026 23:12:34 +0200 Subject: [PATCH] plugin: switch from ld.gold to mold (cxx-qt docs recommend moving away from gold) --- nix/plugin.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/nix/plugin.nix b/nix/plugin.nix index 331c0e3..374a61a 100644 --- a/nix/plugin.nix +++ b/nix/plugin.nix @@ -1,6 +1,7 @@ { lib, craneLib, + mold, pkg-config, qt6, writeShellScript, @@ -67,6 +68,7 @@ let nativeBuildInputs = [ pkg-config + mold qt6.qtbase qt6.qtdeclarative ]; @@ -79,8 +81,12 @@ let # qt6.qtbase's setup hook overrides QMAKE after derivation attrs are set, # so re-assert it in preBuild which runs after all setup hooks. + # Force mold as the linker (cxx-qt book deprecates ld.gold). Setting via + # CARGO_TARGET_*_LINKER + RUSTFLAGS is the only path that survives nixpkgs' + # cc-wrapper - `-fuse-ld=` from build.rs gets eaten by the wrapper. preBuild = '' export QMAKE=${qmakeWrapper} + export RUSTFLAGS="-C link-arg=-fuse-ld=mold ''${RUSTFLAGS:-}" ''; };