Prev |  | Next

## 4. Download information

This section presents the different methods to download NUT.

### 4.1. Building from source code

To build from Git sources, you will need a number of tools such as `autoconf`, `automake` and `libtool` to use these checkouts or snapshots to generate the `configure` script and some other files. The distribution archives already include the `configure` script (as well as other files) and do not require auto* tools to prepare the sources for a build.

A more complete list of build prerequisites for different platforms can be seen in Prerequisites for building NUT on different OSes chapter in the NUT QA Guide, and reading about `configure` script options can also help.

After you `configure` the source workspace, a `make dist-hash` recipe would create the snapshot tarballs which do not require the `auto*` tools, and their checksum files, such as those available on the NUT website and attached to GitHub Releases page.

### 4.2. Source code

### Note

You should always use PGP/GPG to verify the signatures before using any source code.

You can use the following procedure. to do so.

#### Stable tree: 2.8

- ChangeLog

You can also browse the stable source directory.

#### Development tree:

To get the newest fixes or features, you may want to build code that is even newer than the most-recent NUT release (and likely much newer than whatever your OS distribution has packaged). This bleeding-edge approach usually involves building NUT either from the `master` branch, or even from feature branches which are sources of a pull request being reviewed and discussed before it gets merged into the main development trunk.

As such, it is highly recommended to build from Git sources rather than "distribution tarball" archives (so you can more easily update your build workspace to try subsequent iterations), although the latter are now also available for development iterations.

See the live Wiki article on Building NUT for in-place upgrades or non-disruptive tests for the most up-to-date suggestions for building, testing and installing the latest (or experimental) revisions of the NUT code base, and Finding recent development iteration artifacts about fetching the results of the hard work done by the NUT CI farm.

##### Code repository

The development tree is available through a Git repository hosted at GitHub.

To retrieve the current development tree, use the following command:

    :; git clone git://github.com/networkupstools/nut.git

OPTIONALLY you can then fetch known git tags, so semantic versions look better (based off a recent release):

    :; cd nut
    :; git fetch --tags --all

The `configure` script and its dependencies are not stored in Git. To generate them, ensure that autoconf, automake and libtool are installed, then run the following script in the directory you just checked out:

    :; ./autogen.sh

### Note

It is optionally recommended to have Python 2.x or 3.x, and Perl, to generate some files included into the `configure` script, presence is checked by autotools when it is generated. Neutered files can be just "touched" to pass the `autogen.sh` if these interpreters are not available, and effectively skip those parts of the build later on —`autogen.sh` will then advise which special environment variables to `export` in your situation and re-run it.

Then refer to the NUT user manual for more information.

##### Browse code

You can browse the "vanilla NUT" code at the Main GitHub repository for NUT sources, and some possibly modified copies as part of packaging recipe sources of operating system distributions, as listed below.

##### Snapshots

For pull requests and eventual merges into the master branch, a NUT CI job prepares correct "dist tarballs" with a snapshot of source code, as well as an archive with rendered documentation files (PDF, HTML, man pages).

Links to these "Dist and Docs" archives can be seen on GitHub in the list of GitHub Checks associated with merge commits and pull requests. Keep in mind that artifacts like these are stored for up to 90 days, and can be rotated away earlier.

### Note

GitHub has several download links for repository snapshots (made for particular tags or branches), but the ability to build NUT seamlessly from ZIP or `tar.gz` snapshots prepared by GitHub automatically (as a simple `git archive` of a checked-out workspace) is not regularly checked nor "supported" by the Network UPS Tools project. YMMV.

#### Older versions

Browse source directory

### 4.3. Binary packages

### Note

The only official releases from this project are source code "tarballs", prepared by `make dist-files` from the tagged release commits on main trunk of the development code base (for more details see NUT Maintainer Guide in source).

Best-effort packages or archives of installation prototype workspaces, prepared by regular CI builds, are planned to ease evaluation of the latest development for some platforms (currently serving only NUT for Windows).

NUT is already available in the following operating systems (and likely more):

- Repology report on "network-ups-tools" lists 239 entries about NUT, as of 2025-09-06

  - Older listing at Repology report on "nut" listed 745 entries about NUT, as of 2022-04-26 — that name was not tracked since 2024 probably due to ambiguity with some other projects that used "nut" in their name; see Repology history of "nut" for more details

- Linux:

  - 42ITy.org packaging recipes for Debian-based releases
  - Debian Salsa recipes and Debian packages
  - Ubuntu packages
  - Fedora Rawhide recipes and Red Hat / Fedora packages
  - Arch Linux recipe and Arch Linux package info
  - Gentoo Linux recipe and Gentoo Linux package info
  - Novell SUSE / openSUSE official package base recipe and Novell SUSE / openSUSE official package development recipe, and Novell SUSE / openSUSE official package overview
  - Numerous other recipes on Open Build System (not only by SUSE)
  - OpenWRT recipes
  - Slackware package overview
  - Void Linux recipes

- BSD systems:

  - FreeBSD package recipe (devel), FreeBSD package recipe and FreeBSD package overview
  - NetBSD recipe and NetBSD package overview
  - OpenBSD recipe
  - FreeNAS iocage-ports recipe, FreeNAS 9.3 docs on UPS integration and FreeNAS 11.3-U5 docs on UPS integration

- macOS 11+ and Mac OS X:

  - Homebrew formula
  - Fink recipe and Fink package overview
  - MacPorts recipe

- illumos/Solaris:

  - OpenIndiana oi-userland recipe and OpenIndiana latest rolling builds

- Windows (complete port, Beta):

  - Current regular CI builds are available as tarballs with binaries from Appveyor CI— but it may be difficult to locate specifically the master-branch builds. See NUT for Windows wiki article for these details, and more. These builds are location-agnostic, you can place their directory trees into any non-UNC Windows path you deem fit (the built-in `mingw{32,64}` prefix directory is also not required).

    The automatically generated binary build archive of the latest release is available here:

        [NOTE]
        Windows binaries may be quite large but sparse, so it may be useful to
        enable compression on the folder where you have unpacked a NUT tarball.

  - (OBSOLETE) Windows MSI installer 2.6.5-6

### 4.4. Java packages

- The jNut package has been split into its own GitHub repository.
- NUT Java support (client side, Beta) jNUT 0.2-SNAPSHOT
- NUT Java Web support (client side using REST, Beta) jNutWebAPI 0.2-SNAPSHOT (sources)

### 4.5. Virtualization packages

#### VMware

- NUT client for VMware ESXi (several versions of both; offsite, by René Garcia). Since the hypervisor manager environment lacks access to hardware ports, this package only includes the `upsmon` client integration, and a NUT server must run in a VM with passed-through ports.

  See NUT and VMware (ESXi) page on NUT Wiki for more community-contributed details.

  Note that the VIB package versioning is independent of NUT or VMware versions, they are however mentioned in downloadable file names. As of this writing, there are builds spanning VMware ESXi 5.0-8.0 and NUT 2.7.4-2.8.0.

  ### Warning

  This module is provided "as is" and is not approved by VMware, you may lose VMware support if you install it. Use it at your own risks.

  - GitHub repository with build recipes, including binary releases
  - Original blog entry (French)
  - Historic details of the recipe evolution
  - VIB package (in fact automatically redirects to latest build)

Prev |  | Next
| Home |