X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fefi-boot-generator%2Fefi-boot-generator.c;h=88fa220d2f4fb6416cba523ca5d8977c760e548d;hb=34bf02818d06343982a06a1c33d165190e918d0d;hp=ee6ec31c0ebc2ec7e7e03c78076c6e3a26399614;hpb=f4ce2b3e5ce93b83f14f8785e205ebb5a9b8c1df;p=elogind.git diff --git a/src/efi-boot-generator/efi-boot-generator.c b/src/efi-boot-generator/efi-boot-generator.c index ee6ec31c0..88fa220d2 100644 --- a/src/efi-boot-generator/efi-boot-generator.c +++ b/src/efi-boot-generator/efi-boot-generator.c @@ -25,8 +25,9 @@ #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; @@ -48,7 +49,7 @@ int main(int argc, char *argv[]) { umask(0022); - if (!is_efiboot()) + if (!is_efi_boot()) 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" + "[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" @@ -96,10 +99,11 @@ int main(int argc, char *argv[]) { 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); @@ -108,6 +112,8 @@ int main(int argc, char *argv[]) { return EXIT_FAILURE; } + mkdir_parents(name, 0755); + if (symlink("../boot.automount", name) < 0) { log_error("Failed to create symlink: %m"); return EXIT_FAILURE;