]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
Add simple usage message to systemd-backlight (#16709)
authorPlan C <hubenchang0515@outlook.com>
Fri, 28 Aug 2020 11:50:35 +0000 (19:50 +0800)
committerGitHub <noreply@github.com>
Fri, 28 Aug 2020 11:50:35 +0000 (13:50 +0200)
man/systemd-backlight@.service.xml
src/backlight/backlight.c

index 6e836d6921bfa8b9472f723e5ac271f32a5be170..682c52efb1d3c53551362fd755da175d9aacdbf5 100644 (file)
@@ -23,7 +23,8 @@
 
   <refsynopsisdiv>
     <para><filename>systemd-backlight@.service</filename></para>
-    <para><filename>/usr/lib/systemd/systemd-backlight</filename></para>
+    <para><filename>/usr/lib/systemd/systemd-backlight</filename> save [backlight|leds]:DEVICE</para>
+    <para><filename>/usr/lib/systemd/systemd-backlight</filename> load [backlight|leds]:DEVICE</para>
   </refsynopsisdiv>
 
   <refsect1>
index 3a644363e1f5ef4a52cfedd32a148d847d4f26bc..215b3bbfe4acfc252481bea444fbf16ce1e3f7a3 100644 (file)
 #include "main-func.h"
 #include "mkdir.h"
 #include "parse-util.h"
+#include "pretty-print.h"
+#include "terminal-util.h"
 #include "reboot-util.h"
 #include "string-util.h"
 #include "strv.h"
 #include "util.h"
 
+static int help(void) {
+        _cleanup_free_ char *link = NULL;
+        int r;
+
+        r = terminal_urlify_man("systemd-backlight", "8", &link);
+        if (r < 0)
+                return log_oom();
+
+        printf("%s save [backlight|leds]:DEVICE\n"
+               "%s load [backlight|leds]:DEVICE\n"
+               "\n%sSave and restore backlight brightness at shutdown and boot.%s\n\n"
+               "  save            Save current brightness\n"
+               "  load            Set brightness to be the previously saved value\n"
+               "\nSee the %s for details.\n"
+               , program_invocation_short_name
+               , program_invocation_short_name
+               , ansi_highlight(), ansi_normal()
+               , link
+        );
+
+        return 0;
+}
+
 static int find_pci_or_platform_parent(sd_device *device, sd_device **ret) {
         const char *subsystem, *sysname, *value;
         sd_device *parent;
@@ -334,6 +359,9 @@ static int run(int argc, char *argv[]) {
 
         log_setup_service();
 
+        if (strv_contains(strv_skip(argv, 1), "--help"))
+                return help();
+
         if (argc != 3)
                 return log_error_errno(SYNTHETIC_ERRNO(EINVAL), "This program requires two arguments.");