3. Install¶
This section documents how to setup PEAT for optimal use on each supported platform. Refer to Operate for next steps after completing installation.
PEAT is distributed in multiple formats customized to each supported platform. All formats are included in official releases on GitHub. If you need to build the executables manually or know more about the various distribution methods, refer to the Packaging and distribution of PEAT.
3.1. Installation¶
The recommended method of installation for most users is to use the latest pre-built executable release (peat on Linux and peat.exe on Windows). Additionally, a Container image is available for use with Docker or Podman.
3.1.1. Linux¶
The recommended method of installation for most users is to run the Bash script, however other methods of installation are documented here in case the installation script doesn’t work for your use case.
3.1.1.1. Scripted installation¶
# Download script
curl -fL https://raw.githubusercontent.com/sandialabs/PEAT/refs/heads/main/scripts/install_peat.sh
# Verify script contents to ensure they are trusted
less install_peat.sh
# Run script
chmod +rx install_peat.sh
sudo ./install_peat.sh
# Verify installation
peat --version
man peat
3.1.1.2. Manual Installation¶
These steps are intended for use in environments where there is no Internet access (or access is restricted). The manual page is optional, but recommended.
Warning
This assumes the files peat and peat.1 are in the current working directory.
sudo cp ./peat /usr/local/bin/peat
sudo chmod +rx /usr/local/bin/peat
# Verify installation
peat --version
# Install the manual page ("manpage")
sudo mkdir -p /usr/local/share/man/man1/
sudo cp ./peat.1 /usr/local/share/man/man1/
# (Optional) Update manpage database
# If this command fails, then the package "man-db" needs to be installed
# sudo apt install -y man-db
sudo mandb
# Verify manual page
man peat
3.1.1.3. Usage without installation¶
Warning
This assumes the file peat.exe in the current working directory.
# Mark the file as executable, then run to verify it works
chmod u+x ./peat
./peat --version
# View man page
man ./peat.1
3.1.2. Windows¶
The Windows distribution does not require any special installation steps and is usually run from wherever the exectuable is copied to. However, there is a install script that will place it in Local AppData and add to user’s PATH for a more persistent installation.
We recommend verifying that the executable works before using it in a deployed environment. There are some special considorations regarding usage, refer to Note about Windows usage for further details.
3.1.2.1. Scripted installation¶
powershell -ExecutionPolicy ByPass -c "irm https://raw.githubusercontent.com/sandialabs/PEAT/refs/heads/main/scripts/install_peat.ps1 | iex"
3.1.2.2. Usage without installation¶
.\peat.exe --version
.\peat.exe --help
3.1.3. Container¶
The Container image provides a isolated and reliable method of executing PEAT on any platform with a container runtime. It is usable with both Docker and Podman. Refer to the Containers (Docker/Podman) documentation for further details on the Container distribution and it’s usage.
3.1.3.1. Docker¶
docker pull ghcr.io/sandialabs/peat:latest
# Verify the container is able to run
docker run -i ghcr.io/sandialabs/peat:latest --version
docker run -i ghcr.io/sandialabs/peat:latest --help
3.1.3.2. Podman¶
podman pull ghcr.io/sandialabs/peat:latest
# Verify the container is able to run
podman run -i ghcr.io/sandialabs/peat:latest --version
podman run -i ghcr.io/sandialabs/peat:latest --help
3.1.3.3. Offline system install¶
The container image can be used on isolated or Internet-restricted networks by downloading the image on a Internet-connected system, exporting it to a file, copying to the isolated network, then loading the image from the tar. This should also work for Podman.
On the Internet-connected system, pull the PEAT container image
docker pull ghcr.io/sandialabs/peat:latest
Save the image to a tar file for transfer
docker save -o peat_docker_image.tar ghcr.io/sandialabs/peat:latest
Copy
peat_docker_image.tarto the isolated system (for example, via approved removable media or transfer mechanism).On the isolated system, load the image from the tar file
docker load -i peat_docker_image.tar
Verify the container runs and reports its version
docker run -i ghcr.io/sandialabs/peat:latest --version
3.2. PEAT Releases¶
PEAT releases are managed via GitHub Releases, and usually consist of the following:
The Linux and Windows executables (
peatandpeat.exe)The Python source distribution (
.tar.gz) and binary wheel (.whl)The Linux man page (
peat.1file)The Container image via GitHub Container Registry (
ghcr.io)The documentation in HTML format (
peat_docs.zip)Sneakypeat executables (
sneakypeatandsneakypeat.exe)