Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Unbelievable offer - never to be repeated - shells

Greetings NetBSD users, Have I got a DEAL for you!!!

For a limited time only, you can amaze your friends and neighbours
by having the latest (even newer than available in shops) version
of the NetBSD shell.

This version, not available anywhere else, and for a limited
time only, has expansion of prompts implemented, so you can
do amazing tricks like

	PS1='[$(date +%T)] $PSc '

to put a clock in your prompt (you just need to enable the
new promptcmds option to allow that to work - set -o promptcmds).

You also get, in the same package, at no extra cost, the
ability to have your trace (-x) output include the line number
it is executing, just by doing

	PS4='${LINENO} + '

or anything else like that you can imagine - the possibilities
are endless.

But wait, there's more, all this applies to PS2 as well!
Before starting on a multi-line command, just do

	L1=${LINENO}; PS2='$((LINENNO - L1)) > '

Then start the command on the next line, and your extra command lines
will be nicely numbered in the prompt, so you never forget just where
you're up to.

So where do you get this amazing new shell?

Well, that's easy - remember it is only available for a limited time,
but you can get it in 3 different forms:

If you'd prefer the complete sources, then

If you'd prefer a set of patches, against the NetBSD-current
src/bin/sh sources (as of 2017-06-20 00:00:00 UTC ... or any
other time about then, up to now, and whenever the next update
is made there), then

In either case, to build the shell, just unpack the source .tgz
(it will unpack into a directory called sh-expand_prompt) cd into
that directory, and
	make USETOOLS=no NETBSDSRCDIR=/path/to/your/sources

Using the patches is much the same, copy the sh sources somewhere
(you wouldn't want to mess up your real version, cd wherever that
is, then "patch < sh-expand_prompt-PATCHES" and proceed as above
to build.)

In either case. $NETBSDSRCDIR (which might already be set in your
/etc/mk.conf or might default correctly if your sources are in /usr/src)
must be a directory with bin/sh bin/kill bin/test and usr.bin/printf
sub-directories, and the sources for those need to be there.

If you get a compile error in histedit.c, it means your system is
older than the shell expects, just delete the line in question and
carry on, you'll barely notice the difference.

Or, if you have an amd64 architecture system, and you're running
NetBSD 6 or later, then you can just fetch

gzip -d that file, rename it to "nbsh" (or whatever you prefer)
and put it in your bin directory (or wherever else you prefer).
Don't forget to turn on 'x' permission.

(It has been tested to work up to NetBSD 8.99.1 systems, so you
should be able to use that binary, on amd64, on NetBSD 6, NetBSD 7,
NetBSD 8_BETA, and NetBSD 8.99.*.)

(nb: I would not recommend using the binary version for more than
testing, the system it is compiled on has no sources available, so
I had to copy in the ones required, then beat on the (newer) other
sources a little to make them compile on a NetBSD 6 system.  The
shell sources just needed the one minor mod (not included in the patch
or source .tgz to be compile compatible with the older libedit).

All of this comes with an amazing warranty of none at all.   But if
you are unsatisfied, you can return the shell, undamaged, in its original
packaging, for a full refund (minus postage, packing, and handling fees,


With this shell, at absolutely no extra charge, that is, FREE, you
get an improved xtrace (set -x) option, with output that includes any
redirections on the command, for the very first time on a NetBSD /bin/sh

So let's look at all you get ...

	a shell with prompt variable expansion
		with prompt arithmetic expansion
		with (when enabled) prompt command substitution

	and this all applies to all of PS1 PS2 and PS4

	There's a new PSc variable that contains '$' or '#' that you
	can use for building your PS1 (or others) without needing to
	test if you're root or not first.

	There's enhanced xtrace (set -x) output, including showing
	redirections (and more.)

and you get all this, for just one simple FTP.

But WAIT, if you FTP in the next 2 hours, you can get two for the
price of one!   Yes, that's right, one to use at home, one to use
at work, or even to give away to a friend or family member.

All you need to do is request the free extra copy (yes, that's right,
no extra charge to you) - to do that, just do the download twice, and
save the result in two different files!  It is that simple.

So get your new shell now, don't delay, there are limited supplies
available, and we cannot be held liable if when you come to get yours
they have already all been taken.


Here are the URLs one more time

So get your new shell NOW, show it off, try out all its features,
and don't be shy about telling everyone just how great it is!

Home | Main Index | Thread Index | Old Index