NAME
Fugu - OpenBSD-style daemon utilities for Perl
SYNOPSIS
use Fugu::Daemon;
use Fugu::Log;
use Fugu::EventLoop;
DESCRIPTION
Fugu gives a Perl daemon the plumbing that OpenBSD daemons share. The utilities live in the Fugu:: modules, one concern each. This lead module holds no code: it names the distribution, and this document is the module index.
The distribution also ships Protocol::Imsg, a sans-IO codec for the imsg(3) frame.
Fugu needs core Perl only (v5.36). Every CPAN module it can use is an optional feature, loaded lazily.
MODULES
- Fugu::CLI - subcommand dispatch for a command-line tool
- Fugu::Config - the OpenBSD-style configuration grammar
- Fugu::Control - a control socket for a running daemon
- Fugu::Daemon - daemonization for Perl programs
- Fugu::EventLoop - one select loop for a daemon with one process
- Fugu::File - file operations for a daemon and its tools
- Fugu::Imsg - imsg messages over a connected stream socket
- Fugu::JSONSocket - newline-delimited JSON over a UNIX socket
- Fugu::Log - logging to syslog, standard error, or nowhere
- Fugu::MQTT - a subscribing MQTT client for a single-threaded daemon
- Fugu::Mdnsd - control mdnsd over its control socket
- Fugu::Pidfile - locked PID file
- Fugu::Privdrop - permanent drop of root privileges
- Fugu::Process - child process management
- Fugu::Proxy - a caching HTTP proxy
- Fugu::Random - random bytes and random passwords
- Fugu::SSH - run a command on another machine over SSH
- Fugu::Sandbox - pledge and unveil as a platform abstraction
- Fugu::Signal - signal handlers for graceful shutdown
- Fugu::StateFile - a small JSON state file
- Fugu::TestLog - a quiet process default logger for a test file
- Fugu::Timeout - run something under a time limit
- Protocol::Imsg - the OpenBSD imsg(3) frame, as bytes
SEE ALSO
The development guide and the release flow live in the repository at https://github.com/FuguBSD/Fugu.
AUTHORS
Dick Olsson <hi@senzilla.io>