X-Recipient: archive-cygwin AT delorie DOT com X-SWARE-Spam-Status: No, hits=-2.4 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,RP_MATCHES_RCVD,TW_YG X-Spam-Check-By: sourceware.org Date: Mon, 8 Aug 2011 15:21:08 -0700 From: Gary Johnson To: cygwin AT cygwin DOT com Subject: Re: Portable shell code between Cygwin and Linux Message-ID: <20110808222108.GA1184@KCJs-Computer> Mail-Followup-To: cygwin AT cygwin DOT com References: <80hb65b3ue DOT fsf AT somewhere DOT org> <20110729201651 DOT GB13084 AT calimero DOT vinschen DOT de> <1686210011 DOT 20110730161401 AT mtu-net DOT ru> <4E3F44D2 DOT 3040501 AT cs DOT umass DOT edu> Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <4E3F44D2.3040501@cs.umass.edu> User-Agent: Mutt/1.4.2.2i X-IsSubscribed: yes Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com On 2011-08-07, Eliot Moss wrote: > 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 ... Something else the OP may be able to use is Luc Hermitte's cyg-wrapper.sh script. It's designed to solve exactly this problem of running a Windows program from a Cygwin environment. http://hermitte.free.fr/cygwin/ Regards, Gary -- 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