From 751b80c68ced726bca1abf56dd16ef844d8e58a0 Mon Sep 17 00:00:00 2001 From: Harinn Date: Wed, 20 May 2026 13:18:45 +0700 Subject: [PATCH 1/3] bambu-studio: fix various issues - https://github.com/NixOS/nixpkgs/issues/440951 - https://github.com/NixOS/nixpkgs/issues/498307 - https://github.com/NixOS/nixpkgs/issues/498311 --- pkgs/by-name/ba/bambu-studio/package.nix | 35 ++++++++++++++++++++++-- 1 file changed, 33 insertions(+), 2 deletions(-) diff --git a/pkgs/by-name/ba/bambu-studio/package.nix b/pkgs/by-name/ba/bambu-studio/package.nix index de869f8f2f52..06055c2555cf 100644 --- a/pkgs/by-name/ba/bambu-studio/package.nix +++ b/pkgs/by-name/ba/bambu-studio/package.nix @@ -8,6 +8,7 @@ pkg-config, wrapGAppsHook3, boost183, + cacert, cereal, cgal_5, curl, @@ -15,7 +16,6 @@ eigen, expat, ffmpeg, - gcc-unwrapped, glew, glfw, glib, @@ -26,7 +26,10 @@ gtk3, hicolor-icon-theme, libpng, + libsecret, + makeFontsConf, mpfr, + nanum, nlopt, opencascade-occt_7_6, openvdb, @@ -39,6 +42,9 @@ wxwidgets_3_1, libx11, withSystemd ? stdenv.hostPlatform.isLinux, + # 3D viewport blank on NVIDIA proprietary GL; routes through Mesa + zink. + # https://github.com/NixOS/nixpkgs/issues/498311 + withNvidiaGLWorkaround ? false, }: let wxGTK' = @@ -48,11 +54,17 @@ let withWebKit = true; }).overrideAttrs (old: { + buildInputs = old.buildInputs ++ [ libsecret ]; configureFlags = old.configureFlags ++ [ # Disable noisy debug dialogs "--enable-debug=no" + "--enable-secretstore" ]; }); + + fontsConf = makeFontsConf { fontDirectories = [ nanum ]; }; + + caBundle = "${cacert}/etc/ssl/certs/ca-bundle.crt"; in stdenv.mkDerivation (finalAttrs: { pname = "bambu-studio"; @@ -82,7 +94,6 @@ stdenv.mkDerivation (finalAttrs: { eigen expat ffmpeg - gcc-unwrapped glew glfw glib @@ -95,6 +106,7 @@ stdenv.mkDerivation (finalAttrs: { gtk3 hicolor-icon-theme libpng + libsecret mpfr nlopt opencascade-occt_7_6 @@ -178,6 +190,25 @@ stdenv.mkDerivation (finalAttrs: { # Fixes intermittent crash # The upstream setup links in glew statically --prefix LD_PRELOAD : "${glew.out}/lib/libGLEW.so" + + # plugin libcurl + main HTTPS need explicit CA bundle. + # https://github.com/NixOS/nixpkgs/issues/498307 + --set-default SSL_CERT_FILE ${caBundle} + --set-default CURL_CA_BUNDLE ${caBundle} + + # WebKit OAuth callback fails with DMA-BUF compositing. + # https://github.com/NixOS/nixpkgs/issues/498307 + --set WEBKIT_DISABLE_COMPOSITING_MODE 1 + --set WEBKIT_DISABLE_DMABUF_RENDERER 1 + + --set FONTCONFIG_FILE "${fontsConf}" + + ${lib.optionalString withNvidiaGLWorkaround '' + --set __GLX_VENDOR_LIBRARY_NAME mesa + --set __EGL_VENDOR_LIBRARY_FILENAMES /run/opengl-driver/share/glvnd/egl_vendor.d/50_mesa.json + --set MESA_LOADER_DRIVER_OVERRIDE zink + --set GALLIUM_DRIVER zink + ''} ) ''; From c134e4840f95bb86c021720eb3bd51b9fee6220a Mon Sep 17 00:00:00 2001 From: Harinn Date: Wed, 20 May 2026 13:24:52 +0700 Subject: [PATCH 2/3] bambu-studio: use lib.cmake* helpers in cmakeFlags --- pkgs/by-name/ba/bambu-studio/package.nix | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/pkgs/by-name/ba/bambu-studio/package.nix b/pkgs/by-name/ba/bambu-studio/package.nix index 06055c2555cf..c13da10b6792 100644 --- a/pkgs/by-name/ba/bambu-studio/package.nix +++ b/pkgs/by-name/ba/bambu-studio/package.nix @@ -168,19 +168,19 @@ stdenv.mkDerivation (finalAttrs: { ''; cmakeFlags = [ - "-DSLIC3R_STATIC=0" - "-DSLIC3R_FHS=1" - "-DSLIC3R_GTK=3" + (lib.cmakeBool "SLIC3R_STATIC" false) + (lib.cmakeBool "SLIC3R_FHS" true) + (lib.cmakeFeature "SLIC3R_GTK" "3") # Skips installing ffmpeg, since we BYO. - "-DFLATPAK=1" + (lib.cmakeBool "FLATPAK" true) - # BambuStudio-specific - "-DBBL_RELEASE_TO_PUBLIC=1" - "-DBBL_INTERNAL_TESTING=0" - "-DDEP_WX_GTK3=ON" - "-DSLIC3R_BUILD_TESTS=0" - "-DCMAKE_CXX_FLAGS=-DBOOST_LOG_DYN_LINK" + # Substituted into `#define BBL_x @value@`; must be integer literals. + (lib.cmakeFeature "BBL_RELEASE_TO_PUBLIC" "1") + (lib.cmakeFeature "BBL_INTERNAL_TESTING" "0") + (lib.cmakeBool "DEP_WX_GTK3" true) + (lib.cmakeBool "SLIC3R_BUILD_TESTS" false) + (lib.cmakeFeature "CMAKE_CXX_FLAGS" "-DBOOST_LOG_DYN_LINK") ]; preFixup = '' From 0fb1e5d791c54fdf7b376b5571eb3381647e8ae7 Mon Sep 17 00:00:00 2001 From: Harinn Date: Wed, 20 May 2026 13:37:08 +0700 Subject: [PATCH 3/3] bambu-studio: drop unused binutils and pcre --- pkgs/by-name/ba/bambu-studio/package.nix | 4 ---- 1 file changed, 4 deletions(-) diff --git a/pkgs/by-name/ba/bambu-studio/package.nix b/pkgs/by-name/ba/bambu-studio/package.nix index c13da10b6792..dfaa31959556 100644 --- a/pkgs/by-name/ba/bambu-studio/package.nix +++ b/pkgs/by-name/ba/bambu-studio/package.nix @@ -1,7 +1,6 @@ { stdenv, lib, - binutils, fetchFromGitHub, cmake, ninja, @@ -35,7 +34,6 @@ openvdb, openexr, opencv, - pcre, systemd, onetbb, webkitgtk_4_1, @@ -85,7 +83,6 @@ stdenv.mkDerivation (finalAttrs: { ]; buildInputs = [ - binutils boost183 cereal cgal_5 @@ -112,7 +109,6 @@ stdenv.mkDerivation (finalAttrs: { opencascade-occt_7_6 openexr openvdb - pcre onetbb webkitgtk_4_1 wxGTK'