Skip to content

Installing pGenie on Linux

There are two ways to install pGenie on Linux: downloading a pre-built binary or building from source.


Option 1 — Pre-built Binary

Pre-built binaries for Linux (x86-64) are available on the pGenie releases page. The binary is distributed as a .tar.gz archive.

  1. Download the latest archive from the releases page:

    curl -fsSL https://github.com/pgenie-io/pgenie/releases/latest/download/pgn-linux-x86_64.tar.gz \
      -o pgn-linux-x86_64.tar.gz
    
  2. Extract the binary:

    tar -xzf pgn-linux-x86_64.tar.gz
    
  3. Move the binary to a directory on your PATH:

    sudo mv pgn-linux-x86_64 /usr/local/bin/pgn
    
  4. Verify the installation:

    pgn --help
    

Option 2 — From Source

Building from source gives you full control.

Stack

Stack manages the compiler and dependencies entirely on its own, making it the fastest path to building pGenie from source. No separate toolchain installation is required.

Install Stack

Run the official one-line installer:

curl -sSL https://get.haskellstack.org/ | sh

For platform-specific instructions and alternative install methods, see the official Stack installation guide.

Build and install pGenie

  1. Clone the repository:

    git clone https://github.com/pgenie-io/pgenie.git
    cd pgenie
    
  2. Install the pgn executable:

    stack install
    

    Stack will download the required GHC version automatically if needed, compile pGenie, and install the pgn binary into ~/.local/bin/.

  3. Ensure ~/.local/bin is on your PATH. Add the following to your shell profile (.bashrc, .zshrc, etc.):

    export PATH="$HOME/.local/bin:$PATH"
    
  4. Verify the installation:

    pgn --help
    

Cabal

Cabal is the standard Haskell build tool. It requires a GHC compiler to be installed separately, which you can obtain via GHCup.

Prerequisites

Install the Haskell toolchain via GHCup:

curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

Follow the prompts. GHCup will install GHC and Cabal.

Build and install pGenie

  1. Clone the repository:

    git clone https://github.com/pgenie-io/pgenie.git
    cd pgenie
    
  2. Install the pgn executable:

    cabal install
    

    Cabal will compile pGenie and install the pgn binary into ~/.cabal/bin/.

  3. Ensure ~/.cabal/bin is on your PATH. Add the following to your shell profile (.bashrc, .zshrc, etc.):

    export PATH="$HOME/.cabal/bin:$PATH"
    
  4. Verify the installation:

    pgn --help
    

Docker Requirement

Docker must be running as a daemon before invoking pgn:

systemctl start docker
# or
sudo service docker start

Your user should be in the docker group to avoid requiring sudo:

sudo usermod -aG docker $USER
newgrp docker