[Libguestfs] [libnbd PATCH] nbdsh: Simplify the script

Martin Kletzander mkletzan at redhat.com
Wed Jun 23 12:48:02 UTC 2021


On Wed, Jun 23, 2021 at 12:29:38PM +0100, Richard W.M. Jones wrote:
>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 at 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-name-with-pythonw
>https://bugs.python.org/issue5672
>
>But maybe there's a way to make it work only in Linux, which would be
>fine.
>

Just keep it like it is, I guess.  I guess I can kind of see why is it
beneficial to have the process named based on the script, but how come it is an
issue when python scripts do not do that, but it's fine when shell scripts do
not mask the fact that they are running under a shell interpreter.

Anyway, I was trying to fix a niche problem that is not really that important.
I can just switch /bin/sh to be a symlink to dash and it will be dealt with.

Sorry for wasting your time, have a nice day.

>
>-- 
>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
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/libguestfs/attachments/20210623/23aedc14/attachment.sig>


More information about the Libguestfs mailing list