Installation
Install the stable pysh-shell distribution from PyPI or verified GitHub Release packages.
Requirements
- ✓CPython 3.13.0 or newer, with no upper minor-version bound
- ✓A supported Unix family: Debian-family Linux, RPM-family Linux, or FreeBSD family
- ✓Unix/POSIX process, terminal, signal, filesystem, and executable-lookup facilities required by the documented shell contract
pysh command. It is not a /bin/sh provider and must not replace the operating-system shell used by system scripts or package-manager hooks.Install from PyPI
$ python3.13 -m pip install --upgrade pip
$ python3.13 -m pip install pysh-shell==1.0.0
$ pysh --version
pysh 1.0.0
$ python -m pysh --version
pysh 1.0.0
The PyPI package name is pysh-shell. It installs the pysh console command and can also be launched with python -m pysh.
GitHub Release native packages
Every stable release publishes wheel and sdist packages plus native .deb, .rpm, and FreeBSD .pkg artifacts.
Debian-family Linux
# Download the matching release asset first
$ sudo apt install ./pysh-shell_1.0.0-1_all.deb
$ pysh --version
The Debian package requires python3 >= 3.13 and is intended for compatible Debian, Ubuntu, Kali Linux, Linux Mint, Pop!_OS, and related Debian/Ubuntu-derived systems.
RPM-family Linux
# Download the matching release asset first
$ sudo dnf install ./pysh-shell-1.0.0-1.noarch.rpm
$ pysh --version
RPM-family runtime support includes Fedora, RHEL, Rocky Linux, AlmaLinux, and CentOS Stream families when the required CPython and Unix capabilities are present. Fedora 43 is the reference smoke environment.
FreeBSD / GhostBSD
# The published reference archive is built on FreeBSD 14.4 amd64 / CPython 3.13
$ sudo pkg add "./pysh-shell-1.0.0.pkg"
$ pysh --version
The published .pkg carries a native FreeBSD package ABI. An ABI mismatch does not mean PySH runtime support is absent; use Python packaging or build the canonical package on the target host instead of forcing an incompatible archive.
Windows and WSL
Verify release assets
$ gh release download v1.0.0 --repo SSobol77/pysh
$ sha256sum -c SHA256SUMS
# Provenance / Sigstore verification
$ gh attestation verify <artifact> --repo SSobol77/pysh --signer-workflow SSobol77/pysh/.github/workflows/release-artifacts.yml
Stable releases publish reproducibility evidence, SHA-256 checksums, one SPDX 2.3 JSON SBOM per package, and GitHub Artifact Attestations. The checksum, provenance, and SBOM controls are complementary.
Upgrade
$ python3.13 -m pip install --upgrade pysh-shell
$ pysh --version
Existing ~/.pyshrc.py user configuration is preserved across PyPI and native-package upgrades.
Troubleshooting installation
- ✓If pysh is not found after a user-level pip install, ensure the Python user-bin directory is on PATH.
- ✓Do not bypass a FreeBSD package ABI mismatch with forced pkg installation flags.
- ✓Use pysh --version and python -m pysh --version to confirm the installed distribution.