[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: wrapper script issue



On Fri, Feb 08, 2008 at 02:58:04PM -0700, ChadDavis wrote:
> 
>     > #!/bin/sh
>     > export RUBYOPT=rubygems
>     > exec /etc/alternatives/ruby1.8 "$@"
> 
>     Do you really want to quote the argument list?
>
> I got that directly from the debian policy manual example. I didn't do
> it for any real reason. I'm not scripter, so I'm unaware of how this
> would impact stuff.

Maybe it's ok, then.  I guess exec will see "$@" as a single string (with
any/all whitespace preserved), but ruby1.8 will see the unquoted args.
Quoting command line arguments is one thing that drove me away from
MSDOS years ago to Linux, where it's done more sensibly, but I still
get confused...

>     I'd suggest putting your wrapper into
>     /usr/local/bin/, or somewhere other than /usr/bin/, so that it doesn't
>     risk colliding with packaged software.  I have a /usr/bin/ruby1.8
>     on my system, and it's clearly not your wrapper.  Or maybe I'm just
>     misunderstanding something...
> 
> I did install ruby1.8 with apt, and it put the ruby1.8 binary in that
> location. The wrapper, as I said, is suggested by the debian policy
> manual as the way to set a environment variable that you want set for
> that application.

Then I probably am not following what you're doing.  You don't show the
shebang lines in this message, but I thought you wanted your application
to use a custom wrapper script, and not run the packaged ruby1.8 directly.
On my system /usr/bin/ruby1.8 is a binary, and not a shell script as I
thought you were showing.

Ken

-- 
Ken Irving, fnkci+debianuser@uaf.edu


Reply to: