guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Add nvi


From: Marek Benc
Subject: Re: [PATCH] Add nvi
Date: Tue, 02 Sep 2014 11:58:59 +0200
User-agent: Mozilla/5.0 (X11; Linux i686; rv:24.0) Gecko/20100101 Icedove/24.7.0



On 09/02/2014 10:19 AM, Ludovic Courtès wrote:
Hi!
Hello,
Could you send an updated patch in the format produced by ‘git format-patch’, and with a ChangeLog-style commit log? See “Submitting Patches” in the ‘HACKING’ file for details.
Will do.
+        (uri
+          (string-append "http://harrier.slackbuilds.org/misc/nvi-"; version
+                         ".tar.bz2"))
Shouldn’t it be
https://sites.google.com/a/bostic.com/keithbostic/files/... ?  (This is
the URL given on the home page.)
Actually, no. The actual home page, according to Debain, is http://www.kotnet.org/~skimo/nvi/ ; However, that site is dead. I've looked at what other distributions report and they say https://sites.google.com/a/bostic.com/keithbostic/vi is currently the home of nvi. Unfortunately, they don't provide the latest version of the editor (there's even a bug in the build system of that version), so I had to look somewhere else to get the newest one, which I found at Slackbuilds and some other places, like the Debian source repository.

I think I'll remove the website from the definition, as it'll cause confusion (It confused even me).
+    (license bsd-3)))
This is actually bsd-4 (see its ‘LICENSE’ file: it has the four clauses,
as shown at <http://directory.fsf.org/wiki/License:BSD_4Clause>.)
Really? I see there only 3 clauses, here's a listing of the LICENSE file:

/*-
* $Id: LICENSE,v 8.17 2000/08/18 14:58:41 bostic Exp $ (Sleepycat) $Date: 2000/
08/18 14:58:41 $
 */

The following are the copyrights and redistribution conditions that apply
to this copy of the Vi software.

/*
 * Copyright (c) 1991, 1992, 1993, 1994
 *      The Regents of the University of California.  All rights reserved.
* Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000
 *      Keith Bostic.  All rights reserved.
 *  Copyright (c) 1999, 2000
 *      Sven Verdoolaege.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 * 3. Neither the name of the University nor the names of its contributors
 *    may be used to endorse or promote products derived from this software
 *    without specific prior written permission.
 *
 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 * SUCH DAMAGE.
 */



Okay, now that that's out of the way, here's the updated patch:

2014-09-02  Marek Benc  <address@hidden>
* gnu/packages/nvi.scm: Add the nvi editor.
* gnu/packages/patches/nvi-assume-preserve-path.patch: Assume nvi can store backups in /var/tmp.
---
gnu/packages/nvi.scm | 68 ++++++++++++++++++++
 .../patches/nvi-assume-preserve-path.patch         |   30 +++++++++
 2 files changed, 98 insertions(+)
 create mode 100644 gnu/packages/nvi.scm
 create mode 100644 gnu/packages/patches/nvi-assume-preserve-path.patch

diff --git a/gnu/packages/nvi.scm b/gnu/packages/nvi.scm
new file mode 100644
index 0000000..7553006
--- /dev/null
+++ b/gnu/packages/nvi.scm
@@ -0,0 +1,68 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Marek Benc <address@hidden>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages nvi)
+  #:use-module (gnu packages)
+  #:use-module (gnu packages bdb)
+  #:use-module (gnu packages ncurses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (guix licenses))
+
+(define-public nvi
+  (package
+    (name "nvi")
+    (version "1.81.6")
+    (source
+      (origin
+        (method url-fetch)
+        (uri
+          (string-append "http://harrier.slackbuilds.org/misc/nvi-"; version
+                         ".tar.bz2"))
+        (sha256
+          (base32 "0nbbs1inyrqds0ywn3ln5slv54v5zraq7lszkg8nsavv4kivhh9l"))
+        (patches (list (search-patch "nvi-assume-preserve-path.patch")))
+        (snippet
+          ;; Create a wrapper for the configure script, make it executable.
+          '(let ((conf-wrap (open-output-file "configure")))
+             (display "#!/bin/sh" conf-wrap)
+             (newline conf-wrap)
+             (display
+ "../nvi-1.81.6/dist/configure --srcdir=../nvi-1.81.6/dist $@"
+               conf-wrap)
+             (newline conf-wrap)
+             (close-output-port conf-wrap)
+             (chmod "configure" #o0755)))))
+
+    (build-system gnu-build-system)
+    (arguments
+      `(#:out-of-source? #t))
+    (inputs
+      `(("bdb" ,bdb)
+        ("ncurses" ,ncurses)))
+    (synopsis "The Berkeley Vi Editor")
+    (description
+      "Vi is the original screen based text editor for Unix systems.  It is
+considered the standard text editor, and is available on almost all Unix
+systems. Nvi is intended as a \"bug-for-bug compatible\" clone of the original +BSD vi editor. As such, it doesn't have a lot of snazzy features as do some +of the other vi clones such as elvis and vim. However, if all you want is vi,
+this is the one to get.")
+    (home-page "")
+    (license bsd-3)))
diff --git a/gnu/packages/patches/nvi-assume-preserve-path.patch b/gnu/packages/patches/nvi-assume-preserve-path.patch
new file mode 100644
index 0000000..3a406ec
--- /dev/null
+++ b/gnu/packages/patches/nvi-assume-preserve-path.patch
@@ -0,0 +1,30 @@
+Make configure assume nvi can store backups in /var/tmp
+
+--- a/dist/configure    2014-09-01 14:46:01.075778095 +0200
++++ b/dist/configure    2014-09-01 14:52:08.411790122 +0200
+@@ -21319,23 +21319,8 @@
+ if test "${vi_cv_path_preserve+set}" = set; then
+   echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-      dirlist="/var/preserve /var/tmp /usr/tmp"
+-    vi_cv_path_preserve=no
+-    for i in $dirlist; do
+-        if test -d $i/vi.recover; then
+-            vi_cv_path_preserve=$i/vi.recover
+-            break;
+-        fi
+-    done
+-    if test "$vi_cv_path_preserve" = no; then
+-        for i in $dirlist; do
+-            if test -d $i -a -w $i; then
+-                vi_cv_path_preserve=$i/vi.recover
+-                break;
+-            fi
+-        done
+-
+-    fi
++#    Assume /var/tmp
++    vi_cv_path_preserve=/var/tmp/vi.recover
+ fi
+
+ if test "$vi_cv_path_preserve" = no; then
--



reply via email to

[Prev in Thread] Current Thread [Next in Thread]