public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
* [PATCH] lib/oe/terminal.py: use an absolute path to execute oe-gnome-terminal-phonehome
@ 2016-08-18 12:21 Ming Liu
  0 siblings, 0 replies; 5+ messages in thread
From: Ming Liu @ 2016-08-18 12:21 UTC (permalink / raw)
  To: openembedded-core; +Cc: yue.tao, Ming Liu

From: Ming Liu <peter.x.liu@external.atlascopco.com>

A flaw was found on my Ubuntu 14.04.5 LTS, on which that gnome-terminal is
the default terminal, when I run any of the tasks:
bitbake busybox -c menuconfig/devshell/devpyshell
bitbake virtual/kernel -c menuconfig/devshell/devpyshell

I got a error as follows:
"Failed to execute child process "oe-gnome-terminal-phonehome" (No such file or directory)"

Seems the environment of the process calling Popen is not passed to the
child process, this behaviour is a known issue in Python bug tracker:
http://bugs.python.org/issue8557

I think it could be fixed by using an absolute path instead.

Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com>
---
 meta/lib/oe/terminal.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py
index 3901ad3..5c3e0aa 100644
--- a/meta/lib/oe/terminal.py
+++ b/meta/lib/oe/terminal.py
@@ -67,7 +67,7 @@ class Gnome(XTerminal):
         import tempfile
         pidfile = tempfile.NamedTemporaryFile(delete = False).name
         try:
-            sh_cmd = "oe-gnome-terminal-phonehome " + pidfile + " " + sh_cmd
+            sh_cmd = bb.utils.which(os.getenv('PATH'), "oe-gnome-terminal-phonehome") + " " + pidfile + " " + sh_cmd
             XTerminal.__init__(self, sh_cmd, title, env, d)
             while os.stat(pidfile).st_size <= 0:
                 continue
-- 
1.9.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH] lib/oe/terminal.py: use an absolute path to execute oe-gnome-terminal-phonehome
@ 2017-10-13  7:25 liu.ming50
  2017-10-13  7:35 ` Ming Liu
  0 siblings, 1 reply; 5+ messages in thread
From: liu.ming50 @ 2017-10-13  7:25 UTC (permalink / raw)
  To: openembedded-core; +Cc: Ming Liu

From: Ming Liu <liu.ming50@gmail.com>

A flaw was found on my Ubuntu 14.04.5 LTS, on which that gnome-terminal is
the default terminal, when I run any of the tasks:
bitbake busybox -c menuconfig/devshell/devpyshell
bitbake virtual/kernel -c menuconfig/devshell/devpyshell

I got a error as follows:
"Failed to execute child process "oe-gnome-terminal-phonehome" (No such file or directory)"

Seems the environment of the process calling Popen is not passed to the
child process, this behaviour is a known issue in Python bug tracker:
http://bugs.python.org/issue8557

It could be fixed by using an absolute path instead per test.

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
---
 meta/lib/oe/terminal.py | 2 +-
 xxxxxxxxxx              | 0
 2 files changed, 1 insertion(+), 1 deletion(-)
 create mode 100644 xxxxxxxxxx

diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py
index 9eb19a2..94afe39 100644
--- a/meta/lib/oe/terminal.py
+++ b/meta/lib/oe/terminal.py
@@ -224,7 +224,7 @@ def spawn(name, sh_cmd, title=None, env=None, d=None):
     import time
     pidfile = tempfile.NamedTemporaryFile(delete = False).name
     try:
-        sh_cmd = "oe-gnome-terminal-phonehome " + pidfile + " " + sh_cmd
+        sh_cmd = bb.utils.which(os.getenv('PATH'), "oe-gnome-terminal-phonehome") + " " + pidfile + " " + sh_cmd
         pipe = terminal(sh_cmd, title, env, d)
         output = pipe.communicate()[0]
         if output:
diff --git a/xxxxxxxxxx b/xxxxxxxxxx
new file mode 100644
index 0000000..e69de29
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] lib/oe/terminal.py: use an absolute path to execute oe-gnome-terminal-phonehome
  2017-10-13  7:25 liu.ming50
@ 2017-10-13  7:35 ` Ming Liu
  0 siblings, 0 replies; 5+ messages in thread
From: Ming Liu @ 2017-10-13  7:35 UTC (permalink / raw)
  To: OE-core; +Cc: Ming Liu

[-- Attachment #1: Type: text/plain, Size: 1841 bytes --]

Sorry, I mistakenly sent a useless file xxxxxxxxxx file with this patch,
please ignore it, will send a V2 soon.

//Ming Liu

2017-10-13 15:25 GMT+08:00 <liu.ming50@gmail.com>:

> From: Ming Liu <liu.ming50@gmail.com>
>
> A flaw was found on my Ubuntu 14.04.5 LTS, on which that gnome-terminal is
> the default terminal, when I run any of the tasks:
> bitbake busybox -c menuconfig/devshell/devpyshell
> bitbake virtual/kernel -c menuconfig/devshell/devpyshell
>
> I got a error as follows:
> "Failed to execute child process "oe-gnome-terminal-phonehome" (No such
> file or directory)"
>
> Seems the environment of the process calling Popen is not passed to the
> child process, this behaviour is a known issue in Python bug tracker:
> http://bugs.python.org/issue8557
>
> It could be fixed by using an absolute path instead per test.
>
> Signed-off-by: Ming Liu <liu.ming50@gmail.com>
> ---
>  meta/lib/oe/terminal.py | 2 +-
>  xxxxxxxxxx              | 0
>  2 files changed, 1 insertion(+), 1 deletion(-)
>  create mode 100644 xxxxxxxxxx
>
> diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py
> index 9eb19a2..94afe39 100644
> --- a/meta/lib/oe/terminal.py
> +++ b/meta/lib/oe/terminal.py
> @@ -224,7 +224,7 @@ def spawn(name, sh_cmd, title=None, env=None, d=None):
>      import time
>      pidfile = tempfile.NamedTemporaryFile(delete = False).name
>      try:
> -        sh_cmd = "oe-gnome-terminal-phonehome " + pidfile + " " + sh_cmd
> +        sh_cmd = bb.utils.which(os.getenv('PATH'),
> "oe-gnome-terminal-phonehome") + " " + pidfile + " " + sh_cmd
>          pipe = terminal(sh_cmd, title, env, d)
>          output = pipe.communicate()[0]
>          if output:
> diff --git a/xxxxxxxxxx b/xxxxxxxxxx
> new file mode 100644
> index 0000000..e69de29
> --
> 2.7.4
>
>

[-- Attachment #2: Type: text/html, Size: 2613 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH] lib/oe/terminal.py: use an absolute path to execute oe-gnome-terminal-phonehome
@ 2017-10-13 11:26 liu.ming50
  2017-11-07  0:32 ` Andre McCurdy
  0 siblings, 1 reply; 5+ messages in thread
From: liu.ming50 @ 2017-10-13 11:26 UTC (permalink / raw)
  To: openembedded-core; +Cc: Ming Liu

From: Ming Liu <liu.ming50@gmail.com>

A flaw was found on my Ubuntu 14.04.5 LTS, on which that gnome-terminal is
the default terminal, when I run any of the tasks:
bitbake busybox -c menuconfig/devshell/devpyshell
bitbake virtual/kernel -c menuconfig/devshell/devpyshell

I got a error as follows:
"Failed to execute child process "oe-gnome-terminal-phonehome" (No such file or directory)"

Seems the environment of the process calling Popen is not passed to the
child process, this behaviour is a known issue in Python bug tracker:
http://bugs.python.org/issue8557

It could be fixed by using an absolute path instead per test.

Signed-off-by: Ming Liu <liu.ming50@gmail.com>
---
 meta/lib/oe/terminal.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py
index 9eb19a2..94afe39 100644
--- a/meta/lib/oe/terminal.py
+++ b/meta/lib/oe/terminal.py
@@ -224,7 +224,7 @@ def spawn(name, sh_cmd, title=None, env=None, d=None):
     import time
     pidfile = tempfile.NamedTemporaryFile(delete = False).name
     try:
-        sh_cmd = "oe-gnome-terminal-phonehome " + pidfile + " " + sh_cmd
+        sh_cmd = bb.utils.which(os.getenv('PATH'), "oe-gnome-terminal-phonehome") + " " + pidfile + " " + sh_cmd
         pipe = terminal(sh_cmd, title, env, d)
         output = pipe.communicate()[0]
         if output:
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH] lib/oe/terminal.py: use an absolute path to execute oe-gnome-terminal-phonehome
  2017-10-13 11:26 liu.ming50
@ 2017-11-07  0:32 ` Andre McCurdy
  0 siblings, 0 replies; 5+ messages in thread
From: Andre McCurdy @ 2017-11-07  0:32 UTC (permalink / raw)
  To: Ming Liu; +Cc: OE Core mailing list

On Fri, Oct 13, 2017 at 4:26 AM,  <liu.ming50@gmail.com> wrote:
> From: Ming Liu <liu.ming50@gmail.com>
>
> A flaw was found on my Ubuntu 14.04.5 LTS, on which that gnome-terminal is
> the default terminal, when I run any of the tasks:
> bitbake busybox -c menuconfig/devshell/devpyshell
> bitbake virtual/kernel -c menuconfig/devshell/devpyshell
>
> I got a error as follows:
> "Failed to execute child process "oe-gnome-terminal-phonehome" (No such file or directory)"
>
> Seems the environment of the process calling Popen is not passed to the
> child process, this behaviour is a known issue in Python bug tracker:
> http://bugs.python.org/issue8557
>
> It could be fixed by using an absolute path instead per test.

Ping.

A similar fix is also needed in pyro and morty (where Ubuntu 14.04 is
still an officially supported host).

Using an absolute path here seems like a reasonable thing to be doing
anyway, so unless there's an obvious problem with this change, I
suggest merging to master first and then backporting rather than
making the fix morty specific.

> Signed-off-by: Ming Liu <liu.ming50@gmail.com>
> ---
>  meta/lib/oe/terminal.py | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/lib/oe/terminal.py b/meta/lib/oe/terminal.py
> index 9eb19a2..94afe39 100644
> --- a/meta/lib/oe/terminal.py
> +++ b/meta/lib/oe/terminal.py
> @@ -224,7 +224,7 @@ def spawn(name, sh_cmd, title=None, env=None, d=None):
>      import time
>      pidfile = tempfile.NamedTemporaryFile(delete = False).name
>      try:
> -        sh_cmd = "oe-gnome-terminal-phonehome " + pidfile + " " + sh_cmd
> +        sh_cmd = bb.utils.which(os.getenv('PATH'), "oe-gnome-terminal-phonehome") + " " + pidfile + " " + sh_cmd
>          pipe = terminal(sh_cmd, title, env, d)
>          output = pipe.communicate()[0]
>          if output:
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-11-07  0:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-08-18 12:21 [PATCH] lib/oe/terminal.py: use an absolute path to execute oe-gnome-terminal-phonehome Ming Liu
  -- strict thread matches above, loose matches on Subject: below --
2017-10-13  7:25 liu.ming50
2017-10-13  7:35 ` Ming Liu
2017-10-13 11:26 liu.ming50
2017-11-07  0:32 ` Andre McCurdy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox