[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] gnu: Add vim-full.
From: |
ng0 |
Subject: |
Re: [PATCH] gnu: Add vim-full. |
Date: |
Mon, 17 Oct 2016 21:09:37 +0000 |
Kei Kebreau <address@hidden> writes:
> [ Unknown signature status ]
> ng0 <address@hidden> writes:
>
>> * gnu/packages/vim.scm (vim-full): New variable.
>> * gnu/packages/patches/vim-8.0.0003.patch: New file.
>> * gnu/packages/patches/vim-8.0.0004.patch: New file.
>> * gnu/packages/patches/vim-8.0.0005.patch: New file.
>> * gnu/local.mk (dist_patch_DATA): Add patches.
>> ---
>> gnu/local.mk | 3 ++
>> gnu/packages/patches/vim-8.0.0003.patch | 87
>> +++++++++++++++++++++++++++++++++
>> gnu/packages/patches/vim-8.0.0004.patch | 60 +++++++++++++++++++++++
>> gnu/packages/patches/vim-8.0.0005.patch | 45 +++++++++++++++++
>> gnu/packages/vim.scm | 81 ++++++++++++++++++++++++++++++
>> 5 files changed, 276 insertions(+)
>> create mode 100644 gnu/packages/patches/vim-8.0.0003.patch
>> create mode 100644 gnu/packages/patches/vim-8.0.0004.patch
>> create mode 100644 gnu/packages/patches/vim-8.0.0005.patch
>>
>> diff --git a/gnu/local.mk b/gnu/local.mk
>> index 526756f..79c1326 100644
>> --- a/gnu/local.mk
>> +++ b/gnu/local.mk
>> @@ -874,6 +874,9 @@ dist_patch_DATA =
>> \
>> %D%/packages/patches/util-linux-tests.patch \
>> %D%/packages/patches/upower-builddir.patch \
>> %D%/packages/patches/valgrind-enable-arm.patch \
>> + %D%/packages/patches/vim-8.0.0003.patch \
>> + %D%/packages/patches/vim-8.0.0004.patch \
>> + %D%/packages/patches/vim-8.0.0005.patch \
>> %D%/packages/patches/vorbis-tools-CVE-2014-9638+CVE-2014-9639.patch
>> \
>> %D%/packages/patches/vorbis-tools-CVE-2014-9640.patch \
>> %D%/packages/patches/vorbis-tools-CVE-2015-6749.patch \
>> diff --git a/gnu/packages/patches/vim-8.0.0003.patch
>> b/gnu/packages/patches/vim-8.0.0003.patch
>> new file mode 100644
>> index 0000000..11e9c91
>> --- /dev/null
>> +++ b/gnu/packages/patches/vim-8.0.0003.patch
>> @@ -0,0 +1,87 @@
>> +To: address@hidden
>> +Subject: Patch 8.0.0003
>> +Fcc: outbox
>> +From: Bram Moolenaar <address@hidden>
>> +Mime-Version: 1.0
>> +Content-Type: text/plain; charset=UTF-8
>> +Content-Transfer-Encoding: 8bit
>> +------------
>> +
>> +Patch 8.0.0003
>> +Problem: getwinvar() returns wrong Value of boolean and number options,
>> + especially non big endian systems. (James McCoy)
>> +Solution: Cast the pointer to long or int. (closes #1060)
>> +Files: src/option.c, src/testdir/test_bufwintabinfo.vim
>> +
>> +
>> +*** vim80/src/option.c 2016-09-02 19:26:03.000000000 +0200
>> +--- vim80/src/option.c 2016-09-12 19:20:38.051099762 +0200
>> +***************
>> +*** 12363,12370 ****
>> + {
>> + if (opt->flags & P_STRING)
>> + dict_add_nr_str(d, opt->fullname, 0L, *(char_u **)varp);
>> + else
>> +! dict_add_nr_str(d, opt->fullname, *varp, NULL);
>> + }
>> + }
>> + }
>> +--- 12363,12372 ----
>> + {
>> + if (opt->flags & P_STRING)
>> + dict_add_nr_str(d, opt->fullname, 0L, *(char_u **)varp);
>> ++ else if (opt->flags & P_NUM)
>> ++ dict_add_nr_str(d, opt->fullname, *(long *)varp, NULL);
>> + else
>> +! dict_add_nr_str(d, opt->fullname, *(int *)varp, NULL);
>> + }
>> + }
>> + }
>> +*** vim80/src/testdir/test_bufwintabinfo.vim 2016-08-27
>> 21:14:58.000000000 +0200
>> +--- vim80/src/testdir/test_bufwintabinfo.vim 2016-09-12
>> 19:31:06.346360420 +0200
>> +***************
>> +*** 87,95 ****
>> +--- 87,103 ----
>> + endfunc
>> +
>> + function Test_get_win_options()
>> ++ if has('folding')
>> ++ set foldlevel=999
>> ++ endif
>> ++ set list
>> + let opts = getwinvar(1, '&')
>> + call assert_equal(v:t_dict, type(opts))
>> + call assert_equal(0, opts.linebreak)
>> ++ call assert_equal(1, opts.list)
>> ++ if has('folding')
>> ++ call assert_equal(999, opts.foldlevel)
>> ++ endif
>> + if has('signs')
>> + call assert_equal('auto', opts.signcolumn)
>> + endif
>> +***************
>> +*** 97,103 ****
>> +--- 105,116 ----
>> + let opts = gettabwinvar(1, 1, '&')
>> + call assert_equal(v:t_dict, type(opts))
>> + call assert_equal(0, opts.linebreak)
>> ++ call assert_equal(1, opts.list)
>> + if has('signs')
>> + call assert_equal('auto', opts.signcolumn)
>> + endif
>> ++ set list&
>> ++ if has('folding')
>> ++ set foldlevel=0
>> ++ endif
>> + endfunc
>> +*** vim80/src/version.c 2016-09-12 16:30:42.348454179 +0200
>> +--- vim80/src/version.c 2016-09-12 19:24:10.184148642 +0200
>> +***************
>> +*** 766,767 ****
>> +--- 766,769 ----
>> + { /* Add new patch number below this line */
>> ++ /**/
>> ++ 3,
>> + /**/
>> +
>> +--
>> diff --git a/gnu/packages/patches/vim-8.0.0004.patch
>> b/gnu/packages/patches/vim-8.0.0004.patch
>> new file mode 100644
>> index 0000000..5d4071b
>> --- /dev/null
>> +++ b/gnu/packages/patches/vim-8.0.0004.patch
>> @@ -0,0 +1,60 @@
>> +To: address@hidden
>> +Subject: Patch 8.0.0004
>> +Fcc: outbox
>> +From: Bram Moolenaar <address@hidden>
>> +Mime-Version: 1.0
>> +Content-Type: text/plain; charset=UTF-8
>> +Content-Transfer-Encoding: 8bit
>> +------------
>> +
>> +Patch 8.0.0004
>> +Problem: A string argument for function() that is not a function name
>> + results in an error message with NULL. (Christian Brabandt)
>> +Solution: Use the argument for the error message.
>> +Files: src/evalfunc.c, src/testdir/test_expr.vim
>> +
>> +
>> +*** vim80/src/evalfunc.c 2016-09-10 13:39:30.000000000 +0200
>> +--- vim80/src/evalfunc.c 2016-09-13 23:04:02.917786784 +0200
>> +***************
>> +*** 3612,3618 ****
>> +
>> + if (s == NULL || *s == NUL || (use_string && VIM_ISDIGIT(*s))
>> + || (is_funcref && trans_name == NULL))
>> +! EMSG2(_(e_invarg2), s);
>> + /* Don't check an autoload name for existence here. */
>> + else if (trans_name != NULL && (is_funcref
>> + ? find_func(trans_name) == NULL
>> +--- 3612,3618 ----
>> +
>> + if (s == NULL || *s == NUL || (use_string && VIM_ISDIGIT(*s))
>> + || (is_funcref && trans_name == NULL))
>> +! EMSG2(_(e_invarg2), use_string ? get_tv_string(&argvars[0]) : s);
>> + /* Don't check an autoload name for existence here. */
>> + else if (trans_name != NULL && (is_funcref
>> + ? find_func(trans_name) == NULL
>> +*** vim80/src/testdir/test_expr.vim 2016-09-04 21:41:26.000000000 +0200
>> +--- vim80/src/testdir/test_expr.vim 2016-09-13 23:03:20.426385157 +0200
>> +***************
>> +*** 439,444 ****
>> +--- 439,447 ----
>> + let s:fref = function(s:f)
>> + call assert_equal(v:t_string, s:fref('x'))
>> + call assert_fails("call function('s:f')", 'E700:')
>> ++
>> ++ call assert_fails("call function('foo()')", 'E475:')
>> ++ call assert_fails("call function('foo()')", 'foo()')
>> + endfunc
>> +
>> + func Test_funcref()
>> +*** vim80/src/version.c 2016-09-12 19:51:07.689659657 +0200
>> +--- vim80/src/version.c 2016-09-14 22:06:19.364036465 +0200
>> +***************
>> +*** 766,767 ****
>> +--- 766,769 ----
>> + { /* Add new patch number below this line */
>> ++ /**/
>> ++ 4,
>> + /**/
>> +
>> +--
>> diff --git a/gnu/packages/patches/vim-8.0.0005.patch
>> b/gnu/packages/patches/vim-8.0.0005.patch
>> new file mode 100644
>> index 0000000..ee2b831
>> --- /dev/null
>> +++ b/gnu/packages/patches/vim-8.0.0005.patch
>> @@ -0,0 +1,45 @@
>> +To: address@hidden
>> +Subject: Patch 8.0.0005
>> +Fcc: outbox
>> +From: Bram Moolenaar <address@hidden>
>> +Mime-Version: 1.0
>> +Content-Type: text/plain; charset=UTF-8
>> +Content-Transfer-Encoding: 8bit
>> +------------
>> +
>> +Patch 8.0.0005
>> +Problem: Netbeans test fails with Python 3. (Jonathonf)
>> +Solution: Encode the string before sending it. (closes #1070)
>> +Files: src/testdir/test_netbeans.py
>> +
>> +
>> +*** vim80/src/testdir/test_netbeans.py 2016-09-09 15:27:58.000000000
>> +0200
>> +--- vim80/src/testdir/test_netbeans.py 2016-09-14 22:22:03.574860055
>> +0200
>> +***************
>> +*** 52,58 ****
>> + return
>> +
>> + if len(response) > 0:
>> +! self.request.sendall(response)
>> + # Write the respoinse into the file, so that the test can
>> knows
>> + # the command was sent.
>> + with open("Xnetbeans", "a") as myfile:
>> +--- 52,58 ----
>> + return
>> +
>> + if len(response) > 0:
>> +! self.request.sendall(response.encode('utf-8'))
>> + # Write the respoinse into the file, so that the test can
>> knows
>> + # the command was sent.
>> + with open("Xnetbeans", "a") as myfile:
>> +*** vim80/src/version.c 2016-09-14 22:16:09.863803610 +0200
>> +--- vim80/src/version.c 2016-09-14 22:22:39.922351477 +0200
>> +***************
>> +*** 766,767 ****
>> +--- 766,769 ----
>> + { /* Add new patch number below this line */
>> ++ /**/
>> ++ 5,
>> + /**/
>> +
>> +--
>> diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm
>> index b1ee527..1b1fe60 100644
>> --- a/gnu/packages/vim.scm
>> +++ b/gnu/packages/vim.scm
>> @@ -1,6 +1,7 @@
>> ;;; GNU Guix --- Functional package management for GNU
>> ;;; Copyright © 2013 Cyril Roelandt <address@hidden>
>> ;;; Copyright © 2016 Efraim Flashner <address@hidden>
>> +;;; Copyright © 2016 ng0 <address@hidden>
>> ;;;
>> ;;; This file is part of GNU Guix.
>> ;;;
>> @@ -26,6 +27,21 @@
>> #:use-module (gnu packages gawk)
>> #:use-module (gnu packages ncurses)
>> #:use-module (gnu packages perl)
>> + #:use-module (gnu packages ruby)
>> + #:use-module (gnu packages acl)
>> + #:use-module (gnu packages attr)
>> + #:use-module (gnu packages fontutils)
>> + #:use-module (gnu packages gettext)
>> + #:use-module (gnu packages glib)
>> + #:use-module (gnu packages gtk)
>> + #:use-module (gnu packages image)
>> + #:use-module (gnu packages linux)
>> + #:use-module (gnu packages lua)
>> + #:use-module (gnu packages pkg-config)
>> + #:use-module (gnu packages python)
>> + #:use-module (gnu packages tcl)
>> + #:use-module (gnu packages xdisorg)
>> + #:use-module (gnu packages xorg)
>> #:use-module (gnu packages admin) ; For GNU hostname
>> #:use-module (gnu packages shells))
>>
>> @@ -79,3 +95,68 @@ that many consider it an entire IDE. It's not just for
>> programmers, though.
>> Vim is perfect for all kinds of text editing, from composing email to
>> editing
>> configuration files.")
>> (license license:vim)))
>> +
>> +(define-public vim-full
>> + (package
>> + (inherit vim)
>> + (name "vim-full")
>> + (version (package-version vim))
>> + (source
>> + (origin
>> + (method url-fetch)
>> + (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-"
>> + version ".tar.bz2"))
>> + (sha256
>> + (base32
>> + "1s34rf8089klsbdx5l0iw7vjymir0kzfrx8wb30s31wygnq29axc"))
>> + ;; Patches need to be applied sequentially. 8.0 is the release of
>> + ;; vim version 8.0.0002 so we start at 8.0.0003
>> + (patches (search-patches "vim-8.0.0003.patch"
>> + "vim-8.0.0004.patch"
>> + "vim-8.0.0005.patch"))))
>> + (arguments
>> + `(#:configure-flags
>> + (list (string-append "--with-lua-prefix="
>> + (assoc-ref %build-inputs "lua"))
>> + "--with-features=huge"
>> + "--enable-python3interp=yes"
>> + "--enable-perlinterp=yes"
>> + "--enable-rubyinterp=yes"
>> + "--enable-tclinterp=yes"
>> + "--enable-luainterp=yes"
>> + "--enable-cscope"
>> + "--enable-sniff"
>> + "--enable-multibyte"
>> + "--enable-xim"
>> + "--disable-selinux"
>> + "--enable-gui")
>> + ,@(package-arguments vim)))
>> + (native-inputs
>> + `(("pkg-config" ,pkg-config)))
>> + (inputs
>> + `(("acl" ,acl)
>> + ("atk" ,atk)
>> + ("attr" ,attr)
>> + ("cairo" ,cairo)
>> + ("fontconfig" ,fontconfig)
>> + ("freetype" ,freetype)
>> + ("gdk-pixbuf" ,gdk-pixbuf)
>> + ("gettext" ,gnu-gettext)
>> + ("glib" ,glib)
>> + ("gpm" ,gpm)
>> + ("gtk" ,gtk+-2)
>> + ("harfbuzz" ,harfbuzz)
>> + ("libice" ,libice)
>> + ("libpng" ,libpng)
>> + ("libsm" ,libsm)
>> + ("libx11" ,libx11)
>> + ("libxdmcp" ,libxdmcp)
>> + ("libxt" ,libxt)
>> + ("libxpm" ,libxpm)
>> + ("lua" ,lua)
>> + ("pango" ,pango)
>> + ("pixman" ,pixman)
>> + ("python" ,python)
>> + ("ruby" ,ruby)
>> + ("tcl" ,tcl)
>> + ,@(package-inputs vim)))))
>
> "guix lint" complains about the patches not starting with the package
> name ("vim-full" in this case), but otherwise everything looks good.
Okay, I will rename them.
- [PATCH] Add vim-full (this time with the patches included), ng0, 2016/10/15
- [PATCH] gnu: Add vim-full., ng0, 2016/10/15
- vim-full v2, ng0, 2016/10/17
- [PATCH] gnu: Add vim-full., ng0, 2016/10/17
- Re: [PATCH] gnu: Add vim-full., Marius Bakke, 2016/10/17
- Re: [PATCH] gnu: Add vim-full., ng0, 2016/10/17
- Re: [PATCH] gnu: Add vim-full., Marius Bakke, 2016/10/17
- Re: [PATCH] gnu: Add vim-full., ng0, 2016/10/17
- Re: [PATCH] gnu: Add vim-full., Marius Bakke, 2016/10/18
- Re: [PATCH] gnu: Add vim-full., Kei Kebreau, 2016/10/17
- Re: [PATCH] gnu: Add vim-full.,
ng0 <=