From d6df506b889526a9c20e1750bc58f0e4b7fbc744 Mon Sep 17 00:00:00 2001 From: Evgeni Golov Date: Mon, 11 Mar 2013 14:44:38 +0100 Subject: [PATCH] release 3.0.1-1+grml.1 --- debian/changelog | 7 +++ debian/patches/101_fix-test-for-opt_link.patch | 19 +++++++ .../patches/102_check-for-overlay-not-device.patch | 19 +++++++ debian/patches/103_transform-link-targets.patch | 59 ++++++++++++++++++++++ debian/patches/104_set-rootfs_dest_backing.patch | 26 ++++++++++ debian/patches/series | 6 +++ 6 files changed, 136 insertions(+) create mode 100644 debian/patches/101_fix-test-for-opt_link.patch create mode 100644 debian/patches/102_check-for-overlay-not-device.patch create mode 100644 debian/patches/103_transform-link-targets.patch create mode 100644 debian/patches/104_set-rootfs_dest_backing.patch diff --git a/debian/changelog b/debian/changelog index c1a88c9..7ea916a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,10 @@ +live-boot (3.0.1-1+grml.1) unstable; urgency=low + + * Sync Debian's 3.0.1. + * Backport some patches from Debian's debian-next (4.x) branch. + + -- Evgeni Golov Wed, 06 Mar 2013 08:07:07 +0100 + live-boot (3.0.1-1) unstable; urgency=low [ chals ] diff --git a/debian/patches/101_fix-test-for-opt_link.patch b/debian/patches/101_fix-test-for-opt_link.patch new file mode 100644 index 0000000..2740af4 --- /dev/null +++ b/debian/patches/101_fix-test-for-opt_link.patch @@ -0,0 +1,19 @@ +commit d5ed94293c3905b8ac402a75bd80272a20b032d4 +Author: Evgeni Golov +Date: Wed Mar 6 15:19:54 2013 +0100 + + Fixing invalid syntax in test for opt_link. + +diff --git a/scripts/boot/9990-misc-helpers.sh b/scripts/boot/9990-misc-helpers.sh +index 888eeaf..f2814ec 100755 +--- a/scripts/boot/9990-misc-helpers.sh ++++ b/scripts/boot/9990-misc-helpers.sh +@@ -1482,7 +1482,7 @@ activate_custom_mounts () + # ignore the loop below and set rootfs_dest_backing=$dest + local rootfs_dest_backing + rootfs_dest_backing="" +- if [ -n "${opt_link}"] ++ if [ -n "${opt_link}" ] + then + for d in /live/rootfs/* + do diff --git a/debian/patches/102_check-for-overlay-not-device.patch b/debian/patches/102_check-for-overlay-not-device.patch new file mode 100644 index 0000000..3c4816f --- /dev/null +++ b/debian/patches/102_check-for-overlay-not-device.patch @@ -0,0 +1,19 @@ +commit 14c3a9aed852c7383cf67bb90f84ff10eb36cdfd +Author: Evgeni Golov +Date: Wed Mar 6 15:20:46 2013 +0100 + + Checking for ${overlay}, not ${device} when trying to close ${overlay}. + +diff --git a/scripts/boot/9990-overlay.sh b/scripts/boot/9990-overlay.sh +index 10054e8..c6de171 100755 +--- a/scripts/boot/9990-overlay.sh ++++ b/scripts/boot/9990-overlay.sh +@@ -392,7 +392,7 @@ setup_unionfs () + # Close unused overlays (e.g. due to missing $persistence_list) + for overlay in ${overlay_devices} + do +- if echo ${used_overlays} | grep -qve "^\(.* \)\?${device}\( .*\)\?$" ++ if echo ${used_overlays} | grep -qve "^\(.* \)\?${overlay}\( .*\)\?$" + then + close_persistence_media ${overlay} + fi diff --git a/debian/patches/103_transform-link-targets.patch b/debian/patches/103_transform-link-targets.patch new file mode 100644 index 0000000..47b02e1 --- /dev/null +++ b/debian/patches/103_transform-link-targets.patch @@ -0,0 +1,59 @@ +commit c6fe296f9a0e309107f6bda14411a70035e56791 +Author: Evgeni Golov +Date: Wed Mar 6 15:21:12 2013 +0100 + + Transforming link targets so they work after the mount was moved (Closes: #702421). + +diff --git a/scripts/boot/9990-misc-helpers.sh b/scripts/boot/9990-misc-helpers.sh +index f2814ec..cb3940b 100755 +--- a/scripts/boot/9990-misc-helpers.sh ++++ b/scripts/boot/9990-misc-helpers.sh +@@ -1140,12 +1140,12 @@ link_files () + # is non-empty, remove mask from all source paths when + # creating links (will be necessary if we change root, which + # live-boot normally does (into $rootmnt)). +- local src_dir dest_dir src_mask ++ local src_dir dest_dir src_transform + + # remove multiple /:s and ensure ending on / + src_dir="$(trim_path ${1})/" + dest_dir="$(trim_path ${2})/" +- src_mask="${3}" ++ src_transform="${3}" + + # This check can only trigger on the inital, non-recursive call since + # we create the destination before recursive calls +@@ -1172,12 +1172,12 @@ link_files () + chown_ref "${src}" "${dest}" + chmod_ref "${src}" "${dest}" + fi +- link_files "${src}" "${dest}" "${src_mask}" ++ link_files "${src}" "${dest}" "${src_transform}" + else + final_src=${src} +- if [ -n "${src_mask}" ] ++ if [ -n "${src_transform}" ] + then +- final_src="$(echo ${final_src} | sed "s|^${src_mask}||")" ++ final_src="$(echo ${final_src} | sed "${src_transform}")" + fi + rm -rf "${dest}" 2> /dev/null + ln -s "${final_src}" "${dest}" +@@ -1502,7 +1502,7 @@ activate_custom_mounts () + local cow_dir links_source + if [ -n "${opt_link}" ] && [ -z "${PERSISTENCE_READONLY}" ] + then +- link_files ${source} ${dest} ${rootmnt} ++ link_files ${source} ${dest} "s|^/live/|/lib/live/mount/|" + elif [ -n "${opt_link}" ] && [ -n "${PERSISTENCE_READONLY}" ] + then + mkdir -p ${rootmnt}/lib/live/mount/persistence +@@ -1519,7 +1519,7 @@ activate_custom_mounts () + chown_ref "${source}" "${cow_dir}" + chmod_ref "${source}" "${cow_dir}" + do_union ${links_source} ${cow_dir} ${source} ${rootfs_dest_backing} +- link_files ${links_source} ${dest} ${rootmnt} ++ link_files ${links_source} ${dest} "s|^${rootmnt}||" + elif [ -n "${opt_union}" ] && [ -z "${PERSISTENCE_READONLY}" ] + then + do_union ${dest} ${source} ${rootfs_dest_backing} diff --git a/debian/patches/104_set-rootfs_dest_backing.patch b/debian/patches/104_set-rootfs_dest_backing.patch new file mode 100644 index 0000000..90f3dc4 --- /dev/null +++ b/debian/patches/104_set-rootfs_dest_backing.patch @@ -0,0 +1,26 @@ +commit 64aeb1209c42c4897113af20e24b0a4dc3519add +Author: Evgeni Golov +Date: Mon Mar 11 09:17:58 2013 +0100 + + Fixing condition for setting rootfs_dest_backing. + + The fix for the opt_link check in d5ed942 broke the code as it inverted the + meaning. Previously it ran the code iff opt_link was empty, as [ -n ] is + true. In the case opt_link was not empty, the code evaluated to [ -n foo], + which is invalid syntax and thus false. This, however, was almost the expected + behaviour, as rootfs_dest_backing is needed for opt_union and (in read-only + mode) for opt_link. + +diff --git a/scripts/boot/9990-misc-helpers.sh b/scripts/boot/9990-misc-helpers.sh +index cb3940b..fb7c644 100755 +--- a/scripts/boot/9990-misc-helpers.sh ++++ b/scripts/boot/9990-misc-helpers.sh +@@ -1482,7 +1482,7 @@ activate_custom_mounts () + # ignore the loop below and set rootfs_dest_backing=$dest + local rootfs_dest_backing + rootfs_dest_backing="" +- if [ -n "${opt_link}" ] ++ if [ -n "${opt_link}" ] || [ -n "${opt_union}" ] + then + for d in /live/rootfs/* + do diff --git a/debian/patches/series b/debian/patches/series index f471306..884345b 100644 --- a/debian/patches/series +++ b/debian/patches/series @@ -19,3 +19,9 @@ 40_support_multiple_hooks.patch 41_drop_nameserver_from_ip_option.patch 42_restore_support_for_custom-ov_persistence.patch + +# patches submitted and accepted upstream +101_fix-test-for-opt_link.patch +102_check-for-overlay-not-device.patch +103_transform-link-targets.patch +104_set-rootfs_dest_backing.patch -- 2.1.4