From debbugs-submit-bounces@debbugs.gnu.org Tue May 02 09:17:33 2017 Received: (at 26734) by debbugs.gnu.org; 2 May 2017 13:17:33 +0000 Received: from localhost ([127.0.0.1]:50438 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d5XgL-0008Jy-2k for submit@debbugs.gnu.org; Tue, 02 May 2017 09:17:33 -0400 Received: from mail.lassieur.org ([83.152.10.219]:58328) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1d5XgJ-0008Jp-Ie for 26734@debbugs.gnu.org; Tue, 02 May 2017 09:17:31 -0400 Received: from newt (46.218.109.88 [46.218.109.88]) by mail.lassieur.org (OpenSMTPD) with ESMTPSA id bbedd004 (TLSv1.2:ECDHE-RSA-AES256-GCM-SHA384:256:NO); Tue, 2 May 2017 13:17:29 +0000 (UTC) References: <874lx4d6j7.fsf@lassieur.org> <87h913h0rj.fsf@gnu.org> User-agent: mu4e 0.9.18; emacs 25.2.1 From: =?utf-8?Q?Cl=C3=A9ment?= Lassieur To: Ludovic =?utf-8?Q?Court=C3=A8s?= Subject: Re: bug#26734: Snippets (even empty ones) of tar sources reset the timestamps of all files In-reply-to: <87h913h0rj.fsf@gnu.org> Date: Tue, 02 May 2017 15:17:29 +0200 Message-ID: <87d1brmm8m.fsf@lassieur.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 26734 Cc: 26734@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Ludovic Courtès writes: > Clément Lassieur skribis: > >> I tried to patch 'patch-and-repack', but it triggers a full >> rebuild... WDYT? > > Right, it’s expected to trigger a full rebuild, so this should be fixed > in ‘core-updates’. Yes, but is there a way to test the patch on one package without having first to rebuild everything? > I guess we’ll have to collect the timestamps of all non-symlink files¹ > in step #1 and to reapply them with ‘set-file-time’ from (guix build > utils) after step #2. Does that mean that symlinks will still have their timestamps changed? To me that is a half-solution... Wouldn't it be easier to collect all recently modified files (those modified by snippet and patches), and set their timestamp to "1 January 1970", without changing the other files? That means removing the --mtime option from tar at step 3. > Thoughts? Would you like to do that? Sure :-) > ¹ Because Guile provides bindings for ‘utime’, which does not support > setting timestamps on symlinks. If the guile binding doesn't support setting timestamps on symlinks, I guess we can still use another way, like a system touch.