[tor-commits] [tor-browser-build/master] Re-zip the omni.ja files

boklm at torproject.org boklm at torproject.org
Mon Feb 27 17:01:05 UTC 2017


commit 38863663120244e4becc66fe7a10cce92d8e639b
Author: Nicolas Vigier <boklm at torproject.org>
Date:   Mon Feb 27 17:46:28 2017 +0100

    Re-zip the omni.ja files
    
    Re-zipping the omni.ja files is not needed to make them reproductible,
    however if we don't re-zip them, the files become corrupt when we
    update them using 'zip' (we are doing that when we update the
    000-tor-browser.js preference file to set the locale) and firefox will
    silently fail to load some parts.
---
 projects/firefox/build | 17 +++++++++++++----
 rbm.conf               | 12 ++++++++++++
 2 files changed, 25 insertions(+), 4 deletions(-)

diff --git a/projects/firefox/build b/projects/firefox/build
index 42752d1..7610510 100644
--- a/projects/firefox/build
+++ b/projects/firefox/build
@@ -146,10 +146,19 @@ do
 done
 [% END %]
 
-# TODO:
-#  ~/build/re-dzip.sh Browser/omni.ja
-#  ~/build/re-dzip.sh Browser/webapprt/omni.ja
-#  ~/build/re-dzip.sh Browser/browser/omni.ja
+# Re-zipping the omni.ja files is not needed to make them reproductible,
+# however if we don't re-zip them, the files become corrupt when we
+# update them using 'zip' and firefox will silently fail to load some
+# parts.
+[% IF c("var/windows") || c("var/linux") %]
+  [% c("var/rezip", { rezip_file => 'Browser/omni.ja' }) %]
+  [% c("var/rezip", { rezip_file => 'Browser/browser/omni.ja' }) %]
+  [% IF c("var/linux") %][% c("var/rezip", { rezip_file => 'Browser/webapprt/omni.ja' }) %][% END %]
+[% ELSIF c("var/osx") %]
+  [% c("var/rezip", { rezip_file => 'TorBrowser.app/Contents/Resources/omni.ja' }) %]
+  [% c("var/rezip", { rezip_file => 'TorBrowser.app/Contents/Resources/webapprt/omni.ja' }) %]
+  [% c("var/rezip", { rezip_file => 'TorBrowser.app/Contents/Resources/browser/omni.ja' }) %]
+[% END %]
 
 [% IF c("var/windows") %]
 cp $rootdir/msvcr100.dll Browser/
diff --git a/rbm.conf b/rbm.conf
index e9f7b6d..b137595 100644
--- a/rbm.conf
+++ b/rbm.conf
@@ -54,6 +54,18 @@ var:
   sign_build: '[% ENV.RBM_SIGN_BUILD %]'
   sign_build_gpg_opts: '[% ENV.RBM_GPG_OPTS %]'
 
+  rezip: |
+    rezip_tmpdir=$(mktemp -d)
+    mkdir -p "$rezip_tmpdir/z"
+    unzip -d "$rezip_tmpdir/z" -- [% c("rezip_file") %] || [ $? -lt 3 ]
+    pushd "$rezip_tmpdir/z"
+    [% c("zip", {
+      zip_src => [ '.' ],
+      zip_args => '$rezip_tmpdir/new.zip',
+    }) %]
+    popd
+    mv -f -- "$rezip_tmpdir/new.zip" [% c("rezip_file") %]
+    rm -Rf "$rezip_tmpdir"
 
 targets:
   notarget: linux-x86_64



More information about the tor-commits mailing list