Question about strip-nondeterminism in bsh
jathan
jathanblackred at openmailbox.org
Mon Oct 16 18:56:53 UTC 2017
On 09/10/17 10:47, Chris Lamb wrote:
> [Adding 877470 at bugs.debian.org to CC]
>
> Hi jathan,
>
>> Also I want to ask you what does it mean you actually use
>> /usr/share/dpkg/pkg-info.mk for SOURCE_DATE_EPOCH
>
> See, for example:
>
> https://github.com/lamby/pkg-python-daiquiri/blob/debian/sid/debian/rules#L3
>
> If you take a look at the /usr/share/dpkg/pkg-info.mk file itself,
> it should be fairly clear what it exports to the outside environment.
>
> In the python-daiquiri example, I'm using DEB_VERSION_UPSTREAM for a
> reproducibility-related reason, but you should be able to see how it
> applies to SOURCE_DATE_EPOCH too :)
>
>> Thanks a lot and sorry for my delay to reply,
>
> No worries about the delay. Note that I've added 877470 at bugs.debian.org to
> the CC; generally when a question pertains to a specific bug, it's a great
> idea to ensure that the conversation is archived there. Keeps everyone sane
> too as it's easy to "load" context after a few days/weeks. :)
>
>
> Best wishes,
>
Hi Lamby!,
Thanks a lot for sharing your pkg-python-daiquiri example. I have
executed "less /usr/share/dpkg/pkg-info.mk" on my local machine with
Debian Stretch and I have the next content:
# Makefile snippet defining the following variables:
#
# DEB_SOURCE: the source package name
# DEB_VERSION: the full version of the package (epoch + upstream vers. +
revision)
# DEB_VERSION_EPOCH_UPSTREAM: the package's version without the Debian
revision
# DEB_VERSION_UPSTREAM_REVISION: the package's version without the
Debian epoch
# DEB_VERSION_UPSTREAM: the package's upstream version
# DEB_DISTRIBUTION: the distribution(s) listed in the current entry of
debian/changelog
#
# SOURCE_DATE_EPOCH: the source release date as seconds since the epoch, as
# specified by <https://reproducible-builds.org/specs/source-date-epoch/>
dpkg_late_eval ?= $(or $(value DPKG_CACHE_$(1)),$(eval DPKG_CACHE_$(1)
:= $(shell $(2)))$(value DPKG_CACHE_$(1)))
DEB_SOURCE = $(call dpkg_late_eval,DEB_SOURCE,dpkg-parsechangelog -SSource)
DEB_VERSION = $(call dpkg_late_eval,DEB_VERSION,dpkg-parsechangelog
-SVersion)
DEB_VERSION_EPOCH_UPSTREAM = $(call
dpkg_late_eval,DEB_VERSION_EPOCH_UPSTREAM,echo '$(DEB_VERSION)' | sed -e
's/-[^-]*$$//')
DEB_VERSION_UPSTREAM_REVISION = $(call
dpkg_late_eval,DEB_VERSION_UPSTREAM_REVISION,echo '$(DEB_VERSION)' | sed
-e 's/^[0-9]*://')
DEB_VERSION_UPSTREAM = $(call dpkg_late_eval,DEB_VERSION_UPSTREAM,echo
'$(DEB_VERSION_EPOCH_UPSTREAM)' | sed -e 's/^[0-9]*://')
DEB_DISTRIBUTION = $(call
dpkg_late_eval,DEB_DISTRIBUTION,dpkg-parsechangelog -SDistribution)
SOURCE_DATE_EPOCH ?= $(call
dpkg_late_eval,SOURCE_DATE_EPOCH,dpkg-parsechangelog -STimestamp)
export SOURCE_DATE_EPOCH
How can I see the /usr/share/dpkg/pkg-info.mk you have used for
pkg-python-daiquiri to make a comparison of contents and understand
deeper how you did it please? Thinking about these two lines of your code:
include /usr/share/dpkg/pkg-info.mk
export PBR_VERSION = $(DEB_VERSION_UPSTREAM)
And also considering the /usr/share/dpkg/pkg-info.mk file suggestion, I
would apply SOURCE_DATE_EPOCH in the next way:
include /usr/share/dpkg/pkg-info.mk
export SOURCE_DATE_EPOCH = $(call
dpkg_late_eval,SOURCE_DATE_EPOCH,dpkg-parsechangelog -STimestamp)
or
export SOURCE_DATE_EPOCH = $(shell dpkg-parsechangelog -STimestamp)
(based on
https://wiki.debian.org/ReproducibleBuilds/TimestampsProposal#Examples)
Would it be right for me to use either of these two options or am I
wrong in both? Best regards.
Jathan
--
Por favor evita enviarme adjuntos en formato de word o powerpoint, si
quieres saber porque lee esto:
http://www.gnu.org/philosophy/no-word-attachments.es.html
¡Cámbiate a GNU/Linux! http://getgnulinux.org/es
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 878 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/reproducible-builds/attachments/20171016/a4d84363/attachment.sig>
More information about the Reproducible-builds
mailing list