original programmer daemon
Project description
NAME
OPD - original programmer daemon
SYNOPSIS
opd opd <cmd> [key=val] [key==val] opd [-a] [-c] [-v]
DESCRIPTION
OPD is a python3 library implementing the 'opd' package. It provides all the tools to program a bot, such as disk perisistence for configuration files, event handler to handle the client/server connection, code to introspect modules for commands, deferred exception handling to not crash on an error, a parser to parse commandline options and values, etc. OPD provides a demo bot, it can connect to IRC, fetch and display RSS feeds, take todo notes, keep a shopping list and log text. You can also copy/paste the service file and run it under systemd for 24/7 presence in a IRC channel. OPD is Public Domain.
INSTALL
$ pipx install opd
USAGE
without any argument the program starts itself as a daemon $ opd $ if there is already a daemon running the program won't start $ bin/opd daemon is already running. provding a command it will run it in the cli $ opd cmd cmd,err,mod,req,thr,ver $ the -c option starts a console $ opd -c > the -v option turns on verbose $ opd -cv OPD CV started Sat Feb 10 13:50:56 2024 > use mod= to load additional modules $ opd mod=rss $ the ``mod`` command shows a list of modules $ opd mod cmd,err,fnd,irc,log,mod,req,rss,tdo,thr $ the -a option will load all available modules
CONFIGURATION
irc $ opd cfg server=<server> $ opd cfg channel=<channel> $ opd cfg nick=<nick> sasl $ opd pwd <nsvnick> <nspass> $ opd cfg password=<frompwd> rss $ opd rss <url> $ opd dpl <url> <item1,item2> $ opd rem <url> $ opd nme <url> <name>
COMMANDS
cmd - commands cfg - irc configuration dlt - remove a user dpl - sets display items fnd - find objects log - log some text met - add a user mre - displays cached output pwd - sasl nickserv name/pass rem - removes a rss feed req - reconsider rss - add a feed thr - show the running threads
SYSTEMD
save the following in /etc/systemd/system/opd.service and replace "<user>" with the user running pipx [Unit] Description=original programmer daemon Requires=network.target After=network.target [Service] Type=simple User=<user> Group=<user> WorkingDirectory=/home/<user>/.opd ExecStart=/home/<user>/.local/pipx/venvs/opd/bin/opd RemainAfterExit=yes [Install] WantedBy=multi-user.target then run this $ mkdir ~/.opd $ sudo systemctl enable opd --now default channel/server is #opd on localhost
FILES
~/.opd ~/.local/bin/opd ~/.local/pipx/venvs/opd/ ~/.local/pipx/venvs/opd/share/doc/opd/README.rst
AUTHOR
Bart Thate <bthate@dds.nl>
COPYRIGHT
OPD is Public Domain.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
opd-201.tar.gz
(26.7 kB
view details)
File details
Details for the file opd-201.tar.gz
.
File metadata
- Download URL: opd-201.tar.gz
- Upload date:
- Size: 26.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6638fa2eb9e4917fa7853b8a4bbb06a33ea29c360f27f8ce5ce32767d7a20a67 |
|
MD5 | c3c4d45249e34cc0868b7f122cf48deb |
|
BLAKE2b-256 | 48c4b5822327f308d9d931a68c34d78f386b7c92ab7787bbb001591a4f588ec8 |