Our current vim package is 2.5 years old, and the current patch set on top of
it to bring it up to today is ~1500 patches. Interestingly, every. single.
commit. is tagged in git, so updating to a more recent release is rather easy.
This has been one of the things that has kept me using Debian's vim over
Guix's vim.In this patch I've only updated it to 7.4.963 because that's the
version Debian is currently shipping (in sid), which is only 3 months old,
and some of the later versions had issues with the test. This'll bump us
forward a lot, which is a good starting point.

-- 
Efraim Flashner   <efr...@flashner.co.il>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
From d99bead9ea8ea9d72ab128aab404f8513cfc5253 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efr...@flashner.co.il>
Date: Wed, 9 Mar 2016 11:07:39 +0200
Subject: [PATCH 1/2] gnu: vim: Update to 7.4.963.

* gnu/packages/vim.scm (vim): Update to 7.4.963.
[source]: Use git-tags for downloading.
---
 gnu/packages/vim.scm | 22 +++++++++++++---------
 1 file changed, 13 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 2418963..4834b69 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2013 Cyril Roelandt <tipec...@gmail.com>
+;;; Copyright © 2016 Efraim Flashner <efr...@flashner.co.il>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -19,7 +20,7 @@
 (define-module (gnu packages vim)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
-  #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages gawk)
@@ -31,14 +32,17 @@
 (define-public vim
   (package
     (name "vim")
-    (version "7.4")
-    (source (origin
-             (method url-fetch)
-             (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-";
-                                 version ".tar.bz2"))
-             (sha256
-              (base32
-               "1pjaffap91l2rb9pjnlbrpvb3ay5yhhr3g91zabjvw1rqk9adxfh"))))
+    (version "7.4.963")
+    (source
+      (origin
+        (method git-fetch)
+        (uri (git-reference
+               (url "https://github.com/vim/vim.git";)
+               (commit (string-append "v" version))))
+        (file-name (string-append "vim-" version "-checkout"))
+        (sha256
+         (base32
+          "1k4n5ybw5wp2iwfp8ax7x3cq5x137rq1hc10h51c9a13qmby741b"))))
     (build-system gnu-build-system)
     (arguments
      `(#:test-target "test"
-- 
2.7.0

From 0b2d7df57366d27aa715ba4d824ef0b80b458823 Mon Sep 17 00:00:00 2001
From: Efraim Flashner <efr...@flashner.co.il>
Date: Wed, 9 Mar 2016 11:09:06 +0200
Subject: [PATCH 2/2] gnu: vim: Use 'modify-phases'.

* gnu/packages/vim.scm (vim)[arguments]: Use 'modify-phases' syntax.
---
 gnu/packages/vim.scm | 15 +++++++--------
 1 file changed, 7 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 4834b69..959bccf 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -48,14 +48,13 @@
      `(#:test-target "test"
        #:parallel-tests? #f
        #:phases
-        (alist-cons-after
-         'configure 'patch-config-files
-         (lambda _
-           (substitute* "runtime/tools/mve.awk"
-             (("/usr/bin/nawk") (which "gawk")))
-           (substitute* "src/testdir/Makefile"
-             (("/bin/sh") (which "sh"))))
-          %standard-phases)))
+       (modify-phases %standard-phases
+         (add-after 'configure 'patch-config-files
+           (lambda _
+             (substitute* "runtime/tools/mve.awk"
+               (("/usr/bin/nawk") (which "gawk")))
+             (substitute* "src/testdir/Makefile"
+               (("/bin/sh") (which "sh"))))))))
     (inputs
      `(("gawk" ,gawk)
        ("inetutils" ,inetutils)
-- 
2.7.0

Attachment: signature.asc
Description: PGP signature

Reply via email to