Patchwork gnu: vim: Update to 8.0.0047.

login
register
mail settings
Submitter Marius Bakke
Date Oct. 27, 2016, 1:29 p.m.
Message ID <87y419zzs1.fsf@duckhunt.i-did-not-set--mail-host-address--so-tickle-me>
Download mbox | patch
Permalink /patch/16860/
State New
Headers show

Comments

Marius Bakke - Oct. 27, 2016, 1:29 p.m.
The official vim mirrors only carries major versions and individual
patches, no up-to-date releases. This patch changes the source uri to
the tagged github releases instead of downloading all 40+ (so far)
patches individually.

I'm not very happy about changing to a third-party source, but IMO it
beats keeping track of the frequent patches. WDYT?
non such - Oct. 27, 2016, 8:20 p.m.
Marius Bakke <mbakke@fastmail.com> writes:

> The official vim mirrors only carries major versions and individual
> patches, no up-to-date releases. This patch changes the source uri to
> the tagged github releases instead of downloading all 40+ (so far)
> patches individually.
>
> I'm not very happy about changing to a third-party source, but IMO it
> beats keeping track of the frequent patches. WDYT?

Someone (you?) previously told me that this is not third-party
but encouraged source by upstream itself. My other system
(Gentoo) pulls vim from github aswell so this seems okay. I guess
more systems do it this way.

> From 786dc474126431c8d2b9b97644dd629f5f7aed37 Mon Sep 17 00:00:00 2001
> From: Marius Bakke <mbakke@fastmail.com>
> Date: Thu, 27 Oct 2016 14:14:40 +0100
> Subject: [PATCH] gnu: vim: Update to 8.0.0047.
>
> * gnu/packages/vim.scm (vim): Update to 8.0.0047.
> [source]: Change to github release archive.
> ---
>  gnu/packages/vim.scm | 9 +++++----
>  1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
> index 4ee8c7d..32f9e62 100644
> --- a/gnu/packages/vim.scm
> +++ b/gnu/packages/vim.scm
> @@ -48,14 +48,15 @@
>  (define-public vim
>    (package
>      (name "vim")
> -    (version "8.0")
> +    (version "8.0.0047")
>      (source (origin
>               (method url-fetch)
> -             (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-"
> -                                 version ".tar.bz2"))
> +             (uri (string-append "https://github.com/vim/vim/archive/v"
> +                                 version ".tar.gz"))
> +             (file-name (string-append name "-" version ".tar.gz"))
>               (sha256
>                (base32
> -               "1s34rf8089klsbdx5l0iw7vjymir0kzfrx8wb30s31wygnq29axc"))))
> +               "1l24pbc06970crk513a98vlr77sp6wq6d0ylviwk9nhvfz4p0cff"))))
>      (build-system gnu-build-system)
>      (arguments
>       `(#:test-target "test"
Ricardo Wurmus - Oct. 28, 2016, 6:02 a.m.
Marius Bakke <mbakke@fastmail.com> writes:

> The official vim mirrors only carries major versions and individual
> patches, no up-to-date releases. This patch changes the source uri to
> the tagged github releases instead of downloading all 40+ (so far)
> patches individually.
>
> I'm not very happy about changing to a third-party source, but IMO it
> beats keeping track of the frequent patches. WDYT?

I’m also not happy about using a third-party mirror for vim.  Can we be
sure that this is updated consistently and in time?  (Is this done
automatically?)

Guix can handle downloading patches, so there’s really no need for
switching in my opinion.  “gnu/packages/bash.scm” could be used as a
reference for how to deal with a large number of patches.

~~ Ricardo
non such - Oct. 28, 2016, 7:19 a.m.
Ricardo Wurmus <rekado@elephly.net> writes:

> Marius Bakke <mbakke@fastmail.com> writes:
>
>> The official vim mirrors only carries major versions and individual
>> patches, no up-to-date releases. This patch changes the source uri to
>> the tagged github releases instead of downloading all 40+ (so far)
>> patches individually.
>>
>> I'm not very happy about changing to a third-party source, but IMO it
>> beats keeping track of the frequent patches. WDYT?
>
> I’m also not happy about using a third-party mirror for vim.  Can we be
> sure that this is updated consistently and in time?  (Is this done
> automatically?)
>
> Guix can handle downloading patches, so there’s really no need for
> switching in my opinion.  “gnu/packages/bash.scm” could be used as a
> reference for how to deal with a large number of patches.
>
> ~~ Ricardo

Last time I looked at the method used in bash.scm it was not
obvious how the method should be used, and from my impression in
irc it wasn't obvious to others when they tried to update bash or
what it was.

If vim gets an equal method, can we please document how the
patches are downloaded (in other words: how you execute the
download of scripts to store) in the module(s) or somewhere else?

In addition to my first message: I think we should not rely too
much on github.com, when it goes down again we have no fallback
solution.
Marius Bakke - Oct. 28, 2016, 4:55 p.m.
Ricardo Wurmus <rekado@elephly.net> writes:

> Marius Bakke <mbakke@fastmail.com> writes:
>
>> The official vim mirrors only carries major versions and individual
>> patches, no up-to-date releases. This patch changes the source uri to
>> the tagged github releases instead of downloading all 40+ (so far)
>> patches individually.
>>
>> I'm not very happy about changing to a third-party source, but IMO it
>> beats keeping track of the frequent patches. WDYT?
>
> I’m also not happy about using a third-party mirror for vim.  Can we be
> sure that this is updated consistently and in time?  (Is this done
> automatically?)

When I sent this, the 0047 release was about an hour old and the
corresponding patch was not yet available on ftp.vim.org. So it seems
to be the other way around. The "vim" organization on Github is endorsed
on vim.org and maintained by Bram Molenaar himself.

> Guix can handle downloading patches, so there’s really no need for
> switching in my opinion.  “gnu/packages/bash.scm” could be used as a
> reference for how to deal with a large number of patches.

vim-7.4 ended at 2367 patches[0]. 8.0 is currently at 51 (four since
yesterday!), whereas bash has 42, so they are not really comparable. I
think vim would rarely be updated, if it required downloading and
creating potentially hundreds of patch references at once.

They are also not signed, though we could rely on the MD5SUMS file.

With this information, do you still think a custom patch importer is
better? I don't really mind either way, but someone needs to make it :)

0: http://ftp.vim.org/pub/vim/patches/7.4/
Ricardo Wurmus - Oct. 28, 2016, 5:12 p.m.
Marius Bakke <mbakke@fastmail.com> writes:

> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> Marius Bakke <mbakke@fastmail.com> writes:
>>
>>> The official vim mirrors only carries major versions and individual
>>> patches, no up-to-date releases. This patch changes the source uri to
>>> the tagged github releases instead of downloading all 40+ (so far)
>>> patches individually.
>>>
>>> I'm not very happy about changing to a third-party source, but IMO it
>>> beats keeping track of the frequent patches. WDYT?
>>
>> I’m also not happy about using a third-party mirror for vim.  Can we be
>> sure that this is updated consistently and in time?  (Is this done
>> automatically?)
>
> When I sent this, the 0047 release was about an hour old and the
> corresponding patch was not yet available on ftp.vim.org. So it seems
> to be the other way around. The "vim" organization on Github is endorsed
> on vim.org and maintained by Bram Molenaar himself.

Ah, cool.  This makes all the difference, IMO.

>> Guix can handle downloading patches, so there’s really no need for
>> switching in my opinion.  “gnu/packages/bash.scm” could be used as a
>> reference for how to deal with a large number of patches.
>
> vim-7.4 ended at 2367 patches[0]. 8.0 is currently at 51 (four since
> yesterday!), whereas bash has 42, so they are not really comparable. I
> think vim would rarely be updated, if it required downloading and
> creating potentially hundreds of patch references at once.
>
> They are also not signed, though we could rely on the MD5SUMS file.
>
> With this information, do you still think a custom patch importer is
> better? I don't really mind either way, but someone needs to make it :)

No, you convinced me :)  Thanks for your patience!

~~ Ricardo
Marius Bakke - Oct. 28, 2016, 7:57 p.m.
Ricardo Wurmus <rekado@elephly.net> writes:

>>> Guix can handle downloading patches, so there’s really no need for
>>> switching in my opinion.  “gnu/packages/bash.scm” could be used as a
>>> reference for how to deal with a large number of patches.
>>
>> vim-7.4 ended at 2367 patches[0]. 8.0 is currently at 51 (four since
>> yesterday!), whereas bash has 42, so they are not really comparable. I
>> think vim would rarely be updated, if it required downloading and
>> creating potentially hundreds of patch references at once.
>>
>> They are also not signed, though we could rely on the MD5SUMS file.
>>
>> With this information, do you still think a custom patch importer is
>> better? I don't really mind either way, but someone needs to make it :)
>
> No, you convinced me :)  Thanks for your patience!

Thanks for questioning my oft-rushed conclusions! :)
I updated vim in a9afb956b3232ccfb7deaf3feed02b60a12d65bf.

Patch

From 786dc474126431c8d2b9b97644dd629f5f7aed37 Mon Sep 17 00:00:00 2001
From: Marius Bakke <mbakke@fastmail.com>
Date: Thu, 27 Oct 2016 14:14:40 +0100
Subject: [PATCH] gnu: vim: Update to 8.0.0047.

* gnu/packages/vim.scm (vim): Update to 8.0.0047.
[source]: Change to github release archive.
---
 gnu/packages/vim.scm | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
index 4ee8c7d..32f9e62 100644
--- a/gnu/packages/vim.scm
+++ b/gnu/packages/vim.scm
@@ -48,14 +48,15 @@ 
 (define-public vim
   (package
     (name "vim")
-    (version "8.0")
+    (version "8.0.0047")
     (source (origin
              (method url-fetch)
-             (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-"
-                                 version ".tar.bz2"))
+             (uri (string-append "https://github.com/vim/vim/archive/v"
+                                 version ".tar.gz"))
+             (file-name (string-append name "-" version ".tar.gz"))
              (sha256
               (base32
-               "1s34rf8089klsbdx5l0iw7vjymir0kzfrx8wb30s31wygnq29axc"))))
+               "1l24pbc06970crk513a98vlr77sp6wq6d0ylviwk9nhvfz4p0cff"))))
     (build-system gnu-build-system)
     (arguments
      `(#:test-target "test"
-- 
2.10.1