<?xml version="1.0" encoding="UTF-8" ?>

<bugzilla version="5.2"
          urlbase="https://bugzilla.altlinux.org/"
          
          maintainer="jenya@basealt.ru"
>

    <bug>
          <bug_id>34105</bug_id>
          
          <creation_ts>2017-10-31 13:26:55 +0300</creation_ts>
          <short_desc>Добавить поддержку переменной окружения SOURCE_DATE_EPOCH в сборочную инфраструктуру</short_desc>
          <delta_ts>2020-04-21 23:29:40 +0300</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>4</classification_id>
          <classification>Development</classification>
          <product>Sisyphus</product>
          <component>cross-component</component>
          <version>unstable</version>
          <rep_platform>all</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc>https://reproducible-builds.org/specs/source-date-epoch/</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>32814</dependson>
    
    <dependson>34200</dependson>
    
    <dependson>34202</dependson>
    
    <dependson>34203</dependson>
          <blocked>34214</blocked>
    
    <blocked>34231</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Vladimir D. Seleznev">vseleznv</reporter>
          <assigned_to name="Dmitry V. Levin">ldv</assigned_to>
          <cc>lav</cc>
    
    <cc>mike</cc>
          
          <qa_contact name="Dmitry V. Levin">ldv</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>166801</commentid>
    <comment_count>0</comment_count>
    <who name="Vladimir D. Seleznev">vseleznv</who>
    <bug_when>2017-10-31 13:26:55 +0300</bug_when>
    <thetext>Для обеспечения воспроизводимости сборки необходимо добавить поддержку переменной окружения SOURCE_DATE_EPOCH в инструменты сборочной инфраструктуры. Сейчас поддержка SOURCE_DATE_EPOCH добавлена в основные пакеты, участвующие в сборке программного обеспечения (компиляция, генерация документации и др.), необходимо добавить её и инструменты, участвующие непосредственно в сборке пакетов: gear, hasher и rpm-build.

Пока предполагается, что в SOURCE_DATE_EPOCH будет записываться дата подписи (git-тега, если собирать из gear, или же подпись src.rpm в противном случае). В таком случае при сборке из gear должен передавать SOURCE_DATE_EPOCH дальше в hasher.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167364</commentid>
    <comment_count>1</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2017-11-20 19:43:30 +0300</bug_when>
    <thetext>Поддержка $SOURCE_DATE_EPOCH в сборочной инфраструктуре реализована в следующем виде:
* при сборке из подписанного git-тэга rpmbuild&apos;у передаётся переменная SOURCE_DATE_EPOCH, содержащая tagger timestamp;
* при сборке из подписанного srpm-пакета rpmbuild&apos;у передаётся переменная SOURCE_DATE_EPOCH, содержащая buildtime этого пакета;
* rpmbuild учитывает $SOURCE_DATE_EPOCH при формировании пакетов.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>189396</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Shigorin">mike</who>
    <bug_when>2020-04-21 22:28:41 +0300</bug_when>
    <thetext>Так понимаю, об этом же нынешняя сборка rpm-build?

* Tue Apr 21 2020 Dmitry V. Levin &lt;ldv@altlinux.org&gt; 4.0.4-alt139
- ldd.in: made preloading of PIE objects work again.
- Set the value of SOURCE_DATE_EPOCH environment variable (if any)
  as the source package buildtime.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>189397</commentid>
    <comment_count>3</comment_count>
    <who name="Dmitry V. Levin">ldv</who>
    <bug_when>2020-04-21 23:29:40 +0300</bug_when>
    <thetext>(In reply to Michael Shigorin from comment #2)
&gt; Так понимаю, об этом же нынешняя сборка rpm-build?
&gt; 
&gt; * Tue Apr 21 2020 Dmitry V. Levin &lt;ldv@altlinux.org&gt; 4.0.4-alt139
&gt; - ldd.in: made preloading of PIE objects work again.
&gt; - Set the value of SOURCE_DATE_EPOCH environment variable (if any)
&gt;   as the source package buildtime.

Это для того, что написано в коммите:

packageSources: override RPMTAG_BUILDTIME with $SOURCE_DATE_EPOCH
    
When hasher generates an src.rpm from pkg.tar, it sets $SOURCE_DATE_EPOCH
according to pkg.tar&apos;s specfile modification time which in turn is set to
the corresponding commit time.
    
When hasher builds from an src.rpm, it sets $SOURCE_DATE_EPOCH according
to the src.rpm&apos;s RPMTAG_BUILDTIME.
    
This changes helps to connect these two stages, setting the
RPMTAG_BUILDTIME of the generated src.rpm to $SOURCE_DATE_EPOCH.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>