diff options
author | Marek Benc <merkur32@gmail.com> | 2014-09-02 15:18:20 +0200 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2014-09-02 21:32:30 +0200 |
commit | bf2a56f8ecd889817f9e3e0040ad1b48293547ba (patch) | |
tree | f5b33a17ac42b1d739be4ce5f9dc483f2a07a7a6 /gnu | |
parent | 9a914764313657b82225cc36feb05ac50fe26635 (diff) | |
download | guix-bf2a56f8ecd889817f9e3e0040ad1b48293547ba.tar.gz |
gnu: Add nvi.
* gnu/packages/nvi.scm: New file. * gnu/packages/patches/nvi-assume-preserve-path.patch: New file. * gnu-system.am: Add them. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Diffstat (limited to 'gnu')
-rw-r--r-- | gnu/packages/nvi.scm | 68 | ||||
-rw-r--r-- | gnu/packages/patches/nvi-assume-preserve-path.patch | 30 |
2 files changed, 98 insertions, 0 deletions
diff --git a/gnu/packages/nvi.scm b/gnu/packages/nvi.scm new file mode 100644 index 0000000000..3037e5bafc --- /dev/null +++ b/gnu/packages/nvi.scm @@ -0,0 +1,68 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2014 Marek Benc <merkur32@gmail.com> +;;; +;;; 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 ;; sites.google.coma/bostic.com/keithbostic/vi is stale. + (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 "https://sites.google.com/a/bostic.com/keithbostic/vi") + (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 0000000000..18a8f68cca --- /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 |