chiark / gitweb /
Standarize on one spelling of symlink error message
[elogind.git] / src / efi-boot-generator / efi-boot-generator.c
index ee6ec31c0ebc2ec7e7e03c78076c6e3a26399614..4367c536b0ca7e371e6a80887c5b9cff7bd480fe 100644 (file)
@@ -25,8 +25,9 @@
 #include "efivars.h"
 #include "path-util.h"
 #include "util.h"
 #include "efivars.h"
 #include "path-util.h"
 #include "util.h"
+#include "mkdir.h"
 
 
-static const char *arg_dest = NULL;
+static const char *arg_dest = "/tmp";
 
 int main(int argc, char *argv[]) {
         int r = EXIT_SUCCESS;
 
 int main(int argc, char *argv[]) {
         int r = EXIT_SUCCESS;
@@ -48,7 +49,7 @@ int main(int argc, char *argv[]) {
 
         umask(0022);
 
 
         umask(0022);
 
-        if (!is_efiboot())
+        if (!is_efi_boot())
                 return EXIT_SUCCESS;
 
         if (dir_is_empty("/boot") <= 0)
                 return EXIT_SUCCESS;
 
         if (dir_is_empty("/boot") <= 0)
@@ -76,6 +77,8 @@ int main(int argc, char *argv[]) {
 
         fprintf(f,
                 "# Automatially generated by systemd-efi-boot-generator\n\n"
 
         fprintf(f,
                 "# Automatially generated by systemd-efi-boot-generator\n\n"
+                "[Unit]\n"
+                "Description=EFI System Partition\n\n"
                 "[Mount]\n"
                 "Where=/boot\n"
                 "What=/dev/disk/by-partuuid/%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x\n"
                 "[Mount]\n"
                 "Where=/boot\n"
                 "What=/dev/disk/by-partuuid/%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x\n"
@@ -96,10 +99,11 @@ int main(int argc, char *argv[]) {
                 return EXIT_FAILURE;
         }
 
                 return EXIT_FAILURE;
         }
 
-        fprintf(f,
-                "# Automatially generated by systemd-efi-boot-generator\n\n"
-                "[Automount]\n"
-                "Where=/boot\n");
+        fputs("# Automatially generated by systemd-efi-boot-generator\n\n"
+              "[Unit]\n"
+              "Description=EFI System Partition Automount\n\n"
+              "[Automount]\n"
+              "Where=/boot\n", f);
 
         free(name);
         name = strjoin(arg_dest, "/local-fs.target.wants/boot.automount", NULL);
 
         free(name);
         name = strjoin(arg_dest, "/local-fs.target.wants/boot.automount", NULL);
@@ -108,8 +112,10 @@ int main(int argc, char *argv[]) {
                 return EXIT_FAILURE;
         }
 
                 return EXIT_FAILURE;
         }
 
+        mkdir_parents(name, 0755);
+
         if (symlink("../boot.automount", name) < 0) {
         if (symlink("../boot.automount", name) < 0) {
-                log_error("Failed to create symlink: %m");
+                log_error("Failed to create symlink %s: %m", name);
                 return EXIT_FAILURE;
         }
 
                 return EXIT_FAILURE;
         }