aboutsummaryrefslogtreecommitdiff
path: root/nixpkgs/pkgs/applications/window-managers/qtile/0002-Restore-PATH-and-PYTHONPATH.patch
blob: 1eaa5b84174ca1101788db618fcea6bad05c7ffd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
diff --git a/bin/qshell b/bin/qshell
index 5c652b7a..2d169eb2 100755
--- a/bin/qshell
+++ b/bin/qshell
@@ -28,5 +28,6 @@ base_dir = os.path.abspath(os.path.join(this_dir, ".."))
 sys.path.insert(0, base_dir)
 
 if __name__ == '__main__':
+    __import__("importlib").import_module("libqtile.utils").restore_os_environment()
     from libqtile.scripts import qshell
     qshell.main()
diff --git a/bin/qtile b/bin/qtile
index ebc8fab5..08a965ef 100755
--- a/bin/qtile
+++ b/bin/qtile
@@ -29,5 +29,6 @@ base_dir = os.path.abspath(os.path.join(this_dir, ".."))
 sys.path.insert(0, base_dir)
 
 if __name__ == '__main__':
+    __import__("importlib").import_module("libqtile.utils").restore_os_environment()
     from libqtile.scripts import qtile
     qtile.main()
diff --git a/bin/qtile-cmd b/bin/qtile-cmd
index a2136ee6..3d37a6d9 100755
--- a/bin/qtile-cmd
+++ b/bin/qtile-cmd
@@ -8,5 +8,6 @@ base_dir = os.path.abspath(os.path.join(this_dir, ".."))
 sys.path.insert(0, base_dir)
 
 if __name__ == '__main__':
+    __import__("importlib").import_module("libqtile.utils").restore_os_environment()
     from libqtile.scripts import qtile_cmd
     qtile_cmd.main()
diff --git a/bin/qtile-run b/bin/qtile-run
index ac4cb1fd..74c589cb 100755
--- a/bin/qtile-run
+++ b/bin/qtile-run
@@ -8,5 +8,6 @@ base_dir = os.path.abspath(os.path.join(this_dir, ".."))
 sys.path.insert(0, base_dir)
 
 if __name__ == '__main__':
+    __import__("importlib").import_module("libqtile.utils").restore_os_environment()
     from libqtile.scripts import qtile_run
     qtile_run.main()
diff --git a/bin/qtile-top b/bin/qtile-top
index a6251f27..0d524b1d 100755
--- a/bin/qtile-top
+++ b/bin/qtile-top
@@ -8,5 +8,6 @@ base_dir = os.path.abspath(os.path.join(this_dir, ".."))
 sys.path.insert(0, base_dir)
 
 if __name__ == '__main__':
+    __import__("importlib").import_module("libqtile.utils").restore_os_environment()
     from libqtile.scripts import qtile_top
     qtile_top.main()
diff --git a/libqtile/utils.py b/libqtile/utils.py
index 2628c898..05117be7 100644
--- a/libqtile/utils.py
+++ b/libqtile/utils.py
@@ -270,3 +270,10 @@ def guess_terminal():
         return terminal
 
     logger.error('Default terminal has not been found.')
+
+def restore_os_environment():
+    pythonpath = os.environ.pop("QTILE_SAVED_PYTHONPATH", "")
+    os.environ["PYTHONPATH"] = pythonpath
+    path = os.environ.pop("QTILE_SAVED_PATH", None)
+    if path:
+        os.environ["PATH"] = path