Bug #12641

Feature #5630: Reproducible builds

Comment changes in POT files make ISO builds non-reproducible

Added by intrigeri about 2 months ago. Updated 21 days ago.

Status:ConfirmedStart date:06/05/2017
Priority:NormalDue date:
Assignee:u% Done:

0%

Category:Build system
Target version:Tails_3.2
QA Check: Blueprint:
Feature Branch: Easy:
Type of work:Code Affected tool:

Description

Sometimes we update a program of ours and as a result the line numbers encoded in comments, in the POT file generated by refresh-translations, differ. And then POT + PO files will get updated every time we build an ISO, resulting in non-reproducible builds. This happens quite frequently (e.g. yesterday), and generally I'm baby-sitting Jenkins results closely enough to notice, and then I run refresh-translations, commit and push to fix the problem. It's a waste of my time, and I don't even want to consider sharing this dumb work better. We'd better simply eliminate the root cause of this problem :)

To this end, I think we instead should:

  • make refresh-translations ignore changes in comments by default, just like it already ignores changes in the POT creation date header; this way ISO builds won't be made needlessly unreproducible by such trivial changes;
  • give refresh-translations a --force option, that we'll use in the release process to ensure we regularly update even those usually ignored comments.

I guess both intltool_update_po and intltool_update_pot functions and the refresh-translations script need to be changed. Perhaps import-translations as well but I'm less sure (one would need to look exactly when/how/why we run it to make a good decision).

Who wants to do it? Either anonym or Ulrike, I guess? If you prefer I can handle it myself, stealing from your time budget.

History

#1 Updated by u 21 days ago

  • Assignee changed from anonym to u

I can take that one.

Also available in: Atom PDF