Bug 11610

Summary: gdk-pixbuf: improve reproducibility
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Juro Bystricky <juro.bystricky>
Component: coreAssignee: Jussi Kukkonen <jku>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: Medium+ CC: jku, meta.mr.watcher, meta.watcher
Version: 2.4   
Target Milestone: 2.4 M2   
Hardware: x86   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)
Attachments:
Description Flags
diffoscope output yo corrobate this Bugzilla entry. none

Description Juro Bystricky 2017-06-05 17:02:25 UTC
Created attachment 3795 [details]
diffoscope output yo corrobate this Bugzilla entry.

Two different builds can produce different outcome (see the attached diffoscope output) . Seems all that is needed is a sorted list MimeType. (created by `gdk-pixbuf-print-mime-types`)
Comment 1 Ross Burton 2017-06-05 18:52:01 UTC
Maxin, can you take this?  I'd usually throw anything G* at Jussi but he's away.
Comment 2 Jussi Kukkonen 2017-06-08 10:28:17 UTC
Thinking about the root cause here, I'm pretty sure that ${libdir}/gdk-pixbuf-2.0/2.10.0/loaders.cache is also prone to random changes (and that is the reason for the thumbnailer file differences).

I can take this and sort the mimetypes during loaders.cache generation. Let's hope that fixes it.
Comment 3 Jussi Kukkonen 2017-06-09 12:47:49 UTC
upstream https://bugzilla.gnome.org/show_bug.cgi?id=783592
Comment 4 Jussi Kukkonen 2017-06-30 08:27:31 UTC
I'm fairly confident this will fix the original issue as well.


commit 01266607aa4d3d4905d2c07b4bdf46ea9f5372f0
Author: Jussi Kukkonen <jussi.kukkonen@intel.com>
Date:   Thu Jun 22 12:52:06 2017 +0300

    gdk-pixbuf: Make loader.cache reproducible
    
    Make the loader order in the file reliable to enable more reproducible
    builds.
    
    [YOCTO #11610]
    
    (From OE-Core rev: 6c97a3291988cec0ac018338cd96aa2e734ca5c4)
Comment 5 Juro Bystricky 2017-06-30 18:01:59 UTC
(In reply to comment #4)
> I'm fairly confident this will fix the original issue as well.
> 
> 
> commit 01266607aa4d3d4905d2c07b4bdf46ea9f5372f0
> Author: Jussi Kukkonen <jussi.kukkonen@intel.com>
> Date:   Thu Jun 22 12:52:06 2017 +0300
> 
>     gdk-pixbuf: Make loader.cache reproducible
>     
>     Make the loader order in the file reliable to enable more reproducible
>     builds.
>     
>     [YOCTO #11610]
>     
>     (From OE-Core rev: 6c97a3291988cec0ac018338cd96aa2e734ca5c4)


Thanks Jussi,
I built two separate images with the patch and they ended up being binary identical.