On Ubuntu, Fedora, Debian, or Arch, run the following to get PaSh up and running.
wget https://raw.githubusercontent.com/binpash/pash/main/scripts/up.sh
sh up.sh
cd pash
source python_pkgs/bin/activate
## Run PaSh with echo hi
pash -c "echo hi"If on other environments or prefer manual setup, there are essentially three steps required to set PaSh up:
- Clone repo:
git clone git@github.com:binpash/pash.git - Run
distro-deps.sh(withsudo) andsetup-pash.sh - Activate the virtual environment:
source python_pkgs/bin/activate
Most scripts support a --help flag that documents their options. These three steps are described in detail below, depending on the environment.
Quick Jump: Clone & Setup | Manual Setup | Docker Setup | Windows using WSL :
The following steps clone the repo, set up dependencies (e.g., compilers), and then build PaSh:
git clone git@github.com:binpash/pash.git
./pash/scripts/distro-deps.sh
./pash/scripts/setup-pash.shThese scripts have been tested on Ubuntu, Fedora, Debian, and Arch.
If Docker is available, PaSh can be used as part of a Docker container. Depending on the setup, PaSh running on Docker may or may not be able to exploit all available hardware resources. There are two main options for setting up PaSh on Docker:
Pull from DockerHub (Major Releases):
To pull the docker image from Docker Hub, run:
docker pull binpash/pashWe refresh this image (as well as other images) on every major release.
Build Image (Latest Commit):
To build the latest Docker container, run docker build in scripts/docker:
git clone git@github.com:binpash/pash.git
cd pash/scripts/docker/
docker build -f ./ubuntu/Dockerfile -t "pash:latest" .In the last line, replace ubuntu with fedora or debian to get the corresponding base.
To run the container:
docker run --name pash-play -it pash:latestPaSh can be found in the container's /opt/pash directory, so run cd pash; git pull to fetch the latest updates.
More information in the pash-on-docker guide.
To run PaSh on windows without Docker, install WSL. A short tutorial is included in the contributing guide.