On Tue, Jun 22, 2021 at 01:33:27PM +0200, Martin Kletzander wrote:
There is no need for any hacks if we just do what execution of the
module would
have done.
Signed-off-by: Martin Kletzander <mkletzan(a)redhat.com>
---
sh/nbdsh.in | 12 ++++--------
1 file changed, 4 insertions(+), 8 deletions(-)
diff --git a/sh/nbdsh.in b/sh/nbdsh.in
index d10f0c1b6b26..f66e2918d304 100644
--- a/sh/nbdsh.in
+++ b/sh/nbdsh.in
@@ -1,4 +1,4 @@
-#!/bin/sh -
+#!/usr/bin/env @PYTHON@
# Copyright (C) 2011-2019 Red Hat Inc.
#
# @configure_input@
@@ -17,10 +17,6 @@
# License along with this library; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
-# Test if /bin/sh supports exec -a option (only supported in bash 4.2
-# and above, and not part of POSIX).
-if /bin/sh -c 'exec -a test true' 2>/dev/null; then
- exec -a nbdsh @PYTHON@ -mnbd "$@"
-else
- exec @PYTHON@ -mnbd "$@"
-fi
+import nbdsh
+
+nbdsh.shell()
Can we set argv[0] from Python? That would solve the problem that
Eric has noted.
This seems to say that you have to use an external module (which we'd
like to avoid from a tool as simple as nbdsh):
https://superuser.com/questions/427642/is-it-possible-to-set-the-process-...
https://bugs.python.org/issue5672
But maybe there's a way to make it work only in Linux, which would be
fine.
Rich.
--
Richard Jones, Virtualization Group, Red Hat
http://people.redhat.com/~rjones
Read my programming and virtualization blog:
http://rwmj.wordpress.com
Fedora Windows cross-compiler. Compile Windows programs, test, and
build Windows installers. Over 100 libraries supported.
http://fedoraproject.org/wiki/MinGW