[libvirt] libvirt-guests output

Laurent Léonard laurent at open-minds.org
Tue Dec 14 17:58:10 UTC 2010


Le jeudi 09 décembre 2010 19:31:22, Eric Blake a écrit :
> On 12/09/2010 11:21 AM, Laurent Léonard wrote:
> > Hi,
> > 
> > Here is an example of libvirt-guest output:
> > $Running guests on default URI: test-vm
> > $Suspending guests on default URI...
> > $Suspending test-vm: $done
> > 
> > Why all the lines begin with "$" ?
> 
> Because you aren't using bash.
> 
> Bash supports $"" as a way to provide gettext translation of strings
> into the user's preferred location.  Init scripts written for
> Fedora-based systems assume that /bin/sh is bash, and therefore that $""
> is usable.
> 
> Dash does not understand $"" (POSIX says it has unspecified behavior),
> and treats it as a literal '$' followed by a normal (untranslated) "".
> 
> It's probably a nice goal to port libvirt-guests to non-bash /bin/sh,
> but it may take a lot more work; in particular, there are TONS of
> existing init scripts on Fedora that assume bash extensions, which
> libvirt-guests used as its starting point.  And I'm not quite sure what
> the POSIX-compliant replacement for $"" string translation would be.
> There are two problems to solve - how to get xgettext to recognize a
> string that needs translation, and how to use gettext(1) (rather than
> bash's magic $"" automatically calling gettext(3)) to do the translation
> at runtime.

Guido Günter wrote :
> Hi Laurent,
> 
> this looks great, one suggestion:
> 
> On Tue, Dec 14, 2010 at 10:49:01AM +0000, Laurent Léonard wrote:
> > The following commit has been merged in the experimental branch:
> > commit 7d7aed44c56d113713547e5dd9bdbe4ab6684c00
> > Author: Laurent Léonard <laurent at open-minds.org>
> > Date:   Tue Dec 14 11:24:42 2010 +0100
> > 
> >     New patch 0010-Debianize-libvirt-guests.patch
> > 
> > +         if ! $configured; then
> > +-            echo $"Ignoring guests on $uri URI"
> > ++            echo "Ignoring guests on $uri URI"
> 
> It might make sense to introduce a function:
> 
> libvirt_echo() {
> 	echo $"$@"
> }
> 
> So that the lines above become:
> 
>          if ! $configured; then
>             libvirt_echo "Ignoring guests on $uri URI"
> 
> If we get this integrated upstream  we'd only have to patch a single
> line which might future merging easier. We might even be able to either
> pick $" or just " by looking at the shell used.

What about that proposition ?

-- 
Laurent Léonard




More information about the libvir-list mailing list