conf: add missing passenv to tty blocks

The line-based format has had the flag since v4.4 (issue #286), where
it prepends -p to the built-in getty, which turns it into login -p and
passes the environment on.  The block format was written from the three
documented tty variants and the flags listed in the tty documentation,
and passenv was in neither, so it was left out.  Converting a tty line
that used it therefore lost it, with nothing said.

It only reaches the built-in getty.  An external getty is handed its
arguments through command, so there is nowhere to put a -p, and the
setting is refused with a warning rather than quietly ignored.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg committed 2026-08-05 17:59:11 +02:00
1 parent 96c5b4b031
commit 6b77a16f8b
10 files changed
+109 -24

No files matched your search

+10
View File
@@ -41,6 +41,16 @@ assert_num_services()
assert "$1 services are loaded" "$(texec initctl -t status "$2" | wc -l)" -eq "$1"
}
# Unlike assert_num_services() this matches the identity exactly, so
# 'foo' does not count 'foobar', and an instance must be spelled out as
# 'foo:1'. initctl status prints a detail block for a single match and
# a table only for several, hence counting lines in the full listing.
assert_loaded()
{
assert "Service $1 loaded: $2" \
"$(texec initctl -t status | awk -v n="$1" '$2 == n' | wc -l)" -eq "$2"
}
assert_forking()
{
assert "service $1 forking:$2" "$(texec initctl -j status "$1" | jq -M .forking)" = "$2"