This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Portable shell code between Cygwin and Linux


On 8/7/2011 9:16 PM, Sven Köhler wrote:
Am 30.07.2011 14:14, schrieb Andrey Repin:
Greetings, Corinna Vinschen!

For every shell code that I write, I'd like it to be portable both to Cygwin
on Windows, and to Ubuntu Linux for example.

It's kinda possible, but am blocked with such a use case:

alias vpnup='exec sudo openvpn --config ~/config/client.vpn --writepid /tmp/openvpn.pid&'

While this worked perfectly under Ubuntu, I've had to make up a customized
version for Windows:

alias vpnupwin='cd c:/home/sva/config; openvpn --config client.vpn --writepid c:/cygwin/tmp/openvpn.pid&'

Don't use Win32 paths. Use POSIX paths:

alias vpnupwin='cd /cygdrive/c/home/sva/config; openvpn --config client.vpn --writepid /cygdrive/c/cygwin/tmp/openvpn.pid&'

Moreover, the very first line is wrong.


Must be

alias vpnup='exec sudo openvpn --config $HOME/config/client.vpn --writepid /tmp/openvpn.pid&'

that's where his problem began, IMO.

I don't know, why you pointed that out. It's of no use to feed a path like $HOME/something to a pure win32 binary. (Certainly, this hint is kind of important for the ubuntu version of the script, but not for the cygwin issue, which is solely because he's mixing cygwin and win32 and expects it work without any complication)

The OP *was* seeking uniform scripts between cygwin and ubuntu, but where some of the programs invoked under cygwin are Windows programs (which therefore need Windows paths, etc.). But in any case, setting up suitable environment variables, aliases, etc., in a section of setup scripts that tests uname seems to be the agreed advice, along with specifics concerning cygpath and settings for particular programs ...

Best wishes -- Eliot moss

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]