1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
Source: mksh
Section: shells
Priority: optional
Maintainer: Thorsten Glaser <tg@mirbsd.de>
Homepage: http://mirbsd.de/mksh
# We build-depend on dietlibc-dev, libklibc-dev, musl-tools for mksh-static
# and link it against glibc if neither is usable for a given architecture.
# The meat checks actual shell usability based on the architecture, whether
# we are in paranoid (just before the freeze/release) mode, and whether the
# testsuite is run to determine bad builds. Really, do run the testsuite!
# (Even then, versioned B-D may be used to remove known bogus versions.)
Build-Depends: debhelper-compat (= 13),
# # libc variants to link against
dietlibc-dev [alpha amd64 arm arm64 armeb armel armhf hppa i386 ia64 mips mips64el mipsel powerpc powerpcspe ppc64 ppc64el s390 s390x sparc sparc64 x32],
libklibc-dev [linux-any],
musl-tools [amd64 arm64 armel armhf i386 m68k mips mips64el mipsel ppc64el riscv64 s390x sh4],
# # to run the testsuite
bsdextrautils | bsdmainutils (<< 12), ed
Standards-Version: 4.5.1
Rules-Requires-Root: no
VCS-git: https://evolvis.org/anonscm/git/alioth/mksh.git -b master
VCS-Browser: https://evolvis.org/plugins/scmgit/cgi-bin/gitweb.cgi?p=alioth/mksh.git;a=shortlog;h=refs/heads/master
Package: mksh
Architecture: any
Multi-Arch: foreign
Built-Using: ${mksh:B-U}
Depends: ${misc:Depends}, ${shlibs:Depends}
Recommends: ed
Description: MirBSD Korn Shell
mksh is the successor of the Public Domain Korn shell (pdksh),
a Bourne/POSIX compatible shell which is largely similar to the
original AT&T Korn Shell (ksh88/ksh93).
It includes bug fixes and feature improvements, in order to produce a
modern, robust shell good for interactive and especially script use.
mksh has UTF-8 support (in string operations and the Emacs editing
mode). The code has been cleaned up and simplified, bugs fixed,
standards compliance added, and several enhancements (for extended
compatibility to other modern shells, as well as a couple of its
own) are available.
This shell is Debian Policy 10.4 compliant and works as /bin/sh on
Debian systems (use the /bin/lksh executable) and is a good rescue
and initrd shell (consider the /bin/mksh-static executable).
.
The mksh binary is a complete, full-featured shell. It provides a
“consistent across all platforms” guarantee, using 32-bit integers
for arithmetics, possibly deviating from POSIX.
.
The mksh-static binary is a version of mksh, linked against klibc,
musl, or dietlibc (if they exist for that Debian architecture and
are usable) and optimised for small code size, for example for use
on initrd or initramfs images, installation or rescue systems.
Except for omitting some features to be smaller, it is similar to
the mksh binary otherwise. Note the exact feature set may differ
depending on which C library was used to compile it.
.
The lksh binary is a script shell based on mksh intended to run old
ksh88 and pdksh scripts, but not for interactive use. When used as
/bin/sh it follows POSIX most closely, including use of the host’s
“long” C data type for arithmetics. It also contains kludges so it
can run as /bin/sh on Debian beyond what Policy dictates, to work
around bugs in maintainer scripts and LSB init scripts shipped by
many packages, such as including a rudimentary printf(1) builtin,
permitting a shell function to be named stop overriding the default
alias, more loose interpretation of shell extglobs, etc.
.
A sample ~/.mkshrc is included in /usr/share/doc/mksh/examples and
provided as /etc/mkshrc conffile, which is sourced by another file
/etc/skel/.mkshrc users are recommended to copy into their home.
|