Date: Wed, 14 Mar 2012 22:14:28 +0000 From: Jonathan Anderson <jonathan.anderson@cl.cam.ac.uk> To: Adrian Chadd <adrian@freebsd.org> Cc: freebsd-current@freebsd.org, Gabor Kovesdan <gabor@freebsd.org>, freebsd-ports@freebsd.org, Oleg Moskalenko <oleg.moskalenko@citrix.com> Subject: Re: CFT: new BSD-licensed sort available Message-ID: <ACA5E377-BFF9-4C1D-8499-A8003FFE79B3@cl.cam.ac.uk> In-Reply-To: <CAJ-VmokUV8t3W4CueZuiZC7e=FuVtFu1jq54V_NpRc79-3QG=w@mail.gmail.com> References: <4F60C059.7060904@FreeBSD.org> <CAJ-VmokUV8t3W4CueZuiZC7e=FuVtFu1jq54V_NpRc79-3QG=w@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 14 Mar 2012, at 21:10, Adrian Chadd wrote: > Hi, >=20 > This makes me think of the whole debian-y way of replacing the mailer > programs using some magic alias program. >=20 > So you could intall gnusort, bsdsort, and then some config file would > determine which was used. >=20 > 'sort' would then be a symlink to said magic program, that'd look at > its argv[0], look at the contents of that file, and exec() the right > one. In fact, the runtime behaviour of the Debian "alternatives" system is = simpler than that: http://segfault.in/2010/04/using-the-debian-alternatives-system/ The custom Perl script with a config file is used to set up symlinks, = which at runtime are... well, just symlinks. For instance, /usr/bin/vim = is a symlink to /etc/alternatives/vim, which is itself a symlink to a = binary like vim.gtk (example shamelessly stolen from the linked page, = since I no longer have any Debian boxes to check for myself on :). No = magic binaries or argv[0] fu. In one way, it's an elegant solution. On the other, it's a classic = example of Wheeler's Law in action. :) Jon -- Jonathan Anderson Research Student, Security Group Computer Laboratory University of Cambridge +44 (1223) 763747 jonathan.anderson@cl.cam.ac.uk=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ACA5E377-BFF9-4C1D-8499-A8003FFE79B3>