From 30e93c9f3c045de3d28514aeba11fd84bbd6b460 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9-Patrick=20Bubel?= Date: Sat, 29 Jul 2023 10:48:06 +0200 Subject: [PATCH] super-slicer: use patched wxGTK31 instead of wxGTK32 Fixes super-slicer segmentation fault on startup --- pkgs/applications/misc/prusa-slicer/default.nix | 4 +++- .../misc/prusa-slicer/super-slicer.nix | 16 ++++++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/pkgs/applications/misc/prusa-slicer/default.nix b/pkgs/applications/misc/prusa-slicer/default.nix index 132e7edcc394..6b1f95d0bd08 100644 --- a/pkgs/applications/misc/prusa-slicer/default.nix +++ b/pkgs/applications/misc/prusa-slicer/default.nix @@ -35,6 +35,7 @@ , xorg , fetchpatch , withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd, systemd +, wxGTK-override ? null }: let wxGTK-prusa = wxGTK32.overrideAttrs (old: rec { @@ -64,6 +65,7 @@ let openvdb_tbb_2021_8 = openvdb.overrideAttrs (old: rec { buildInputs = [ openexr boost tbb_2021_8 jemalloc c-blosc ilmbase ]; }); + wxGTK-override' = if wxGTK-override == null then wxGTK-prusa else wxGTK-override; in stdenv.mkDerivation rec { pname = "prusa-slicer"; @@ -99,7 +101,7 @@ stdenv.mkDerivation rec { pcre qhull tbb_2021_8 - wxGTK-prusa + wxGTK-override' xorg.libX11 ] ++ lib.optionals withSystemd [ systemd diff --git a/pkgs/applications/misc/prusa-slicer/super-slicer.nix b/pkgs/applications/misc/prusa-slicer/super-slicer.nix index 147f3484f18f..6f071521d9bf 100644 --- a/pkgs/applications/misc/prusa-slicer/super-slicer.nix +++ b/pkgs/applications/misc/prusa-slicer/super-slicer.nix @@ -1,4 +1,4 @@ -{ lib, fetchFromGitHub, fetchpatch, makeDesktopItem, prusa-slicer }: +{ lib, fetchFromGitHub, fetchpatch, makeDesktopItem, wxGTK31, prusa-slicer }: let appname = "SuperSlicer"; pname = "super-slicer"; @@ -83,6 +83,18 @@ let passthru = allVersions; }; - allVersions = builtins.mapAttrs (_name: version: (prusa-slicer.overrideAttrs (override version))) versions; + wxGTK31-prusa = wxGTK31.overrideAttrs (old: rec { + pname = "wxwidgets-prusa3d-patched"; + version = "3.1.4"; + src = fetchFromGitHub { + owner = "prusa3d"; + repo = "wxWidgets"; + rev = "489f6118256853cf5b299d595868641938566cdb"; + hash = "sha256-xGL5I2+bPjmZGSTYe1L7VAmvLHbwd934o/cxg9baEvQ="; + fetchSubmodules = true; + }; + }); + prusa-slicer-wxGTK-override = prusa-slicer.override { wxGTK-override = wxGTK31-prusa; }; + allVersions = builtins.mapAttrs (_name: version: (prusa-slicer-wxGTK-override.overrideAttrs (override version))) versions; in allVersions.stable