GEREAL-GENERATOR(8)
β¨ GEREAL-GENERATOR π
okay so bestie, welcome to gereal-generator, section 8 of the system administration girlies π it lives in the gereal-generator(8) manual, and it is literally the systemd generator for gereal serial console sessions. no cap.
πΈ NAME πΈ
gereal-generator β systemd generator for gereal serial console sessions. that's it, that's the whole vibe β¨
π SYNOPSIS π
gereal-generator unitdir runtime-dir sysconf-dir
three args, in that order, fr fr π«Ά
π DESCRIPTION π
okay so gereal-generator is a systemd generator that gereal(8) uses to dynamically generate systemd service units for the serial console sessions you defined over in gereal.conf(5). it's giving matchmaker but for units π
the generator gets invoked automatically by systemd at boot time, and again every single time someone runs systemctl daemon-reload. so like, it's on autopilot. it is not meant to be run manually by users β do not be the main character here, bestie π
for each configured session, the generator creates a corresponding systemd service unit that starts and supervises a detached GNU screen session. obsessed.
and yes, gereal-generator implements systemd.generator(7). so it's official official π
π₯ OPERATION π₯
on invocation, gereal-generator reads the configuration file /etc/gereal/gereal.conf. first thing, every time, periodt.
for each session defined in the configuration, a systemd service unit named:
gereal-session.service
is generated in the generator output directory. one unit per session, no skips, no shortcuts β¨
and if a session has enable: true set in the configuration, the generator also creates the necessary symlink so the unit is started automatically as part of multi-user.target. that's the auto-start glow-up π¦
π GENERATED UNITS π
the generated units have the following properties:
- they are system-level services.
- they run
screenin detached mode, creating a screen session namedgereal:session. - they run under the configured
UserandGroup. - they are restarted automatically if the
screenprocess exits. - they log session start events via
logger(1).
likeβ¦β¦ five things and every one of them is iconic π
π VALIDATION π
the generator does some basic validation before generating units. vibe check first, always.
units are not generated if:
- the configuration file cannot be read or parsed.
- required session fields are missing.
- the configured user or group does not exist on the system.
in these cases, an error is written to standard error and the generator exits with status 0, as required for systemd generators.
bestie listen β that exit status0is not a bug and it is not the generator being chill about failure. it's required, because a non-zero exit from a generator is rude to the boot process. so it screams into stderr and then politely leaves with0π
π₯οΈ SCREEN CONFIGURATION π₯οΈ
by default, screen is started using:
/etc/gereal/screenrc
but β¨ if a file named:
/etc/gereal/screenrc-<session>
exists, it is used instead for that session. per-session customization, we love to see it π
π§ ENVIRONMENT π§
SYSTEMD_GENERATOR_OUTPUTβ if set, specifies the directory into which generated units are written. otherwise, the default systemd generator directory is used.DEBUGβ if set to any value, enables debug output from the generator. yes, any value. it's giving simple.
β EXIT STATUS β
the generator always exits with status 0 unless invoked incorrectly. this ensures that system boot is not interrupted. the generator is a considerate queen and would never derail your boot π«Ά
π SECURITY CONSIDERATIONS π
okay this part is the serious part so let's lock in π€
the generator creates services that run serial consoles under specified users and groups. access to serial devices often implies privileged access to connected hardware. so like, that's a lot of power in those little device nodes.
administrators should ensure that device permissions, users, and groups are configured appropriately. please actually do this, bestie, not just think about it π
enabling multiuser access or setuid root on screen has additional security implications and should be carefully reviewed. that is a real warning, not a vibe. review it carefully, fr fr.
π SEE ALSO π
gereal.conf(5), gerealctl(1), screen(1), systemd.generator(7), systemctl(1)
π AUTHOR π
Marc Haber <mh+debian-packages@zugschlus.de> β thank you for your service, king π
and that's the whole page, bestie!! this was gereal edition from January 2026, and you just read GEREAL-GENERATOR(8) β go forth, read your gereal.conf(5), and slay your serial consoles πΈβ¨π bye!!
π¦ where this page comes from
- ubuntu stonking: gereal 0.1.1-1 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms