From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <guix-devel-bounces+larch=yhetil.org@gnu.org>
Received: from mp11.migadu.com ([2001:41d0:2:4a6f::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by ms5.migadu.com with LMTPS
	id KF6HFW8gs2K9FwAAbAwnHQ
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Wed, 22 Jun 2022 16:00:15 +0200
Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	by mp11.migadu.com with LMTPS
	id oNmEFW8gs2Jn8wAA9RJhRA
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	for <larch@yhetil.org>; Wed, 22 Jun 2022 16:00:15 +0200
Received: from lists.gnu.org (lists.gnu.org [209.51.188.17])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(No client certificate requested)
	by aspmx1.migadu.com (Postfix) with ESMTPS id 029B0170A5
	for <larch@yhetil.org>; Wed, 22 Jun 2022 16:00:15 +0200 (CEST)
Received: from localhost ([::1]:55134 helo=lists1p.gnu.org)
	by lists.gnu.org with esmtp (Exim 4.90_1)
	(envelope-from <guix-devel-bounces+larch=yhetil.org@gnu.org>)
	id 1o40tx-0005bE-RZ
	for larch@yhetil.org; Wed, 22 Jun 2022 10:00:13 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10]:52132)
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <maxim.cournoyer@gmail.com>)
 id 1o40t8-0005Zc-TP
 for guix-devel@gnu.org; Wed, 22 Jun 2022 09:59:22 -0400
Received: from mail-qk1-x72b.google.com ([2607:f8b0:4864:20::72b]:37506)
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <maxim.cournoyer@gmail.com>)
 id 1o40t7-0000vl-3b
 for guix-devel@gnu.org; Wed, 22 Jun 2022 09:59:22 -0400
Received: by mail-qk1-x72b.google.com with SMTP id g15so12553576qke.4
 for <guix-devel@gnu.org>; Wed, 22 Jun 2022 06:59:20 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112;
 h=from:to:cc:subject:references:date:in-reply-to:message-id
 :user-agent:mime-version:content-transfer-encoding;
 bh=JUr4W6KdR3evYlc4UmL+jh8T6UDQyE/U/3PsF5u+7W4=;
 b=FbXeuATOo0y6c0Jx1kOaw4GE2r62igr8KS4M6N0vsLXx1p0/1x9zoCJBKI0MjvrvLI
 hGNOyPbkx4X11Co9k1RaYYNCl0DCrClJP87CEBcC+nBJ4xM1saQSyys2kttz2AHxEb0U
 N9mJgn97AfdGB/uyYAL5kFBcQz5JdgXjvVhpn6ksEKhGASJPg19sELcaxmkpLGr47tnS
 07SCN/b1JRk/YE5/wDd7nNnUWOFZSBiMFt4LabXaaoJ7j1V3MBbLBBEpWUOUkX7hT0Zh
 lSMWhggWK2eFCRgbpBYnMLLPBUa8vQtKst4VHo83n6sdKi9tGCdVJ66kEsdWoxy9VZVQ
 AFRw==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to
 :message-id:user-agent:mime-version:content-transfer-encoding;
 bh=JUr4W6KdR3evYlc4UmL+jh8T6UDQyE/U/3PsF5u+7W4=;
 b=BOH9fgC5CijtdX1HET+Lj+HaIfa6XIcS7gyeF93nafiM77Nrvm/ytZ8B5WJQR+2wIU
 u0Wwg7qLcqcwowz1sNsP5Z7uo7VU2owfdWytnOynjD8KN18YKc2p66XBtyKl5m3BQJXJ
 FDBbvvYQpO7uhra7JKyR6rsYNUtGzmbY2DlnD6PlfN24DgTgMS49sHLeZqE84VzI5ie5
 mfjVsyyqTI8M6JbhQyVt/6zKDazPvrqFBLxdgOAcRYrSQv6O8SdZcFCfcBJZcOv9agGQ
 6Tz2WtmCFNnem1W8Xb2Ya1NmO8HgcLqz0lcg6uj3BauhJpQIeZk9mbAwFdBQBL4usK7/
 cSbQ==
X-Gm-Message-State: AJIora8zxbzI/HKqHyApA36EUU3X53+stV9qeTMU3WSdbMCsaEhpLn9q
 2WVWy1do9SbR3Ow0CZIEtovPcfq5XVRfjA==
X-Google-Smtp-Source: AGRyM1snjtR54dWfexgJQR383imNKglv5/zZz6XheaRZet96RYTFzcJBlIuu3ssx1iMuPP2T6s+GnA==
X-Received: by 2002:a05:620a:29ce:b0:6a7:1379:62d4 with SMTP id
 s14-20020a05620a29ce00b006a7137962d4mr2431672qkp.604.1655906359507; 
 Wed, 22 Jun 2022 06:59:19 -0700 (PDT)
Received: from hurd (dsl-10-141-244.b2b2c.ca. [72.10.141.244])
 by smtp.gmail.com with ESMTPSA id
 u11-20020a05620a454b00b006a74da327fcsm17061916qkp.99.2022.06.22.06.59.18
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Wed, 22 Jun 2022 06:59:19 -0700 (PDT)
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
To: Vagrant Cascadian <vagrant@reproducible-builds.org>
Cc: Guix Devel <guix-devel@gnu.org>
Subject: Re: Set FORCE_SOURCE_DATE=1 by default
References: <87bkv0f52g.fsf@contorta> <87tu8d5ozo.fsf@gmail.com>
 <87v8stnsca.fsf@contorta>
Date: Wed, 22 Jun 2022 09:59:18 -0400
In-Reply-To: <87v8stnsca.fsf@contorta> (Vagrant Cascadian's message of "Tue,
 21 Jun 2022 23:08:05 -0700")
Message-ID: <87pmj06bpl.fsf@gmail.com>
User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux)
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Received-SPF: pass client-ip=2607:f8b0:4864:20::72b;
 envelope-from=maxim.cournoyer@gmail.com; helo=mail-qk1-x72b.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001,
 T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-BeenThere: guix-devel@gnu.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Development of GNU Guix and the GNU System distribution."
 <guix-devel.gnu.org>
List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-devel>,
 <mailto:guix-devel-request@gnu.org?subject=unsubscribe>
List-Archive: <https://lists.gnu.org/archive/html/guix-devel>
List-Post: <mailto:guix-devel@gnu.org>
List-Help: <mailto:guix-devel-request@gnu.org?subject=help>
List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-devel>,
 <mailto:guix-devel-request@gnu.org?subject=subscribe>
Errors-To: guix-devel-bounces+larch=yhetil.org@gnu.org
Sender: "Guix-devel" <guix-devel-bounces+larch=yhetil.org@gnu.org>
X-Migadu-Flow: FLOW_IN
X-Migadu-To: larch@yhetil.org
X-Migadu-Country: US
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org;
	s=key1; t=1655906415;
	h=from:from:sender:sender:reply-to:subject:subject:date:date:
	 message-id:message-id:to:to:cc:cc:mime-version:mime-version:
	 content-type:content-type:
	 content-transfer-encoding:content-transfer-encoding:
	 in-reply-to:in-reply-to:references:references:list-id:list-help:
	 list-unsubscribe:list-subscribe:list-post:dkim-signature;
	bh=JUr4W6KdR3evYlc4UmL+jh8T6UDQyE/U/3PsF5u+7W4=;
	b=JPBr1FRQpZEKvRNcSjJ3O8xQMLg/uc+tO7S3MXkng+7PjI//bbv1560ljh79+4k3oEBDlA
	PcujTh/4P7Xi3X9W2xqzPPIU0rjJwkzfzJK59/FSZNz6GnyAZyZcFdmLpV6lxABkaQAf/A
	TOIeq8aa/0IVlf9tj1JgwTE7aIXP/oI/PS2SBUdUudPNfrNTURJ/hbAA/2xxZVjXNt2vLr
	5sGNoBE9CHig7ZB2xC9VWn5GigWiQbH7Ek+AvTBuqxXfwWzWHTzJaGtCbhkF3cXn9xNd9/
	l5PrLSIyTcI4OvA3T72W2s/OgR35kAYcQB35PMs76zc+y3Knu2JVELl9KaneDg==
ARC-Seal: i=1; s=key1; d=yhetil.org; t=1655906415; a=rsa-sha256; cv=none;
	b=OiI6Cz9SmGAa0JjG3MFJ9SWUyT52T2fu0Ok2hC5sc86PzeQmMm6maIohiHAwVjmhgzyYFD
	zdAaRwswWJpZZxc6XDizXeBZsWNuwO++DrMNnIsWaHxnKeEm9E1FEcp35es3MxK3LECly4
	6xQt+aSHQ9Q0Jx/UiPD+d+N3UdDhW+JV/N9AA9H2ZsK1CKdXbarMJEfohsJ0WBv8goHskY
	okeM/HxalwQGVz69y8/riRclfgBRuBZsW3tkb7chSUSMJQrmeiqeqF403gxQK+nZkJABqZ
	+CTFRfOykG1eru+WJ8B06NYCSylUWOjKIqWp6dofJQzJBsJozqlATnR0xObzMQ==
ARC-Authentication-Results: i=1;
	aspmx1.migadu.com;
	dkim=pass header.d=gmail.com header.s=20210112 header.b=FbXeuATO;
	dmarc=pass (policy=none) header.from=gmail.com;
	spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"
X-Migadu-Spam-Score: -5.46
Authentication-Results: aspmx1.migadu.com;
	dkim=pass header.d=gmail.com header.s=20210112 header.b=FbXeuATO;
	dmarc=pass (policy=none) header.from=gmail.com;
	spf=pass (aspmx1.migadu.com: domain of "guix-devel-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-devel-bounces+larch=yhetil.org@gnu.org"
X-Migadu-Queue-Id: 029B0170A5
X-Spam-Score: -5.46
X-Migadu-Scanner: scn0.migadu.com
X-TUID: G7glonK4ks2k

Hi,

Vagrant Cascadian <vagrant@reproducible-builds.org> writes:

> On 2022-06-21, Maxim Cournoyer wrote:
>> Vagrant Cascadian <vagrant@reproducible-builds.org> writes:
>>> So, guix sets SOURCE_DATE_EPOCH=3D1 by default in
>>> guix/build/gnu-build-system.scm, which is great!
>>>
>>> This allows guix packages in many cases to build packages reproducibly,
>>> with a curious side-effect that takes us all back to the early 70s in
>>> some corner-cases (or even late 60s, dependent on timezone).
>>>
>>> That said, some projects (such as texlive) might be worried about
>>> messing with time too much (I get it, lots of cautionary sci-fi
>>> stories!), and so you *also* need FORCE_SOURCE_DATE=3D1 to be set in or=
der
>>> to respect SOURCE_DATE_EPOCH.
>>
>> That seems ridiculous.  Has anyone tried getting in touch with them to
>> get their arguments about why inventing another variable that means the
>> same thing was necessary?
>
> Yes, there were some fairly long threads about it and I have little hope
> that revisiting it would change much; it was originally implemented as a
> texlive specific variable, which was changed to the FORCE_SOURCE_DATE
> variable to at least avoid the danger of every project inventing their
> own name-brand variables...
>
>
>> I'd much prefer challenging that stance than "endorsing" it in Guix :-).
>> I think it'd be OK to reluctantly add it in as a stop-gap fix in Guix,
>> but *only* after opening an issue to discuss it upstream and linking to
>> that issue in Guix.
>
> I get it. I really do. It kind of grates at me every time I think about
> this.
>
> I know it really is not great and seems quite suboptimal to me, but I
> don't personally think rehashing the arguments will be a productive use
> of time for anyone...
>
> I think the pragmatism of making more packages reproducible by conceding
> to set FORCE_SOURCE_DATE is the appropriate way forward; I agree it
> feels silly or even maybe would go so far as to say a bit "wrong".

Perhaps to show our stand here we could patch our copy of pdftex with
's/FORCE_SOURCE_DATE/SOURCE_DATE_EPOCH/', lest we end up with a grocery
list of *SOURCE_DATE* variable variants.  Even reproducible-builds.org
discourage its use (directed at upstream rather than downstream, but
still) [0]:

    If for some reason you=E2=80=99re still conflicted on suddenly changing=
 the
    meaning of your =E2=80=9Cnow()=E2=80=9D function and desire another swi=
tch other than
    SOURCE_DATE_EPOCH being set or not, the texlive project came up with the
    variable FORCE_SOURCE_DATE; when that environment variable is set to 1
    cases that wouldn=E2=80=99t normally obey SOURCE_DATE_EPOCH will do. We=
 strongly
    discourage the usage of such variable; SOURCE_DATE_EPOCH is meant to be
    already a flag forcing a particular timestamp to be used.

It'd still be nice to have the link to the upstream discussion that led
using a FORCE_SOURCE_DATE variable mentioned in a comment above where
we'd do this trivial substitution; do you have a link to it?  I couldn't
find it.

Thanks,

Maxim

[0]  https://reproducible-builds.org/docs/source-date-epoch/