delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/01/31/20:40:47

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Message-ID: <000501c1aac1$172e60d0$a4e2290c@world9t3igycu7>
From: "Joshua Daniel Franklin" <joshuadfranklin AT yahoo DOT com>
To: <cygwin AT cygwin DOT com>
Subject: cygwin lnk creation app
Date: Thu, 31 Jan 2002 19:38:00 -0600
MIME-Version: 1.0
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 5.50.4522.1200
X-MimeOLE: Produced By Microsoft MimeOLE V5.50.4522.1200

I've finished a small (one C file) Windows-link-creation app for possible
inclusion in Cygwin, maybe in utils. Here are some examples and a GPL
question.

Usage mklink.exe [OPTION]... TARGET
NOTE: All filename arguments must be in unix (POSIX) format
  -a|--arguments=ARGS   use arguments ARGS
  -h|--help             output usage information and exit
  -i|--icon             icon file for link to use
  -j|--iconoffset       offset of icon in icon file (default is 0)
  -n|--name             name for link (defaults to TARGET)
  -v|--version          output version information and exit
  -A|--allusers         use 'All Users' instead of current user for -D,-P
  -D|--desktop          create link relative to 'Desktop' directory
  -P|--smprograms       create link relative to Start Menu 'Programs'
directory

Some examples of what the app (which I've called mklink but could be called
winlnk--or anything else really) can do:
./mklink -DA /usr/local/ #creates a "local.lnk" on the All Users/Desktop
./mklink -n foo/bar -D /usr/local/bin #creates a "bin.lnk" in the folder foo
on current user's Desktop
./mklink -i /cygwin.ico -P http://www.cygwin.com #creates a
"www.cygwin.com.lnk" in user's SM Program Files dir
./mklink -n ~/foobar /bin/rxvt.exe #creates a foobar.lnk to rxvt (with no
options) in home dir
./mklink -a '-rv -tn rxvt -fn "FixedSys" -e /bin/bash --login -i' -n
"Internet Explorer.lnk" -i /c/WINNT/system32/SHELL32.DLL -j 106 /bin/rxvt #
creates a link in the PWD to rxvt with my favorite options--confusingly
titled and iconed to look like IE

This could be useful to package maintainers to use in shell scripts to
create, for example, a link in the SM Programs\Cygwin directory to the
Cygwin FAQ. It could also, at some convenient time in the future, replace
the link-creation routines currently in setup.exe.
The only the caveat is that currently setup.exe also checks whether the user
WANTS links all over their Start Menu.

Now, for the GPL question. I noticed that ln -s creates a symlink and a
winlink. At first I thought this would be as simple as putting the posix
path as a description, but that doesn't work. Now, so far all I've used are
the setup.exe sources mklink2.c and desktop.cc, both (c)RedHat, and MSDN
documentation of Shell Links. But the ln sources are (c)FSF. If I looked at
those sources for code I would not be able to assign this code to RedHat,
correct?
Thanks.
Joshua Daniel Franklin


_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019