]> code.ossystems Code Review - openembedded-core.git/commitdiff
terminal: Use original PATH for terminals
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 13 Mar 2017 09:26:54 +0000 (09:26 +0000)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 13 Mar 2017 09:42:03 +0000 (09:42 +0000)
Now that we filter out PATH to only the utilities we rely upon, the devshel
terminal was broken since it can no longer find the terminals. Even if
we fix that, the user couldn't access any of their commands within
devshell which somewhat defeats its purpose.

Add the original PATH back to the environment to restore that behaviour
since this is more in line with user expectations and it wouldn't be possible
(or desireable) to whitelist all the commands a user might want to use from
the shell.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/terminal.bbclass

index 62409c0815861a1bb8187e262b94b4319fc62dee..a27e10c6ecbbc55a0a48ec810ccfd5b2c4264d55 100644 (file)
@@ -66,6 +66,11 @@ def oe_terminal(command, title, d):
             envdata.setVar(key, str(value))
             envdata.setVarFlag(key, 'export', '1')
 
+    # Use original PATH as a fallback
+    path = d.getVar('PATH') + ":" + origbbenv.getVar('PATH')
+    os.environ['PATH'] = path
+    envdata.setVar('PATH', path)
+
     # A complex PS1 might need more escaping of chars.
     # Lets not export PS1 instead.
     envdata.delVar("PS1")