Newick Utilities: A suite of shell tools to process phylogenetic trees

Newick Utilities

The Newick Utilities are a suite of Unix shell tools for processing phylogenetic trees. We distribute the package under the BSD License. Functions include re-rooting, extracting subtrees, trimming, pruning, condensing, drawing (ASCII graphics or SVG).


The Newick Utilities have been described in an Open-Access paper (that is, available online for everyone):

The Newick Utilities: High-throughput Phylogenetic tree Processing in the UNIX Shell
Thomas Junier and Evgeny M. Zdobnov
Bioinformatics 2010 26:1669-1670




The latest version (bug fixes and new features) is available from Github. This is only the source and the tutorial. May not be stable, although all tests pass. Do git clone git://, then cd newick-utilities, then the usual ./configure && make, etc. You may need the GNU Autotools (Automake, Autoconf, etc) to build. See the tutorial for building from latest source.

Stable Releases

The following files are available for download:

  • nwutils_tutorial-1.*.*.pdf - general documentation, and examples of tasks using the Newick Utilities
  • newick-utils-1.*.*.tar.gz - the C sources. The code is known to compile on various distributions of Linux (including recent releases of Ubuntu, Fedora, CentOS and SuSE, as well as Arch), Cygwin 5.1, as well as MacOS X (10.6). It uses the familiar GNU autotools - ./configure; make; make check, sudo make install, etc. You will need (obviously) a C compiler (I use GCC), as well as Flex and Bison. These are installed by default on many, but not all, distributions of Linux. Use yum, apt-get, etc to install them if needed. Mac users will need Xcode.
  • newick-utils-1.*.*-<platform>.tar.gz - statically linked binary distributions for various platforms. Just download, expand the archive ( tar xzf ...), and the executables are found in subdirectory src.

Known Issues

  • One of the tests ( fails on MacOSX and Cygwin, this is due to differences in the "random" number generator. The program works fine.

Latest stable release

v. 1.6 (2011-11-23)

New: nw_luaed: "stream editor" for trees, embedding a Lua interpreter.
That is, like nw_ed or nw_sched, but using Lua instead of pure C or Scheme. Lua is a fast language designed for being embedded, which is exactly how it's used here. nw_reroot can now reroot a tree on the longest branch (similar, but not identical, to mid-point rooting).






Binaries with disabled-extra in their name do not use optional software
(LibXML, Lua and Guile), those with enabled-extra do, and expect to find the libs on the system.



more to come

v. 1.5.0 (23 February 2011)

New: can use LibXML to make better graphics, and a new stream editor (nw_sched) that embeds a Scheme interpreter (GNU Guile). Build will also succeed without LibXML or Guile, and only a few functions won't be available.






All are for Intel processors, 32 bit (i686) or 64 bit (x86_64). Binaries with disabled-extra in their name do not use LibXML or Guile, those with enabled-extra do, and expect to find the libs on the system.









v. 1.3.0 (22 April 2010)

nwutils_tutorial-1.3.0.pdf - tutorial

newick-utils-1.3.0.tar.gz - source code - MD5 sum ed15a6f466b4000ce8b17fbed7f0533f

newick-utils-1.3.0-Linux-x86_64.tar.gz - 64-bit Intel Linux binaries - MD5 sum 64635f9d86250ff366f842f9ac97a6eb

newick-utils-1.3.0-Linux-i686.tar.gz - 32-bit Intel Linux binaries - MD5 sum 511e9cb8bd4bbcba2b0330196f56d889

newick-utils-1.3.0-MacOSX-10.4-i386.tar.gz - 64-bit Intel MacOSX 10.4 (Tiger) binaries - MD5 sum 9ed079f2d37b7f6a514aaca09e8b11f0

newick-utils-1.3.0-MacOSX-10.6-i386.tar.gz - 32-bit Intel (Core Duo) MacOSX 10.6 (Snow Leopard) binaries - MD5 sum 96e0171287c5be505afa350ad3763cc1

newick-utils-1.3.0-CYGWIN_NT-5.1-i686.tar.gz - 32-bit Intel Cygwin 5.1 binaries - MD5 sum ccd9a32f41ee2d01942473376028e52f

v. 1.2.0

nwutils_tutorial.pdf - tutorial

newick-utils-1.2.0.tar.gz - source code - MD5 sum 80930fe94baac5c6b65dc1122ed38afe

newick-utils-1.2.0-x86_64.tar.gz - Linux binaries, Intel 64 bit - MD5 sum 973dc093f9cf105e4eafd8711d228df4

newick-utils-1.2.0-i686.tar.gz - Linux binaries, Intel 32 bit - MD5 sum 4dc1428c229e3a188c7f188e1a4a0588

newick-utils-1.2.0-macOS-10.4-i386.tar.gz - MacOS 10.4, Intel 32 bit - MD5 sum c16300595a8e89f865ab42e18ac0ffc3

v. 1.1.0

See attachments section below.

newick-utils-1.1.0-linux-x86_64.tar.gz2.25 MB
newick-utils-1.1.0-linux-i686.tar.gz2.2 MB
newick-utils-1.1.0-MacOSX-10.4-intel-64.tar.gz1.98 MB
nwutils_tutorial.pdf728.47 KB
newick-utils-1.1.0.tar.gz1.45 MB