Ponysay Save

Pony rewrite of cowsay.

Project README

ponysay — cowsay reimplemention for ponies.


Today your terminal, tomorrow the world!


Runtime dependencies

coreutils: stty in coreutils used to determine size of the terminal.

python>=3: ponysay is written in Python 3.

texinfo: for generating documentation during the installation.

Package building dependencies

gzip: Used for compressing manuals (suppressable with ./configure --without-info-compression --without-man-compression).

texinfo: Used for building the info manual (suppressable with ./configure --without-info).

python>=3: The installation process is written in Python 3.

Run ./dependency-test.sh if things are not working for you.

Installation on GNU/Linux (or other Unix implementations)

Download or clone the project. In the terminal, cd into the ponysay directory and ./setup.py --freedom=partial install or python3 setup.py --freedom=partial install. Superuser permissions might be required in order to run ./setup.py --freedom=partial install without --private, on most systems this can be achieved by running sudo ./setup.py --freedom=partial install. If installing only the completely free ponies is desired, --freedom=strict should be used instead of --freedom=partial. For additional information, an extensive manual in PDF is provided.

In order to use ponysay, run:

ponysay "I am just the cutest pony!"

Or if you have a specific pony in your mind:

ponysay -f pinkie "Partay!~"

Consult info ponysay, man 6 ponysay or ponysay -h for additional information. Spanish and Turkish manuals are also available: man -L es 6 ponysay and man -L tr 6 ponysay respectively.

Arch Linux

The package is in the official repositories as community/ponysay. A Git version is also present, named ponysay-git in AUR thanks to an upstream.


A git version of the package is available as ponysay-git in CCR, alongside a stable package called ponysay thanks to an upstream.

x86_64 (64bit) Linux

The package can be installed via Homebrew on Linux (Linuxbrew). Linuxbrew formula is available.


Running ponysay on Docker thanks to 'mpepping' is a easy as:

docker run -ti --rm mpepping/ponysay --help
docker run -ti --rm mpepping/ponysay -q
docker run -ti --rm mpepping/ponysay "foo"

Gentoo Linux

The package is in the official Gentoo repository as games-misc/ponysay.

Mac OS X (OSX) (macOS)

A ponysay Homebrew formula is available.

Microsoft™ Windows®


You could either run ponysay on:

OpenSuSe 13.2 or OpenSuSe Factory

The package is available in OpenSuSe 13.2 and Factory since 6th april 2014, if you want the individual rpm look here.


There is a PPA available thanks to 'vincent-c', specifically for ponysay, containing packages for all currently supported Ubuntu releases here.

This requires the fortune utility to be installed. It can install be from the distribution's repositories (might be named fortune-mod). Alternatively, one can just fetch the source code from here.

You can try this script or ponypipe to ponify fortunes.

Edit your ~/.bashrc and add this to the end of the file

fortune | ponysay

Afterwards, every time you open a terminal a pony should give you a fortune.

Pony quotes

Running ponysay -q will print a random pony saying one of its quotes from My Little Pony: Friendship is Magic. The pony can be specified: ponysay -q pinkie. Just as with -f, -q can be used multiple times to specify a set of ponies from which a single one will be selected randomly.

When running ponysay -l or ponysay -L the ponies with quotes will be printed in bold or bright (depending on the used terminal).

Ponies in TTY (Unix VT)

If you have a custom colour palette edit your ~/.bashrc and add

if [ "$TERM" = "linux" ]; then
    function ponysay
        exec ponysay "$@"

Read the PDF or info manual for more information.


Q: The output looks like a mess in (TTY/PuTTY/other)!

A: Unfortunately we cannot make it perfect, see issue 1. But we have done a lot, read more about how to get the best of the current state of the art has to offer in the manual.

Q: The output looks like a mess in (xfce4-terminal/mate-terminal/xterm/[...]) with (this) font!

A: We use blocks for printing the ponies, if the blocks are misaligned, or if you do not use a truly monospaced font with aligned blocks try another monospaced font, such as 'Fixed [...]' or 'Liberation Mono.'

Q: You are missing (my-favourite-pony)!

A: Ask and we'll add!

Q: Which programs do you use to generate the pony files?

A: The pony files are in fact mostly a bunch of selected browser ponies, converted using util-say, Other are taken from desktop ponies, and the others are created specifically for ponysay.

Q: This project look like abandoned...

A: Well, most dev and contributors has moved to more time consuming tasks so our time has been reduced, but we accept most PR for bugfixs and ponies (correctly built) and we're still looking for bug fixes and ponies, so stay tuned for the next release or pushes on the repository.

The PDF manual should answer most of your questions.

Open Source Agenda is not affiliated with "Ponysay" Project. README Source: erkin/ponysay
Open Issues
Last Commit
1 week ago

Open Source Agenda Badge

Open Source Agenda Rating