From 19d240b6197c0f5ce84814e2faaa4bb4ededf97b Mon Sep 17 00:00:00 2001 From: Sam <30577766+Samasaur1@users.noreply.github.com> Date: Thu, 18 Sep 2025 11:40:55 -0700 Subject: [PATCH] swiftPackages.{sourcekit-lsp,swift-format}: link libdispatch.so In my experience this solution seems to be necessary on almost all if not all Swift packages on Linux --- pkgs/development/compilers/swift/sourcekit-lsp/default.nix | 5 +++++ pkgs/development/compilers/swift/swift-format/default.nix | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/pkgs/development/compilers/swift/sourcekit-lsp/default.nix b/pkgs/development/compilers/swift/sourcekit-lsp/default.nix index 5e4a3b664c85..3ea077854cf0 100644 --- a/pkgs/development/compilers/swift/sourcekit-lsp/default.nix +++ b/pkgs/development/compilers/swift/sourcekit-lsp/default.nix @@ -7,6 +7,7 @@ swift, swiftpm, swiftpm2nix, + Dispatch, Foundation, XCTest, sqlite, @@ -40,6 +41,10 @@ stdenv.mkDerivation { ncursesInput ]; + env.LD_LIBRARY_PATH = lib.optionalString stdenv.hostPlatform.isLinux ( + lib.makeLibraryPath [ Dispatch ] + ); + configurePhase = generated.configure + '' swiftpmMakeMutable indexstore-db patch -p1 -d .build/checkouts/indexstore-db -i ${./patches/indexstore-db-macos-target.patch} diff --git a/pkgs/development/compilers/swift/swift-format/default.nix b/pkgs/development/compilers/swift/swift-format/default.nix index fbdd4efa08e3..f1d435a6cca5 100644 --- a/pkgs/development/compilers/swift/swift-format/default.nix +++ b/pkgs/development/compilers/swift/swift-format/default.nix @@ -6,6 +6,7 @@ swift, swiftpm, swiftpm2nix, + Dispatch, Foundation, }: let @@ -24,6 +25,10 @@ stdenv.mkDerivation { ]; buildInputs = [ Foundation ]; + env.LD_LIBRARY_PATH = lib.optionalString stdenv.hostPlatform.isLinux ( + lib.makeLibraryPath [ Dispatch ] + ); + configurePhase = generated.configure; # We only install the swift-format binary, so don't need the other products.