From c5e5d15483c5346cf28696699304c65d65b55ccc Mon Sep 17 00:00:00 2001 From: Marcin Serwin Date: Sat, 19 Jul 2025 17:49:12 +0200 Subject: [PATCH 1/3] sfml: 3.0.0 -> 3.0.1 Signed-off-by: Marcin Serwin --- pkgs/by-name/sf/sfml/package.nix | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sf/sfml/package.nix b/pkgs/by-name/sf/sfml/package.nix index 0d5babc71467..9584ab28376a 100644 --- a/pkgs/by-name/sf/sfml/package.nix +++ b/pkgs/by-name/sf/sfml/package.nix @@ -2,6 +2,7 @@ lib, stdenv, fetchFromGitHub, + fetchpatch2, # nativeBuildInputs cmake, @@ -24,15 +25,23 @@ stdenv.mkDerivation (finalAttrs: { pname = "sfml"; - version = "3.0.0"; + version = "3.0.1"; src = fetchFromGitHub { owner = "SFML"; repo = "SFML"; tag = finalAttrs.version; - hash = "sha256-e6x/L2D3eT6F/DBLQDZ+j0XD5NL9RalWZA8kcm9lZ3g="; + hash = "sha256-yTNoDHcBRzk270QHjSFVpjFKm2+uVvmVLg6XlAppwYk="; }; + patches = [ + (fetchpatch2 { + name = "Fix-pkg-config-when-SFML_PKGCONFIG_INSTALL_DIR-is-unset.patch"; + url = "https://github.com/SFML/SFML/commit/a87763becbc4672b38f1021418ed94caa0f6540a.patch?full_index=1"; + hash = "sha256-tJmXTdhwtWq6XfUPBzw47yTrc6EzwmSiVj9n6jQwHig="; + }) + ]; + nativeBuildInputs = [ cmake ]; buildInputs = [ From c99769fee08b34394e052c9c485dfd19735fddf5 Mon Sep 17 00:00:00 2001 From: Marcin Serwin Date: Sat, 19 Jul 2025 17:49:12 +0200 Subject: [PATCH 2/3] sfml: build shared libraries Signed-off-by: Marcin Serwin --- pkgs/by-name/sf/sfml/package.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/pkgs/by-name/sf/sfml/package.nix b/pkgs/by-name/sf/sfml/package.nix index 9584ab28376a..83fa4e56705e 100644 --- a/pkgs/by-name/sf/sfml/package.nix +++ b/pkgs/by-name/sf/sfml/package.nix @@ -63,6 +63,7 @@ stdenv.mkDerivation (finalAttrs: { ]; cmakeFlags = [ + (lib.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic)) (lib.cmakeBool "SFML_INSTALL_PKGCONFIG_FILES" true) (lib.cmakeFeature "SFML_MISC_INSTALL_PREFIX" "share/SFML") (lib.cmakeBool "SFML_BUILD_FRAMEWORKS" false) From 50e30b4b6902ef861480f8f50383d3244909ae73 Mon Sep 17 00:00:00 2001 From: Marcin Serwin Date: Sat, 19 Jul 2025 17:49:12 +0200 Subject: [PATCH 3/3] sfml: fix audio Signed-off-by: Marcin Serwin --- pkgs/by-name/sf/sfml/package.nix | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/sf/sfml/package.nix b/pkgs/by-name/sf/sfml/package.nix index 83fa4e56705e..dc0c5b71da2e 100644 --- a/pkgs/by-name/sf/sfml/package.nix +++ b/pkgs/by-name/sf/sfml/package.nix @@ -13,7 +13,6 @@ glew, libjpeg, libvorbis, - openal, udev, libXi, libX11, @@ -21,6 +20,12 @@ libXrandr, libXrender, xcbutilimage, + + # miniaudio + alsa-lib, + libjack2, + libpulseaudio, + sndio, }: stdenv.mkDerivation (finalAttrs: { @@ -50,7 +55,6 @@ stdenv.mkDerivation (finalAttrs: { glew libjpeg libvorbis - openal ] ++ lib.optional stdenv.hostPlatform.isLinux udev ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ @@ -62,12 +66,25 @@ stdenv.mkDerivation (finalAttrs: { xcbutilimage ]; + # We rely on RUNPATH + dontPatchELF = true; + cmakeFlags = [ (lib.cmakeBool "BUILD_SHARED_LIBS" (!stdenv.hostPlatform.isStatic)) (lib.cmakeBool "SFML_INSTALL_PKGCONFIG_FILES" true) (lib.cmakeFeature "SFML_MISC_INSTALL_PREFIX" "share/SFML") (lib.cmakeBool "SFML_BUILD_FRAMEWORKS" false) (lib.cmakeBool "SFML_USE_SYSTEM_DEPS" true) + + # FIXME: Unvendor miniaudio and move these deps there + (lib.cmakeFeature "CMAKE_INSTALL_RPATH" ( + lib.makeLibraryPath [ + alsa-lib + libjack2 + libpulseaudio + sndio + ] + )) ]; meta = {