What is it?
Heirloom NG is a collection of standard UNIX® utilities that is
intended to provide maximum compatibility with traditional UNIX® while
incorporating additional features necessary today.
It's mostly written from scratch, along with some tools that were released under open source licences by Caldera International Inc. and Sun Microsystems.
It provides many UNIX® utilities, with some having variants for compatibility with various specifications — to be specific, SVID3/SVR4, SVID4/SVR4.2MP, POSIX.2-1992/SUSV2, POSIX.1-2001/SUSV3, and BSD (a.k.a. SVR4's /usr/ucb).
What are the differences from the last release of Heirloom Toolchest?
The last release of the original Heirloom Toolchest project was made
in July 15th of 2007. Since then, many things have changed, such as
UNIX®-compatible systems ABIs having dropped legacy functions and data
structures that were inherited from workarounds/bad practices present
in older systems.
Although trying to maintain compatibility with environments that the pre-fork releases already supported, Heirloom NG also ported the code to work with newer systems and standard C libraries.
Another change was the finality: while the old Heirloom Toolchest was aimed just to "caters to people who like to operate their computers using a traditional Unix command line interface", Heirloom NG arose from the need of a complete alternative to existent toolsets, along with the idea of also having a traditional and stone-cold environment, so new tools, such as chroot(8) and readlink(1) were implemented.
In sum, Heirloom NG is the original Heirloom Toolchest, but maintained and enhanced with the idea of supplying a full UNIX®-compatible toolset.
Download the source code
The latest release is .
You can use the command below retrieve a release copy from one of Pindorama project servers:
$ curl -SO# http://pindorama.dob.jp/pub/heirloom-ng/YYMMDD.tar.gz
Or, if you prefer, you can also retrieve a copy both from the current development tree or a release directly from the git repository:
$ git clone -b [master|YYMMDD] https://github.com/Projeto-Pindorama/heirloom-ng.git
old tarball from sourceforge.net?
No trouble, we've got you covered.
If, for some reason, you only have access to the old '07 tarball from the original Heirloom Project and want to use Heirloom NG's fixes and features, you can get a giga-patch from the Microsoft GitHub repository and apply it:
$ curl -So gigapatch.diff https://github.com/Projeto-Pindorama/heirloom-ng/compare/070715...[master|YYMMDD].diff $ cd heirloom-070715; patch -Np1 < ../gigapatch.diff
This is a list of projects currently and/or planning to utilize Heirloom NG as an alternative or the as the default UNIX®-compatible tool set.
We can't make this happen all alone. There are many ways you
can chip in. Testing for compatibility or bugs? Implementing the latest
POSIX standard at the default variants of commands? Implementing lacking
commands? There you go.
Read more about the details at the "README".
The vast majority of the files — 199 of the 508 (39%),
including manual pages and source code written in different languages
— are licenced under the
ZLib licence, which is also the default and required licence for new
Other licences include Caldera (138 files, 27%), BSD 4-Clause (35 files, 6%), CDDL-1.0 (109 files, 21%) and LGPL v2.1/GPL v2.0 (27 files, 5%).
If you need to know about which files use which licences, you can easily check for the "SPDX-Licence-Identifier" header on each of the files.