Bug 11610 - gdk-pixbuf: improve reproducibility
Summary: gdk-pixbuf: improve reproducibility
Status: RESOLVED FIXED
Alias: None
Product: OE-Core
Classification: Build System, Metadata & Runtime
Component: core (show other bugs)
Version: 2.4
Hardware: x86 Multiple
: Medium+ enhancement
Target Milestone: 2.4 M2
Assignee: Jussi Kukkonen
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2017-06-05 17:02 UTC by Juro Bystricky
Modified: 2017-06-30 18:01 UTC (History)
3 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments
diffoscope output yo corrobate this Bugzilla entry. (17.00 KB, text/html)
2017-06-05 17:02 UTC, Juro Bystricky
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
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.