From: Jacek Konieczny Date: Wed, 22 Jan 2014 20:13:07 +0000 (+0100) Subject: efi-boot-generator patched to use /boot/efi X-Git-Tag: auto/th/systemd-208-10~1 X-Git-Url: http://git.pld-linux.org/?a=commitdiff_plain;h=b6da825e96c0897e538cf4ca8da8460e1c310a33;hp=36c219eca8f35019861712472aaa2243a17cc868;p=packages%2Fsystemd.git efi-boot-generator patched to use /boot/efi In PLD we have /boot/efi mount point for the EFI system partitions. Mounting ESP under /boot (which is default behaviour of systemd if /boot is empty and system is booted from EFI) may be problematic, as ESP contains a FAT file-system and we have RPM packages putting files, even symlinks, in /boot. Also, our efi-boot-update expects ESP mounted at /boot/efi. --- diff --git a/pld-boot_efi_mount.patch b/pld-boot_efi_mount.patch new file mode 100644 index 0000000..f7f900c --- /dev/null +++ b/pld-boot_efi_mount.patch @@ -0,0 +1,59 @@ +diff -dur systemd-208.orig/src/efi-boot-generator/efi-boot-generator.c systemd-208/src/efi-boot-generator/efi-boot-generator.c +--- systemd-208.orig/src/efi-boot-generator/efi-boot-generator.c 2013-09-25 03:38:17.000000000 +0200 ++++ systemd-208/src/efi-boot-generator/efi-boot-generator.c 2014-01-22 21:05:38.281137494 +0100 +@@ -52,7 +52,7 @@ + if (!is_efi_boot()) + return EXIT_SUCCESS; + +- if (dir_is_empty("/boot") <= 0) ++ if (dir_is_empty("/boot/efi") <= 0) + return EXIT_SUCCESS; + + r = efi_loader_get_device_part_uuid(&id); +@@ -63,7 +63,7 @@ + return EXIT_FAILURE; + } + +- name = strjoin(arg_dest, "/boot.mount", NULL); ++ name = strjoin(arg_dest, "/boot-efi.mount", NULL); + if (!name) { + log_oom(); + return EXIT_FAILURE; +@@ -80,13 +80,13 @@ + "[Unit]\n" + "Description=EFI System Partition\n\n" + "[Mount]\n" +- "Where=/boot\n" ++ "Where=/boot/efi\n" + "What=/dev/disk/by-partuuid/%02x%02x%02x%02x-%02x%02x-%02x%02x-%02x%02x-%02x%02x%02x%02x%02x%02x\n" + "Options=umask=0077\n", + SD_ID128_FORMAT_VAL(id)); + + free(name); +- name = strjoin(arg_dest, "/boot.automount", NULL); ++ name = strjoin(arg_dest, "/boot-efi.automount", NULL); + if (!name) { + log_oom(); + return EXIT_FAILURE; +@@ -103,10 +103,10 @@ + "[Unit]\n" + "Description=EFI System Partition Automount\n\n" + "[Automount]\n" +- "Where=/boot\n", f); ++ "Where=/boot/efi\n", f); + + free(name); +- name = strjoin(arg_dest, "/local-fs.target.wants/boot.automount", NULL); ++ name = strjoin(arg_dest, "/local-fs.target.wants/boot-efi.automount", NULL); + if (!name) { + log_oom(); + return EXIT_FAILURE; +@@ -114,7 +114,7 @@ + + mkdir_parents(name, 0755); + +- if (symlink("../boot.automount", name) < 0) { ++ if (symlink("../boot-efi.automount", name) < 0) { + log_error("Failed to create symlink %s: %m", name); + return EXIT_FAILURE; + } diff --git a/systemd.spec b/systemd.spec index 24f3360..6c2cd1e 100644 --- a/systemd.spec +++ b/systemd.spec @@ -61,6 +61,7 @@ Patch12: proc-hidepid.patch Patch14: dont-hash-null-keys.patch Patch15: hibernate-to-file.patch Patch16: systemd-configfs.patch +Patch17: pld-boot_efi_mount.patch URL: http://www.freedesktop.org/wiki/Software/systemd BuildRequires: acl-devel BuildRequires: attr-devel @@ -594,6 +595,7 @@ Uzupełnianie parametrów w zsh dla poleceń udev. #patch14 -p1 %patch15 -p1 %patch16 -p1 +%patch17 -p1 cp -p %{SOURCE2} src/systemd_booted.c %build