Skip to main content

doge

PyPI - Version PyPI - Downloads PyPI - Python Version Ruff GitHub License

wow screenshot

doge is a simple motd script based on the slightly stupid but very funny doge meme. It prints random grammatically incorrect statements that are sometimes based on things from your computer.

If you have uv or pipx (you should!), you can try out doge without installing it permanently.
Just type uvx doge or pipx run doge in your terminal to see if you enjoy it. 🐶
If you do, uv tool install doge or pipx install doge to keep it around! 👍

Features

  • Randomly placed and colored random strings, complete with broken english.
  • Awesome Shibe 😎 in the terminal.
  • Fetching of system data, such as hostname, running processes, current user and $EDITOR.
  • If you have 🌈 lolcat, you can do this gem:
    while true; do doge | lolcat -a -d 100 -s 100 -p 1; done (thx hom3chuk)
  • stdin support: ls /usr/bin | doge will doge-print some of the executables found in /usr/bin. wow. There are also multiple command line switches that control filtering and statistical frequency of words. See doge -h, wow.
    • To use all dictionary words that start or end with "dog", try:
      egrep '(^dog|dog$)' /usr/share/dict/words | fgrep -v "'s" | doge

Notes

You need a terminal that supports 256 colors running on a system that supports unicode.

The terminal Shibe was created with hax0r Gimp skills and img2xterm.

Installation

There are several options for installing and running a Python CLI application such as doge.

Python-Based Install (Recommended)

The best way is to install doge directly from PyPI with either uv or pipx:

  • uv tool install doge -- this is the recommended method, but you need uv installed and configured.
    • uv is usually the best way to install and run Python-based applications from PyPI, so if you don't yet have it, you should! 👍
    • To install newer versions, run uv tool upgrade doge or uv tool upgrade --all.
  • The other option is to use pipx: pipx install doge

Alternatively, you could also:

Then, just add a call to doge at the bottom of your shell rc file.

If you don't want to install doge with the options above for whatever reason, there is a proper pyproject.toml included, so inside a virtual environment, python -m pip install -e . should work just fine.

Package Managers And Linux Distributions

Your package manager or Linux distribution might carry a downstream doge package.

If you choose this option, and experience any installation problems, then please report them to your downstream package maintainer.

Packaging status

Packaging status

Please note that it might take some time for downstream packages to catch up with PyPI. The recommended installation with uv or pipx will always give you the latest version.

Metadata

Release files for doge 3.9.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for doge 3.9.1
File Size Uploaded
doge-3.9.1.tar.gz 91.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for doge 3.9.1
File Interpreter ABI Platform
doge-3.9.1-py3-none-any.whl Python 3 none any Details

Total release size: 125.6 kB

Release files / doge-3.9.1.tar.gz

Download URL doge-3.9.1.tar.gz
Size 91.1 kB
Tags Source
SHA-256 checksum
How to use checksums
7436f07d6c933fd76a562740c8d9539146400232b29de020a17e43173c831571
BLAKE2b-256 checksum
How to use checksums
bc660d1a606b8723d3d33eaf529568c91d6d7a9989a9ddda79af76bee51a3036
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / doge-3.9.1-py3-none-any.whl

Download URL doge-3.9.1-py3-none-any.whl
Size 34.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c076689ae994fdc0ccf2c21e64245591a525999a3a627e765afec431c176cab5
BLAKE2b-256 checksum
How to use checksums
c6247370a40d3f3517e91b0eaee91ef8220638e34aae94051a7b0c45d3a7e6af
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

3.9.1 This release

2 release files

3.9.0

2 release files

3.8.0

2 release files

3.7.0

2 release files

3.5.0

1 release file

3.4.0

1 release file

3.3.0

1 release file

3.2.0

1 release file

3.1.0

1 release file

3.0.0

1 release file

2.2.1

1 release file

2.2.0

1 release file

2.1.0

1 release file

2.0.0

1 release file

1.1.0

1 release file

1.0.0

1 release file

0.9.0

1 release file

0.8.0

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.1

1 release file

0.6.0

1 release file

0.5.1

1 release file

0.5.0

1 release file

0.4.1

1 release file

0.4.0

1 release file

0.3

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page