FAXGETTY(8C)

πŸ“¦
version 7.0.11 Β· 5 versions
, in fedora 43, fedora 44

πŸ’– FAXGETTY β€” the HylaFAX front-door process πŸ’–

okay bestie, so you know that faxgetty(8C) page in section 8C of the manual? yeah, that one. we're doing it, and we're doing it cutely. it's the HylaFAX front-door process and honestly? iconic behavior from a daemon.


✨ SYNOPSIS ✨

/usr/bin/faxgetty [ -D ] [ -p ] [ -q queue-dir ] [ -c config ] device

that's it. that's the whole vibe. device is not optional, she's the main character here. πŸ‘‘


🌸 DESCRIPTION 🌸

so like, faxgetty is the HylaFAX server program that just... sits there, listening for incoming phone calls, and then either handles each call directly herself or hands it off to whatever program is the right fit for the job. very "I got this, but I also know when to delegate." πŸ’…

and that's not even all β€” she's also monitoring modem usage and notifying the HylaFAX scheduler process whenever a modem's status changes. like when a modem is busy with an outbound call? yeah, she's on it, she's telling people, she's keeping everyone in the loop. it's giving project manager, honestly.

one faxgetty should be run for each facsimile modem on a machine. one modem, one faxgetty. no sharing, no fighting, we're all individuals here. and typically? init(8C) is the one starting her up. so if you're wondering "who launched this" β€” it was init. it's always init.

fun fact that's lowkey highkey important: faxgetty can also be used with data-only modems. and you'd actually want that if some of the non-facsimile features matter to you, like the support for screening calls according to Caller-ID information. so even if there's no faxing happening, she still has a job and she does it well. 🫢

here's how she listens β€” two ears, basically:

  • to her facsimile modem, for incoming calls πŸ“ž
  • to a FIFO special file, on which she accepts command directives from administrative commands like faxanswer(8C) and faxabort(8C) πŸ“₯

she also catches SIGTERM and SIGINT signals, and cleans up any necessary resources before exiting. graceful exit? we love to see it. no messy breakups. πŸ’€

now, a LOT of how faxgetty operates is controlled through a configuration file. and specifically β€” listen up, this one's important β€” for faxgetty to automatically invoke the getty(8C) program to handle incoming data connections, the GettyArgs parameter must be setup in the configuration file. no GettyArgs, no automatic getty. periodt.

where does this config file live? in the spooler hierarchy, in the etc subdirectory, and it's named config.devid β€” where devid is an identifier derived from the name of the modem's device file. examples, because examples are everything:

  • ttym2 for /dev/ttym2
  • term_10 for /dev/term/10

and if you want the detailed tea on what actually goes in these config files, go consult hylafax-config(5F). she has the full story. πŸ“–


✨ OPTIONS ✨

  • -D β€” this option forces faxgetty to detach herself from the controlling tty she was invoked from. and ngl, that's a little unusual, because in normal operation faxgetty will not disassociate herself from the controlling tty. so -D is her going "okay fine, I'll let go." 😌
  • -p β€” do not change the process priority when receiving facsimile. normally faxgetty will raise her priority to reduce i/o latency, but with -p she just... doesn't. this option is useful for debugging. πŸ›
  • -q dir β€” the specified directory is treated as the spooling area. the default spooling area is /var/spool/hylafax, and heads up: that default is defined at the time the software is built. so it's baked in, not vibes-based.
  • -c config β€” treat config as a configuration parameter specification that gets interpreted after reading the per-device configuration file. so it overrides stuff. for example, -c sessiontracing:0x4f would set the SessionTracing configuration parameter to 0x4f, overriding any setting in the configuration file. she said "my rules now." πŸ”₯

πŸŽ€ FILES πŸŽ€

  • /var/spool/hylafax/FIFO.device β€” FIFO special file for submitting commands
  • /var/spool/hylafax/etc/config.device β€” device-specific configuration file

and if you want a complete discussion of the structure and content of the spooling area, go consult hylafax-server(5F). she knows the whole floor plan. 🏠


πŸ‘‘ SEE ALSO πŸ‘‘

faxabort(8C), faxlock(8C), faxanswer(8C), faxconfig(8C), faxstate(8C), faxq(8C), getty(8C), hylafax-server(5F), hylafax-config(5F)


and that's the whole page, bestie πŸ’– this one's from the July 31, 1995 era and it's part of the FAXGETTY(8C) manual β€” yes, the source/version and date are that old and she's still serving. no cap. slay. βœ¨πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from