-
Notifications
You must be signed in to change notification settings - Fork 0
A clone of mommy written in C for Unix
License
tiesinto/daddy
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
daddy - a C mommy clone
-----------------------
daddy is an implementation of mommy written in C with suckless software as the
basis for him. Should work on most Unix systems but he's only been tested on
OpenBSD, Artix and Debian.
This program differs from the mommy POSIX shell script in several ways:
* The caregivers' pronouns are assigned to their names, allowing you to have
several caregivers of different genders which can be chosen randomly;
* This adds cargo-mommy's 'denigrating terms' and 'part' (here changed to
'gift') for more flexibility with NSFW prompts;
* Changed from 'mommy' to 'daddy' by default so you can be the ultimate Freud
case study.
I was frustrated with the speed of mommy on older hardware but I'm addicted to
being praised and have daddy issues, so I decided to rewrite her in C with the
configuration in a config.h so that he will run instantly.
Installation
------------
Run this as root:
make clean install
Running daddy
-------------
By default daddy will output to stderr; to print to stdout instead use -1.
daddy will also color his output according to what you defined in your
config.h, however you can force unstyled text by using -c. daddy can also run
commands using whatever is set as sh in your PATH by using -e:
daddy -e "printf 'freud\n' | grep -q f"
daddy -e "printf 'freud\n' | grep -q x"
If you want pipefail, you must add it to your sh command (provided your
system's sh supports pipefail):
daddy -e 'set -o pipefail && cat sfdfsl | wc'
daddy will evaluate exit codes passed to him using -s. Any exit code 1 or
higher will prompt encouragement from daddy. Exit code 130 is ignored. This can
be used in tandem with -1 in order to integrate daddy with your shell, e.g.
zsh:
precmd(){
daddy -1s $?
}
precmd() is ideal for daddy as some of his responses may take up several lines,
which leads to unpredictable behaviour with $RPS1 unless you want to remove his
multiline responses from your config.h or pipe him into sed beforehand. If you
have anything else in precmd(), daddy must be the first command, otherwise $?
will evaluate to the exit code of the prior command in precmd().
If -e and -s are used simultaneously, -s takes precedence.
Configuration
-------------
To configure daddy simply create a custom config.h and recompile. Defaults can
be found in config.def.h.
Credits
-------
The bundled responses are taken from a few different mommies which are
acknowledged in comments in the config.def.h.
Thanks to fwdekker for inspiring me to make this.
About
A clone of mommy written in C for Unix
Topics
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published