about summary refs log tree commit diff
path: root/pkgs/applications/graphics/freecad/0001-NIXOS-don-t-ignore-PYTHONPATH.patch
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/graphics/freecad/0001-NIXOS-don-t-ignore-PYTHONPATH.patch')
-rw-r--r--pkgs/applications/graphics/freecad/0001-NIXOS-don-t-ignore-PYTHONPATH.patch61
1 files changed, 0 insertions, 61 deletions
diff --git a/pkgs/applications/graphics/freecad/0001-NIXOS-don-t-ignore-PYTHONPATH.patch b/pkgs/applications/graphics/freecad/0001-NIXOS-don-t-ignore-PYTHONPATH.patch
deleted file mode 100644
index 27e5fb81b8d0..000000000000
--- a/pkgs/applications/graphics/freecad/0001-NIXOS-don-t-ignore-PYTHONPATH.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From c4f452ef6ae083ed21095313582f6d1bd775cbf3 Mon Sep 17 00:00:00 2001
-From: Andreas Rammhold <andreas@rammhold.de>
-Date: Thu, 2 Nov 2023 17:32:07 +0100
-Subject: [PATCH] NIXOS: don't ignore PYTHONPATH
-
-On NixOS or rather within nixpkgs we provide the runtime Python
-packages via the PYTHONPATH environment variable. FreeCAD tries its
-best to ignore Python environment variables that are being inherited
-from the environment. For Python versions >=3.11 it also tries to
-initialize the interpreter config without any environmental data. We
-have to initialize the configuration *with* the information from the
-environment for our packaging to work.
-
-Upstream has purposely isolated the environments AFAIK and thus
-shouldn't accept this patch (as is). What they might accept (once
-support for older Python versions has been dropped) is removing the
-PYTHONPATH specific putenv calls.
----
- src/Base/Interpreter.cpp | 2 +-
- src/Main/MainGui.cpp     | 3 ---
- 2 files changed, 1 insertion(+), 4 deletions(-)
-
-diff --git a/src/Base/Interpreter.cpp b/src/Base/Interpreter.cpp
-index 52c47168af..9966bd0013 100644
---- a/src/Base/Interpreter.cpp
-+++ b/src/Base/Interpreter.cpp
-@@ -554,7 +554,9 @@ void initInterpreter(int argc,char *argv[])
- {

-     PyStatus status;

-     PyConfig config;

-     PyConfig_InitIsolatedConfig(&config);

-+    config.isolated = 0;

-+    config.use_environment = 1;

- 

-     status = PyConfig_SetBytesArgv(&config, argc, argv);

-     if (PyStatus_Exception(status)) {

-diff --git a/src/Main/MainGui.cpp b/src/Main/MainGui.cpp
-index 48ae847ef4..28813df383 100644
---- a/src/Main/MainGui.cpp
-+++ b/src/Main/MainGui.cpp
-@@ -112,17 +112,14 @@ int main( int argc, char ** argv )
-     // See https://forum.freecad.org/viewtopic.php?f=18&t=20600

-     // See Gui::Application::runApplication()

-     putenv("LC_NUMERIC=C");

--    putenv("PYTHONPATH=");

- #elif defined(FC_OS_MACOSX)

-     (void)QLocale::system();

--    putenv("PYTHONPATH=");

- #elif defined(__MINGW32__)

-     const char* mingw_prefix = getenv("MINGW_PREFIX");

-     const char* py_home = getenv("PYTHONHOME");

-     if (!py_home && mingw_prefix)

-         _putenv_s("PYTHONHOME", mingw_prefix);

- #else

--    _putenv("PYTHONPATH=");

-     // https://forum.freecad.org/viewtopic.php?f=4&t=18288

-     // https://forum.freecad.org/viewtopic.php?f=3&t=20515

-     const char* fc_py_home = getenv("FC_PYTHONHOME");

--- 
-2.42.0
-