summaryrefslogtreecommitdiffstats
path: root/templates/man8/systemd-soft-reboot.service.8.pot
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-17 10:51:52 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-06-17 10:51:52 +0000
commit4ad94864781f48b1a4b77f9cfb934622bf756ba1 (patch)
tree3900955c1886e6d2570fea7125ee1f01bafe876d /templates/man8/systemd-soft-reboot.service.8.pot
parentAdding upstream version 4.22.0. (diff)
downloadmanpages-l10n-4ad94864781f48b1a4b77f9cfb934622bf756ba1.tar.xz
manpages-l10n-4ad94864781f48b1a4b77f9cfb934622bf756ba1.zip
Adding upstream version 4.23.0.upstream/4.23.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'templates/man8/systemd-soft-reboot.service.8.pot')
-rw-r--r--templates/man8/systemd-soft-reboot.service.8.pot478
1 files changed, 428 insertions, 50 deletions
diff --git a/templates/man8/systemd-soft-reboot.service.8.pot b/templates/man8/systemd-soft-reboot.service.8.pot
index fe4732f2..0d804365 100644
--- a/templates/man8/systemd-soft-reboot.service.8.pot
+++ b/templates/man8/systemd-soft-reboot.service.8.pot
@@ -7,7 +7,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2024-03-01 17:11+0100\n"
+"POT-Creation-Date: 2024-06-01 06:29+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -24,7 +24,7 @@ msgid "SYSTEMD-SOFT-REBOOT\\&.SERVICE"
msgstr ""
#. type: TH
-#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid "systemd 255"
msgstr ""
@@ -74,6 +74,7 @@ msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid ""
"systemd-soft-reboot\\&.service is a system service that is pulled in by soft-"
"reboot\\&.target and is responsible for performing a userspace-only reboot "
@@ -105,6 +106,7 @@ msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid ""
"The third phase of regular shutdown, i\\&.e\\&. the return to the initrd "
"context\\&."
@@ -112,26 +114,31 @@ msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid "The hardware reboot operation\\&."
msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid "The firmware initialization\\&."
msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid "The boot loader initialization\\&."
msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid "The kernel initialization\\&."
msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid "The initrd initialization\\&."
msgstr ""
@@ -214,7 +221,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: archlinux debian-unstable fedora-rawhide mageia-cauldron opensuse-tumbleweed
msgid ""
"Service processes may continue to run over the transition, past soft-reboot "
"and into the next session, if they are placed in services that remain active "
@@ -224,7 +231,7 @@ msgid ""
"I<SurviveFinalKillSignal=yes>, and also be configured to avoid being stopped "
"on isolate via I<IgnoreOnIsolate=yes>\\&. They also have to be configured to "
"be stopped on normal shutdown, reboot and maintenance mode\\&. Finally, they "
-"have to be ordered after B<basic\\&.target> to ensure correct ordeering on "
+"have to be ordered after B<basic\\&.target> to ensure correct ordering on "
"boot\\&. Note that in case any new or custom units are used to isolate to, "
"or that implement an equivalent shutdown functionality, they will also have "
"to be configured manually for correct ordering and conflicting\\&. For "
@@ -232,7 +239,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
"[Unit]\n"
@@ -257,6 +264,7 @@ msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
"[Service]\n"
@@ -275,7 +283,8 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid ""
"If the unit publishes a service over D-Bus, the connection needs to be re-"
"established after soft-reboot as the D-Bus broker will be stopped and then "
@@ -284,13 +293,14 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid "/* SPDX-License-Identifier: MIT-0 */\n"
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
"/* Implements a D-Bus service that automatically reconnects when the system bus is restarted\\&.\n"
@@ -303,7 +313,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
"E<lt>?xml version=\"1\\&.0\"?E<gt> E<lt>!--*-nxml-*--E<gt>\n"
@@ -318,7 +328,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" E<lt>policy context=\"default\"E<gt>\n"
@@ -329,7 +339,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" *\n"
@@ -344,7 +354,8 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
"#include E<lt>errno\\&.hE<gt>\n"
@@ -354,13 +365,14 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid "#define _cleanup_(f) __attribute__((cleanup(f)))\n"
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
"#define check(x) ({ \\e\n"
@@ -373,7 +385,8 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
"typedef struct object {\n"
@@ -384,7 +397,8 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
"static int property_get(\n"
@@ -398,13 +412,15 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid " object *o = userdata;\n"
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
" if (strcmp(property, \"Example\") == 0)\n"
@@ -412,7 +428,8 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
" return sd_bus_error_setf(error,\n"
@@ -423,7 +440,8 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
"/* https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_add_object\\&.html */\n"
@@ -439,13 +457,14 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid "static int setup(object *o);\n"
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
"static int on_disconnect(sd_bus_message *message, void *userdata, sd_bus_error *ret_error) {\n"
@@ -455,7 +474,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
"/* Ensure the event loop exits with a clear error if acquiring the well-known service name fails */\n"
@@ -465,13 +484,15 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid " const sd_bus_error *error = sd_bus_message_get_error(m);\n"
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
" if (sd_bus_error_has_names(error, SD_BUS_ERROR_TIMEOUT, SD_BUS_ERROR_NO_REPLY))\n"
@@ -479,7 +500,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" printf(\"Failed to request name: %s\\en\", error-E<gt>message);\n"
@@ -488,7 +509,8 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
" return 1;\n"
@@ -496,7 +518,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
"static int setup(object *o) {\n"
@@ -512,7 +534,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" /* Set up a new bus object for the system bus, configure it to wait for D-Bus to be available\n"
@@ -535,7 +557,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" /* Publish an interface on the bus, specifying our well-known object access\n"
@@ -582,7 +604,8 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
#, no-wrap
msgid ""
" return 0;\n"
@@ -590,7 +613,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
"int main(int argc, char **argv) {\n"
@@ -608,7 +631,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" /* Create an event loop data structure, with default parameters\\&.\n"
@@ -618,7 +641,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" /* By default the event loop will terminate when all sources have disappeared, so\n"
@@ -630,13 +653,13 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid " check(setup(&o));\n"
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" /* Enter the main loop, it will exit only on sigint/sigterm\\&.\n"
@@ -646,7 +669,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: archlinux debian-unstable mageia-cauldron
+#: archlinux fedora-40 mageia-cauldron opensuse-tumbleweed
#, no-wrap
msgid ""
" /* https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_release_name\\&.html */\n"
@@ -655,6 +678,7 @@ msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid ""
"Even though passing resources from one soft reboot cycle to the next is "
"possible this way, we strongly suggest to use this functionality sparingly "
@@ -701,6 +725,7 @@ msgstr ""
#. type: Plain text
#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
msgid ""
"Note that if a new root file system has been set up on \"/run/nextroot/\", a "
"B<soft-reboot> will be performed when the B<reboot> command is invoked\\&."
@@ -741,13 +766,13 @@ msgid "\\%https://systemd.io/PORTABLE_SERVICES"
msgstr ""
#. type: TH
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid "systemd 254"
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid ""
"systemd-soft-reboot\\&.service is a system service that is pulled in by soft-"
"reboot\\&.target and is responsible for performing a userspace-only reboot "
@@ -761,39 +786,39 @@ msgid ""
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid ""
"The third phase of regular shutdown, i\\&.e\\&. the return to the initrd "
"context"
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid "The hardware reboot operation"
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid "The firmware initialization"
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid "The boot loader initialization"
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid "The kernel initialization"
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid "The initrd initialization"
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid ""
"Service processes may continue to run over the transition, if they are "
"placed in services that remain active until the very end of shutdown (which "
@@ -804,7 +829,7 @@ msgid ""
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid ""
"Even though passing resources from one soft reboot cycle to the next is "
"possible this way, we strongly suggest to use this functionality sparingly "
@@ -833,17 +858,370 @@ msgid ""
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid "systemd and Storage Daemons for the Root File System"
msgstr ""
#. type: Plain text
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
msgid "\\%https://systemd.io/ROOT_STORAGE_DAEMONS"
msgstr ""
#. type: IP
-#: debian-bookworm opensuse-leap-15-6 opensuse-tumbleweed
+#: debian-bookworm opensuse-leap-15-6
#, no-wrap
msgid " 2."
msgstr ""
+
+#. type: TH
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid "systemd 256~rc3"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+"[Unit]\n"
+"Description=My Surviving Service\n"
+"SurviveFinalKillSignal=yes\n"
+"IgnoreOnIsolate=yes\n"
+"DefaultDependencies=no\n"
+"After=basic\\&.target\n"
+"Conflicts=reboot\\&.target kexec\\&.target poweroff\\&.target halt\\&.target rescue\\&.target emergency\\&.target\n"
+"Before=shutdown\\&.target rescue\\&.target emergency\\&.target\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+"/* A D-Bus service that automatically reconnects when the system bus is\n"
+" * restarted\\&.\n"
+" *\n"
+" * Compile with \\*(Aqcc sd_bus_service_reconnect\\&.c $(pkg-config --libs --cflags libsystemd)\\*(Aq\n"
+" *\n"
+" * To allow the program to take ownership of the name \\*(Aqorg\\&.freedesktop\\&.ReconnectExample\\*(Aq,\n"
+" * add the following as /etc/dbus-1/system\\&.d/org\\&.freedesktop\\&.ReconnectExample\\&.conf\n"
+" * and then reload the broker with \\*(Aqsystemctl reload dbus\\*(Aq:\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+"E<lt>?xml version=\"1\\&.0\"?E<gt> E<lt>!--*-nxml-*--E<gt>\n"
+"E<lt>!DOCTYPE busconfig PUBLIC \"-//freedesktop//DTD D-BUS Bus Configuration 1\\&.0//EN\"\n"
+" \"http://www\\&.freedesktop\\&.org/standards/dbus/1\\&.0/busconfig\\&.dtd\"E<gt>\n"
+"E<lt>busconfigE<gt>\n"
+" E<lt>policy user=\"root\"E<gt>\n"
+" E<lt>allow own=\"org\\&.freedesktop\\&.ReconnectExample\"/E<gt>\n"
+" E<lt>allow send_destination=\"org\\&.freedesktop\\&.ReconnectExample\"/E<gt>\n"
+" E<lt>allow receive_sender=\"org\\&.freedesktop\\&.ReconnectExample\"/E<gt>\n"
+" E<lt>/policyE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" E<lt>policy context=\"default\"E<gt>\n"
+" E<lt>allow send_destination=\"org\\&.freedesktop\\&.ReconnectExample\"/E<gt>\n"
+" E<lt>allow receive_sender=\"org\\&.freedesktop\\&.ReconnectExample\"/E<gt>\n"
+" E<lt>/policyE<gt>\n"
+"E<lt>/busconfigE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" *\n"
+" * To get the property via busctl:\n"
+" *\n"
+" * $ busctl --user get-property org\\&.freedesktop\\&.ReconnectExample \\e\n"
+" * /org/freedesktop/ReconnectExample \\e\n"
+" * org\\&.freedesktop\\&.ReconnectExample \\e\n"
+" * Example\n"
+" * s \"example\"\n"
+" */\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+"static int log_error(int r, const char *str) {\n"
+" fprintf(stderr, \"%s failed: %s\\en\", str, strerror(-r));\n"
+" return r;\n"
+"}\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+"static int on_disconnect(sd_bus_message *message, void *userdata, sd_bus_error *ret_error) {\n"
+" int r;\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" r = setup((object *)userdata);\n"
+" if (r E<lt> 0) {\n"
+" object *o = userdata;\n"
+" r = sd_event_exit(*o-E<gt>event, r);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_event_exit()\");\n"
+" }\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+"/* Ensure the event loop exits with a clear error if acquiring the well-known\n"
+" * service name fails */\n"
+"static int request_name_callback(sd_bus_message *m, void *userdata, sd_bus_error *ret_error) {\n"
+" int r;\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" if (!sd_bus_message_is_method_error(m, NULL))\n"
+" return 1;\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" fprintf(stderr, \"Failed to request name: %s\\en\", error-E<gt>message);\n"
+" object *o = userdata;\n"
+" r = sd_event_exit(*o-E<gt>event, -sd_bus_error_get_errno(error));\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_event_exit()\");\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+"static int setup(object *o) {\n"
+" int r;\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" /* If we are reconnecting, then the bus object needs to be closed, detached\n"
+" * from the event loop and recreated\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_detach_event\\&.html\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_close_unref\\&.html\n"
+" */\n"
+" if (*o-E<gt>bus) {\n"
+" r = sd_bus_detach_event(*o-E<gt>bus);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_detach_event()\");\n"
+" *o-E<gt>bus = sd_bus_close_unref(*o-E<gt>bus);\n"
+" }\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" /* Set up a new bus object for the system bus, configure it to wait for D-Bus\n"
+" * to be available instead of failing if it is not, and start it\\&. All the\n"
+" * following operations are asynchronous and will not block waiting for D-Bus\n"
+" * to be available\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_new\\&.html\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_set_address\\&.html\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_set_bus_client\\&.html\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_negotiate_creds\\&.html\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_set_watch_bind\\&.html\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_set_connected_signal\\&.html\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_start\\&.html\n"
+" */\n"
+" r = sd_bus_new(o-E<gt>bus);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_new()\");\n"
+" r = sd_bus_set_address(*o-E<gt>bus, \"unix:path=/run/dbus/system_bus_socket\");\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_set_address()\");\n"
+" r = sd_bus_set_bus_client(*o-E<gt>bus, 1);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_set_bus_client()\");\n"
+" r = sd_bus_negotiate_creds(*o-E<gt>bus, 1, SD_BUS_CREDS_UID|SD_BUS_CREDS_EUID|SD_BUS_CREDS_EFFECTIVE_CAPS);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_negotiate_creds()\");\n"
+" r = sd_bus_set_watch_bind(*o-E<gt>bus, 1);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_set_watch_bind()\");\n"
+" r = sd_bus_start(*o-E<gt>bus);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_start()\");\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" /* Publish an interface on the bus, specifying our well-known object access\n"
+" * path and public interface name\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_add_object\\&.html\n"
+" * https://dbus\\&.freedesktop\\&.org/doc/dbus-tutorial\\&.html\n"
+" */\n"
+" r = sd_bus_add_object_vtable(*o-E<gt>bus,\n"
+" NULL,\n"
+" \"/org/freedesktop/ReconnectExample\",\n"
+" \"org\\&.freedesktop\\&.ReconnectExample\",\n"
+" vtable,\n"
+" o);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_add_object_vtable()\");\n"
+" /* By default the service is only assigned an ephemeral name\\&. Also add a\n"
+" * well-known one, so that clients know whom to call\\&. This needs to be\n"
+" * asynchronous, as D-Bus might not be yet available\\&. The callback will check\n"
+" * whether the error is expected or not, in case it fails\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_request_name\\&.html\n"
+" */\n"
+" r = sd_bus_request_name_async(*o-E<gt>bus,\n"
+" NULL,\n"
+" \"org\\&.freedesktop\\&.ReconnectExample\",\n"
+" 0,\n"
+" request_name_callback,\n"
+" o);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_request_name_async()\");\n"
+" /* When D-Bus is disconnected this callback will be invoked, which will set up\n"
+" * the connection again\\&. This needs to be asynchronous, as D-Bus might not yet\n"
+" * be available\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_match_signal_async\\&.html\n"
+" */\n"
+" r = sd_bus_match_signal_async(*o-E<gt>bus,\n"
+" NULL,\n"
+" \"org\\&.freedesktop\\&.DBus\\&.Local\",\n"
+" NULL,\n"
+" \"org\\&.freedesktop\\&.DBus\\&.Local\",\n"
+" \"Disconnected\",\n"
+" on_disconnect,\n"
+" NULL,\n"
+" o);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_match_signal_async()\");\n"
+" /* Attach the bus object to the event loop so that calls and signals are\n"
+" * processed\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_attach_event\\&.html\n"
+" */\n"
+" r = sd_bus_attach_event(*o-E<gt>bus, *o-E<gt>event, 0);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_attach_event()\");\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+"int main(int argc, char **argv) {\n"
+" /* The bus should be relinquished before the program terminates\\&. The cleanup\n"
+" * attribute allows us to do it nicely and cleanly whenever we exit the block\\&.\n"
+" */\n"
+" _cleanup_(sd_bus_flush_close_unrefp) sd_bus *bus = NULL;\n"
+" _cleanup_(sd_event_unrefp) sd_event *event = NULL;\n"
+" object o = {\n"
+" \\&.example = \"example\",\n"
+" \\&.bus = &bus,\n"
+" \\&.event = &event,\n"
+" };\n"
+" int r;\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" /* Create an event loop data structure, with default parameters\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_event_default\\&.html\n"
+" */\n"
+" r = sd_event_default(&event);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_event_default()\");\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" /* By default the event loop will terminate when all sources have disappeared,\n"
+" * so we have to keep it \\*(Aqoccupied\\*(Aq\\&. Register signal handling to do so\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_event_add_signal\\&.html\n"
+" */\n"
+" r = sd_event_add_signal(event, NULL, SIGINT|SD_EVENT_SIGNAL_PROCMASK, NULL, NULL);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_event_add_signal(SIGINT)\");\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" r = sd_event_add_signal(event, NULL, SIGTERM|SD_EVENT_SIGNAL_PROCMASK, NULL, NULL);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_event_add_signal(SIGTERM)\");\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" r = setup(&o);\n"
+" if (r E<lt> 0)\n"
+" return EXIT_FAILURE;\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" /* Enter the main loop, it will exit only on sigint/sigterm\\&.\n"
+" * https://www\\&.freedesktop\\&.org/software/systemd/man/sd_event_loop\\&.html\n"
+" */\n"
+" r = sd_event_loop(event);\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_event_loop()\");\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-unstable fedora-rawhide
+#, no-wrap
+msgid ""
+" /* https://www\\&.freedesktop\\&.org/software/systemd/man/sd_bus_release_name\\&.html */\n"
+" r = sd_bus_release_name(bus, \"org\\&.freedesktop\\&.ReconnectExample\");\n"
+" if (r E<lt> 0)\n"
+" return log_error(r, \"sd_bus_release_name()\");\n"
+msgstr ""
+
+#. type: Plain text
+#: fedora-40
+msgid ""
+"Service processes may continue to run over the transition, past soft-reboot "
+"and into the next session, if they are placed in services that remain active "
+"until the very end of shutdown (which again is achieved via "
+"I<DefaultDependencies=no>)\\&. They must also be set up to avoid being "
+"killed by the aforementioned B<SIGTERM> and B<SIGKILL> via "
+"I<SurviveFinalKillSignal=yes>, and also be configured to avoid being stopped "
+"on isolate via I<IgnoreOnIsolate=yes>\\&. They also have to be configured to "
+"be stopped on normal shutdown, reboot and maintenance mode\\&. Finally, they "
+"have to be ordered after B<basic\\&.target> to ensure correct ordeering on "
+"boot\\&. Note that in case any new or custom units are used to isolate to, "
+"or that implement an equivalent shutdown functionality, they will also have "
+"to be configured manually for correct ordering and conflicting\\&. For "
+"example:"
+msgstr ""