update-alternatives
Bas van Gompel
cygwin-apps.buzz@bavag.tmfweb.nl
Tue Jun 21 02:39:00 GMT 2005
Op Sun, 19 Jun 2005 16:17:13 -0500 schreef Gary R. Van Sickle
in <20050619211718.9E6F4D546@msc-fe01.qinip.net>:
: > -----Original Message-----
[...] On Behalf Of Charles Wilson
: > Sent: Saturday, June 18, 2005 3:06 PM
: > It seems there may be a need for a Debian-like
: > update-alternatives system on cygwin (see the recent thread
: > on the main list about making /bin/sh be bash instead of
: > ash). Also, such a system would be a better approach than my
: > cobbled-together postinstall scripts for the many new
: > versions of automake (ditto libpng).
: [snip]
:
: On the symlinks issue:
:
: Suppose instead of the current shortcut hybrid scheme, and also instead of
: copying the executables, and also instead of using NT-only hardlinks (which
: IIUC aren't Unixoid enough to be "drop-ins" anyway), "Somebody" wrote a
: "symlink.exe" executable that worked sort of like this:
I happen to have a program I call ``wrap''...
: - A suitable centralized alternatives database would be kept somewhere, with
: entries of a "/bin/ls == /bin/alternatives/actual-ls.exe" nature.
It (my ``wrap'') uses files in "/etc/wrap/" + basename(argv[0]).
: - The "symlink.exe" program would be a one-pager that you copied, under the
: "assumed name" of the exe you're trying to symlink. So, as the /bin/ls.exe
: executable, it would:
My current wrap.exe is 4096 bytes, after stripping.
: - See that it was executed with the name "/bin/ls.exe"
: - Look up "/bin/ls.exe" in the database to find which real executable it
: should run.
The name of the executable to execute is read from /etc/wrap/ls.
: - spawn() that real executable.
My ``wrap'' uses execvp()...
: That would solve the "can't run it from a windows command line" problem,
: wouldn't it?
Absolutely. (I've been using this for unison for a while now.)
If there is interest in this, I'll happily ``ITP'' it...
Just let me know.
L8r,
Buzz.
--
) | | ---/ ---/ Yes, this | This message consists of true | I do not
-- | | / / really is | and false bits entirely. | mail for
) | | / / a 72 by 4 +-------------------------------+ any1 but
-- \--| /--- /--- .sigfile. | |perl -pe "s.u(z)\1.as." | me. 4^re
More information about the Cygwin-apps
mailing list