From d14319bdd95a69083286d578101a7648cb0e8531 Mon Sep 17 00:00:00 2001 From: Herwig Hochleitner Date: Wed, 21 May 2025 14:55:09 +0200 Subject: [PATCH 1/4] openscad-unstable: 2025-02-07 -> 2025-05-17 --- pkgs/by-name/op/openscad-unstable/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/op/openscad-unstable/package.nix b/pkgs/by-name/op/openscad-unstable/package.nix index 280f4035a5ce..1f12ce91bc38 100644 --- a/pkgs/by-name/op/openscad-unstable/package.nix +++ b/pkgs/by-name/op/openscad-unstable/package.nix @@ -46,12 +46,12 @@ # clang consume much less RAM than GCC clangStdenv.mkDerivation rec { pname = "openscad-unstable"; - version = "2025-02-07"; + version = "2025-05-17"; src = fetchFromGitHub { owner = "openscad"; repo = "openscad"; - rev = "1308a7d476facb466bf9fae1e77666c35c8e3c8f"; - hash = "sha256-+0cQ5mgRzOPfP6nl/rfC/hnw3V7yvGJCyLU8hOmlGOc="; + rev = "c76900f9a62fcb98c503dcc5ccce380db8ac564b"; + hash = "sha256-R2/8T5+BugVTRIUVLaz6SxKQ1YrtyAGbiE4K1Fuc6bg="; # Unfortunately, we can't selectively fetch submodules. It would be good # to see that we don't accidentally depend on it. fetchSubmodules = true; # Only really need sanitizers-cmake and MCAD From 2f9dc9ff3c8f4abff18ecebb51d3ee6ffaa2dc5e Mon Sep 17 00:00:00 2001 From: Herwig Hochleitner Date: Thu, 29 May 2025 14:52:17 +0200 Subject: [PATCH 2/4] openscad-unstable: dependency tbb_2021_11 -> tbb_2022_0 --- pkgs/by-name/op/openscad-unstable/package.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/op/openscad-unstable/package.nix b/pkgs/by-name/op/openscad-unstable/package.nix index 1f12ce91bc38..7041cf20bdd3 100644 --- a/pkgs/by-name/op/openscad-unstable/package.nix +++ b/pkgs/by-name/op/openscad-unstable/package.nix @@ -34,7 +34,7 @@ mesa, mpfr, python3, - tbb_2021_11, + tbb_2022_0, wayland, wayland-protocols, wrapGAppsHook3, @@ -81,7 +81,7 @@ clangStdenv.mkDerivation rec { [ clipper2 glm - tbb_2021_11 + tbb_2022_0 mimalloc boost cairo From 1e14d2c7658451c29dfb69d971d0d3f35ee4e7e3 Mon Sep 17 00:00:00 2001 From: Herwig Hochleitner Date: Thu, 29 May 2025 14:53:24 +0200 Subject: [PATCH 3/4] openscad-unstable: use builtin manifold --- pkgs/by-name/op/openscad-unstable/package.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/op/openscad-unstable/package.nix b/pkgs/by-name/op/openscad-unstable/package.nix index 7041cf20bdd3..eda4bed9d527 100644 --- a/pkgs/by-name/op/openscad-unstable/package.nix +++ b/pkgs/by-name/op/openscad-unstable/package.nix @@ -30,7 +30,6 @@ libsForQt5, libspnav, libzip, - manifold, mesa, mpfr, python3, @@ -99,7 +98,6 @@ clangStdenv.mkDerivation rec { lib3mf libspnav libzip - manifold mpfr qscintilla qtbase @@ -119,7 +117,9 @@ clangStdenv.mkDerivation rec { "-DEXPERIMENTAL=ON" # enable experimental options "-DSNAPSHOT=ON" # nightly icons "-DUSE_BUILTIN_OPENCSG=OFF" - "-DUSE_BUILTIN_MANIFOLD=OFF" + # use builtin manifold: 3.1.0 doesn't pass tests, builtin is 7c8fbe1, between 3.0.1 and 3.1.0 + # FIXME revisit on version update + "-DUSE_BUILTIN_MANIFOLD=ON" "-DUSE_BUILTIN_CLIPPER2=OFF" "-DOPENSCAD_VERSION=\"${builtins.replaceStrings [ "-" ] [ "." ] version}\"" "-DCMAKE_UNITY_BUILD=OFF" # broken compile with unity From eed3d892a9bcc183ed69931b95c09552fe559883 Mon Sep 17 00:00:00 2001 From: Herwig Hochleitner Date: Thu, 29 May 2025 14:53:48 +0200 Subject: [PATCH 4/4] openscad-unstable: remove unused submodules --- pkgs/by-name/op/openscad-unstable/package.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/by-name/op/openscad-unstable/package.nix b/pkgs/by-name/op/openscad-unstable/package.nix index eda4bed9d527..8b14c7e8cfef 100644 --- a/pkgs/by-name/op/openscad-unstable/package.nix +++ b/pkgs/by-name/op/openscad-unstable/package.nix @@ -51,9 +51,7 @@ clangStdenv.mkDerivation rec { repo = "openscad"; rev = "c76900f9a62fcb98c503dcc5ccce380db8ac564b"; hash = "sha256-R2/8T5+BugVTRIUVLaz6SxKQ1YrtyAGbiE4K1Fuc6bg="; - # Unfortunately, we can't selectively fetch submodules. It would be good - # to see that we don't accidentally depend on it. - fetchSubmodules = true; # Only really need sanitizers-cmake and MCAD + fetchSubmodules = true; # Only really need sanitizers-cmake and MCAD and manifold }; patches = [ ./test.diff ]; @@ -135,6 +133,14 @@ clangStdenv.mkDerivation rec { # tests rely on sysprof which is not available on darwin doCheck = !stdenv.hostPlatform.isDarwin; + # remove unused submodules, to ensure correct dependency usage + postUnpack = '' + ( cd $sourceRoot + for m in submodules/OpenCSG submodules/mimalloc submodules/Clipper2 + do rm -r $m + done ) + ''; + postInstall = lib.optionalString stdenv.hostPlatform.isDarwin '' mkdir $out/Applications mv $out/bin/*.app $out/Applications