From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:49589) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dbBsf-0006x2-AX for guix-patches@gnu.org; Fri, 28 Jul 2017 16:29:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dbBsc-0002Ct-3h for guix-patches@gnu.org; Fri, 28 Jul 2017 16:29:05 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:57669) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1dbBsb-0002Cb-Vp for guix-patches@gnu.org; Fri, 28 Jul 2017 16:29:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1dbBsb-0000EB-Rg for guix-patches@gnu.org; Fri, 28 Jul 2017 16:29:01 -0400 Subject: [bug#27865] [PATCH 0/3] Use Guile-Git for 'guix pull' Resent-Message-ID: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49353) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dbBs6-0005TN-3W for guix-patches@gnu.org; Fri, 28 Jul 2017 16:28:31 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dbBs5-0001rx-9h for guix-patches@gnu.org; Fri, 28 Jul 2017 16:28:30 -0400 From: Ludovic =?UTF-8?Q?Court=C3=A8s?= Date: Fri, 28 Jul 2017 22:28:14 +0200 Message-Id: <20170728202814.5355-1-ludo@gnu.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 27865@debbugs.gnu.org Hello Guix! This is the long-awaited change where ‘guix pull’ fetches code over Git instead of stupidly grabbing a full snapshot generated on-the-fly by the poor Savannah servers. As a side-effect, ‘guix pull’ gains a ‘--commit’ and a ‘--branch’ option. Also, ‘guix --version’ will now show a Git commit ID instead of a date. This change makes Guile-Git a hard dependency. The transition might be somewhat bumpy since it’s possible that users not having Guile-Git installed will run ‘guix pull’ and, upon completion, will get an error when they re-run ‘guix pull’. This will be fixed by installing ‘guile-git’. Thinking about it, (guix scripts pull) could perhaps try to be smart and have an error message saying “please install Guile-Git” or something. Thoughts? Another (minor) issue is that there hasn’t been an official release of Guile-Git yet, and things are still changing a little bit. However I think most of the important things are in place. Guile-Git currently lacks bindings for the progress-report API when cloning the repo. We’ll use it when it’s available. Feedback welcome! Thanks, Ludo’. Ludovic Courtès (3): build: Make Guile-Git a hard requirement. pull: Fetch source code from Git. pull: Use the commit ID as the version string. Makefile.am | 8 +- configure.ac | 10 ++- doc/guix.texi | 29 ++++--- guix/scripts/pull.scm | 219 ++++++++++++++++++++++++-------------------------- 4 files changed, 124 insertions(+), 142 deletions(-) -- 2.13.3