On 14 Mar 2012, at 21:10, Adrian Chadd wrote: > Hi, > > This makes me think of the whole debian-y way of replacing the mailer > programs using some magic alias program. > > So you could intall gnusort, bsdsort, and then some config file would > determine which was used. > > '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.ander...@cl.cam.ac.uk_______________________________________________ freebsd-ports@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-ports To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"