From 49935f903ca4146320cdd6fda88868beb81a341a Mon Sep 17 00:00:00 2001 From: yang_zhuang_zhuang <1162011203@qq.com> Date: Tue, 8 Feb 2022 11:32:18 +0800 Subject: [PATCH] update to 2021.6 --- ...igs-Set-timestamps-to-serve-expected.patch | 101 ------------------ ...e-2020.8.tar.xz => libostree-2021.6.tar.xz | Bin 2081080 -> 2100784 bytes ostree.spec | 15 ++- skip-updating-the-preference.patch | 25 +++++ 4 files changed, 36 insertions(+), 105 deletions(-) delete mode 100644 backport-test-pull-summary-sigs-Set-timestamps-to-serve-expected.patch rename libostree-2020.8.tar.xz => libostree-2021.6.tar.xz (52%) create mode 100644 skip-updating-the-preference.patch diff --git a/backport-test-pull-summary-sigs-Set-timestamps-to-serve-expected.patch b/backport-test-pull-summary-sigs-Set-timestamps-to-serve-expected.patch deleted file mode 100644 index 8c4d723..0000000 --- a/backport-test-pull-summary-sigs-Set-timestamps-to-serve-expected.patch +++ /dev/null @@ -1,101 +0,0 @@ -From 07c4249a3f6e4c30812bdffe7ee18cd67e23a87e Mon Sep 17 00:00:00 2001 -From: Simon McVittie -Date: Sun, 22 Nov 2020 13:17:24 +0000 -Subject: [PATCH] test-pull-summary-sigs: Set timestamps to serve expected - files - -If this is not done, the test can fail when the temporary directory is -a tmpfs: for example this happens during build-time testing with /var/tmp -on tmpfs or TEST_TMPDIR pointing to a tmpfs, or installed-tests with -gnome-desktop-testing-runner allocating the test directory on a tmpfs. - -In particular, many of Debian's official autobuilders now do the entire -build and test procedure in a chroot hosted on a tmpfs, to improve build -performance and prevent fsync overhead. - -In this situation, it appears that overwriting summary.sig with a copy -of summary.sig.2 is not sufficient for the web server to tell the -libostree client that it needs to be re-downloaded. I'm not completely -sure why, because tmpfs does appear to have sub-second-resolution -timestamps, but forcing a distinct mtime is certainly enough to -resolve it. - -Resolves: https://github.com/ostreedev/ostree/issues/2245 -Bug-Debian: https://bugs.debian.org/975418 -Signed-off-by: Simon McVittie ---- - tests/test-pull-summary-sigs.sh | 12 ++++++++++++ - 1 file changed, 12 insertions(+) - -diff --git a/tests/test-pull-summary-sigs.sh b/tests/test-pull-summary-sigs.sh -index 401e88c91..3819cbf3d 100755 ---- a/tests/test-pull-summary-sigs.sh -+++ b/tests/test-pull-summary-sigs.sh -@@ -175,6 +175,8 @@ cd ${test_tmpdir} - # Reset to the old valid summary and pull to cache it - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary{.1,} - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig{.1,} -+touch -t 200101010101 ${test_tmpdir}/ostree-srv/gnomerepo/summary -+touch -t 200101010101 ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig - repo_reinit - ${OSTREE} --repo=repo pull origin main - assert_has_file repo/tmp/cache/summaries/origin -@@ -186,6 +188,7 @@ cmp repo/tmp/cache/summaries/origin.sig ${test_tmpdir}/ostree-srv/gnomerepo/summ - # summary signature since it was generated on the server between the - # requests - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig{.2,} -+touch -t 200202020202 ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig - if ${OSTREE} --repo=repo pull origin main 2>err.txt; then - assert_not_reached "Successful pull with old summary" - fi -@@ -197,6 +200,7 @@ cmp repo/tmp/cache/summaries/origin.sig ${test_tmpdir}/ostree-srv/gnomerepo/summ - - # Publish correct summary and check that subsequent pull succeeds - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary{.2,} -+touch -t 200202020202 ${test_tmpdir}/ostree-srv/gnomerepo/summary - ${OSTREE} --repo=repo pull origin main - assert_has_file repo/tmp/cache/summaries/origin - assert_has_file repo/tmp/cache/summaries/origin.sig -@@ -208,6 +212,8 @@ echo "ok pull with signed summary remote old summary" - # Reset to the old valid summary and pull to cache it - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary{.1,} - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig{.1,} -+touch -t 200101010101 ${test_tmpdir}/ostree-srv/gnomerepo/summary -+touch -t 200101010101 ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig - repo_reinit - ${OSTREE} --repo=repo pull origin main - assert_has_file repo/tmp/cache/summaries/origin -@@ -220,6 +226,7 @@ cmp repo/tmp/cache/summaries/origin.sig ${test_tmpdir}/ostree-srv/gnomerepo/summ - # is caching the old signature. This should succeed because the cached - # old summary is used. - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary{.2,} -+touch -t 200202020202 ${test_tmpdir}/ostree-srv/gnomerepo/summary - ${OSTREE} --repo=repo pull origin main - assert_has_file repo/tmp/cache/summaries/origin - assert_has_file repo/tmp/cache/summaries/origin.sig -@@ -228,6 +235,7 @@ cmp repo/tmp/cache/summaries/origin.sig ${test_tmpdir}/ostree-srv/gnomerepo/summ - - # Publish correct signature and check that subsequent pull succeeds - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig{.2,} -+touch -t 200202020202 ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig - ${OSTREE} --repo=repo pull origin main - assert_has_file repo/tmp/cache/summaries/origin - assert_has_file repo/tmp/cache/summaries/origin.sig -@@ -239,6 +247,8 @@ echo "ok pull with signed summary remote old summary signature" - # Reset to the old valid summary and pull to cache it - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary{.1,} - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig{.1,} -+touch -t 200101010101 ${test_tmpdir}/ostree-srv/gnomerepo/summary -+touch -t 200101010101 ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig - repo_reinit - ${OSTREE} --repo=repo pull origin main - assert_has_file repo/tmp/cache/summaries/origin -@@ -273,6 +283,8 @@ cmp repo/tmp/cache/summaries/origin.sig ${test_tmpdir}/ostree-srv/gnomerepo/summ - # Publish new signature and check that subsequent pull succeeds - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary{.2,} - cp ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig{.2,} -+touch -t 200202020202 ${test_tmpdir}/ostree-srv/gnomerepo/summary -+touch -t 200202020202 ${test_tmpdir}/ostree-srv/gnomerepo/summary.sig - ${OSTREE} --repo=repo pull origin main - assert_has_file repo/tmp/cache/summaries/origin - assert_has_file repo/tmp/cache/summaries/origin.sig diff --git a/libostree-2020.8.tar.xz b/libostree-2021.6.tar.xz similarity index 52% rename from libostree-2020.8.tar.xz rename to libostree-2021.6.tar.xz index 97b95d81c2e5abed046b48503a070210d8eda507..f1d62da7f5b6657905764731128feb3b3c073558 100644 GIT binary patch delta 1147826 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

$2U(5@?C~?hw`pc}8Y6dje+MS{XN} z1!vtbe@PMgO`W6SuKyD)joo7}0tyxw4Xo#81zQV8NV25bg?C`eY**+z&X9GZ2PKM$ ztFKLt=I5LEo#lzfWm2G}v&rs#?wlA{f6=BmRxg)BkGt&6Tm3HkpId_8x7Njpm0W12 zcKRd~URKUzRUC9+(TJ4c!o=5{XLw6zHc8?>ap@Vg>*YO#8Ko)AWjz>5`FS&B3x=}^ z!ra({5_f0hcROeWh!}c^NX;OF6>1ec1*Nh~5vYEg9&^Oih3WU%KZiJf*u&~{e=KgT zHEK(}Yc-d@t2f8zKy!~FfD5sE9a6ac^t*7GDX&nSAMbwPx|}zyz42m&R`r^a#9|pp z%sdKVkYSFoz-ek*9S!0y#-v2-?>AtyE((>ilf3k-Kpyk+S5n4`|$B->FITTK?4fn+Y7lv>31cb3_ zs{g;nC5Db{VK~0vK8JKOn1YqkpvP}aO$bb@bNT{Er?Wf&A&iLV318|w46v7{q@hXe z-eGAt=eB7>Z(zo170El=jA~%-sAn>%`$i)vvh(xtJV`EFH$h6AjGv4_f9MA*&*n!b z!|LE;Ch}*RT){>e>nQJ2B7tREekAqWh`@+1)%<)}} za8-WnKkH!pAnX(w?k}NP(2*hdh!IKbPi}%d5s4FQTrD$SmISitf5i+8xyyBK?9}4E z2g)zgr6w;jy+T*wnGI$9b%z-QCYP8-Fe_KZlVl4n-kJh9J)f;hpN5BdE!U0IykaYL z_oDG=Djp@BoXyxnb?r`8qhz#kX;1rX+7AYdNAr);6iX@_+bHhN z6+H@Z`q0TeHmn`%f05p0EKg%>49}Hms2v2q5O7HmN<+HA4}epiW^`bvkL1tt)JCR7 zJsJYOvF`Kn02lP5y4!DEewQWw-pco%BK!rd33b|Wk5P))%oQ#iQ2XB-ubB$17I=)K|9nv7-j4p&tCf5dRFC-6K=y_LmO1dkDzVOBbg zGOIp3O;!q~JoA~44zbbQUa$W76m*W}`24*CGzty6m|5pmV+(_(_X6>$arQMF+;9B) z--+~Lse*F*Izh9%0nL@Na?wb|J1?~QKLqygcRr0S3K+oEyYFX zEJhe{&+DH)FH<{LX3;Nau(&Ae*aQ_B5q!Wj8kfHuz}?(6P@h9i;itr6$cwut7k=W9#zQ3Wn-Bq%Wikb5zatk!Ve)DRh# zQ6mg{%By*WrlTuX5@cTRH&ve;wJ27YN#;Rz zJUjQoR!RLX)xuvjmVB9OV#1e>Qw|dVhRX~;K=AvVFB)-21`o)*nVVCb}b;K!v-TEu%(aZ2SF0A#l$Z75i%2H3DGKVGGl%Ttx%r%B0?To*Om#68%vj?ARTU=+GLF zF|tU;k2SSu_IajL3cYukCcdQ`gwXrdYqawt(*ro%XUQxvH2wy>ASWU%eq?1=x64YL zUjTc^(dL#Le%VeRWw33RMArVn^;T2=Wn;ER4(3S2`kFWfE z!PsC8Ogd=>Do0@u2F74yfAg_)!0@HMb~na&zWGzOnnH)zss6@#$Ph{guP#KX-4FRN=tJ55y)&PUnInNe~o0|J#khE*}1)w zMl?(RW)$YPtnEYH@qlcUrLjLqP&`X`9!G2UZproWOp+%F;fkitkY0WB*s+G#lP6`Z7iZllFh34%*6Q=wk6p;S`s|$ zpXTjz%{}C=$~6bsf9|BY;vG8?Y-(Cjm^^(3ubrFGixSB74-YdyI2g)X7EzbKWzh4B z1#BRp4X9V6#bL6o6P5i}fux5RU*(aU@w9leX6OX`|Eo15aqiI_-p4rE-!O^dn!oKH z411o$H+isX8UGqIPTMCxM&ZGDX(waKYvDxXwWUVy4B;BCf9C(9I@-F9Tvx`Vln9xl zNv5k-p2AV_4#XUgK)fUyzz|vSm@I3zX3=k-DWeE2(^}4@C z)o_A@XmT25HATFK2>PX8gB$8B3MD#oUImJlN37`-nzEKM4{i0qQ@?GZ+V2F$@c9Z7 z+~@HkY%QzFomgO0*+5NEF`r>>An!ZRAP^}}QpmXRe;mcr1U35?#M7HIl&!3|r1A@0 zuOVh`W9-mBbvw3;*4pY?q2D-j0a(#Ei%mB_@0EypIZLs> z_AQ3~f0LTyUZ2%_eak%ujXT4a2{971ykp1x>a@^z!R9cRk1`;|lER-%41U5iyJAJu zzCg{W-ENE?W6tFIU{*nj2MfkxMm!vM4PSI z22f^K_74{P2;^_aGi1phC_9uc!p0TkHtFBEe;i{oeQw();Ri*e-g^eed6GzE)^21I z+%TX0o!Fy>E?)wy5KXXc|DjN-S6yMupqa?#*^eI$nt)v;4116awN<}(bYPFx37+6f zx$0Cp5nF6D;Ci*}6Q#=ZSTqZjfjtjFUwFIa=d!zpr4u0dE02J2$piO;-3bNy!eps5 ze?XYjtZLvog#0b~vjLH}$(XOwNObn33EN>trwJ7GZXN1iX|e!wE2^Lnk&@GQq23Gr z8XXVdsQU&}N@aOzv8-ce)??`6S4>rNVW^VNx)$R<4Quu4!7+J|n@rKc!V%ZZ(0ykskS146z$<-6qw{88;&YloP z+K8!oG17pGL8`@;v&LldUiE3j(-Bga(W%oGG)KRE#aq0odQ|@p8Rd^6FTs_E_Q#6D z;Y-NwmK7{_;7)nl}Q!Ee@6)<_Y!2O4`v~?TQvR~=wKDX^iWxpAI2rLMa(y8qG(dh zPJzSU+y-RpXO6USc_RY=#>aloM!#~`pj9r7h{H3jyWI4ODph9cW+V(@vu z`iO-;lKdqOZe=bXcr7XOWTsDPQ(8?D0>z4XZ*f*iY4`8J8mWzBf7q^l)!5hLnWu*X zRm6!Lxa@~07!Lae4STDXBi===9>Gs@PKkw(@cUVyURrZH`x%XVU4@JU3b0w?a*Fdm z%J^!Xh=r>Jp238;h>W_(WREW!W3-&7_vi%N9K3F0nS_%B^DMv!_TuP#7dD~gg^^v~ z)SjI9&${Zga3l+Uf9zJ~IyBjM23W%4w0Qc_vkws86Qtk9T(0-+b+G1i`n@%P>8tlA zpb=oD`xeAkq5*}tAd=t3o1TZ-nURws%J?!5uAW&;;+2f_FjA=>BjCS9)zbSb20Xk3 zHG=2J++0h*;vaPdPHN2~x!T$O{Rl;^6jFiZcqb|xAtt!3e}*5v`=*tCFSlcqx$e8M zko%=Cl!nGiGtKXhOJs-W)jT~46|}Az=udbAxx-Ghz}T?gHlP*k!FR`?Rg-dLN8W0m z9cAj9G5>BZp>`HNGmpg5mn7e5a=k9sjY~E~Sw-mW7H_vw}r;(XtQ0E@%$KUDon0iR@q<6MD6wGGF5)}95R&5&?n9L6gk_)RwU$XT7(Az16Q zQlF)u$8tS^$7_xKWK&ewWw}w#Peq||kM&{>#W`uce-4}X5Yhp9M&q%9c@42nY;