Go to file T
Code

amimir

Sleep for a given duration while a lullaby loops in the background.

amimir is a drop-in replacement for sleep that plays one of the bundled lullabies on repeat until the timer runs out — useful when you want the machine to wait, and the waiting to be audible. Durations use the usual s/m/h/d suffixes, so amimir 20m holds the terminal for twenty minutes without asking anyone to actually go to sleep.

Watch the demo

Installation

Requires an audio device. Install the CLI with uv:

$ uv tool install git+https://gitgud.io/Tima/amimir

Or run it without installing:

$ uvx --from git+https://gitgud.io/Tima/amimir amimir 35s

To work from a checkout instead:

$ git clone https://gitgud.io/Tima/amimir
$ cd amimir
$ uv run amimir 5m

Usage

Pause for 30 seconds while the default lullaby loops:

$ amimir 30

The duration accepts an s, m, h, or d suffix and may be fractional:

$ amimir 1.5h
$ amimir 90m
$ amimir 2d

Choose a lullaby by name:

$ amimir 10m --audio "honk shoo"

--list prints the names:

$ amimir --list
AUUGHH
farted
ghronk showowow
honk mimimi
honk shoo

Let amimir choose randomly:

$ amimir 10m --random

or randomly fresh every time a track ends:

$ amimir 1h --reshuffle

Options

Option Description
NUMBER Duration, with an optional s/m/h/d suffix.
-a, --audio NAME Loop the lullaby NAME.ogg.
-r, --random Loop one lullaby picked at random.
-R, --reshuffle Play a random lullaby, and a different one each time it ends.
-l, --list List the available lullabies and exit.
-h, --help Show help and exit.

--audio, --random, and --reshuffle are mutually exclusive.

License

MIT — see LICENSE.