diff options
Diffstat (limited to 'gnu')
| -rw-r--r-- | gnu/packages/nvi.scm | 101 | ||||
| -rw-r--r-- | gnu/packages/text-editors.scm | 87 | ||||
| -rw-r--r-- | gnu/system.scm | 1 |
3 files changed, 91 insertions, 98 deletions
diff --git a/gnu/packages/nvi.scm b/gnu/packages/nvi.scm index 114a7490731..613df6992bb 100644 --- a/gnu/packages/nvi.scm +++ b/gnu/packages/nvi.scm | |||
| @@ -1,8 +1,4 @@ | |||
| 1 | ;;; GNU Guix --- Functional package management for GNU | 1 | ;;; GNU Guix --- Functional package management for GNU |
| 2 | ;;; Copyright © 2014 Marek Benc <merkur32@gmail.com> | ||
| 3 | ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> | ||
| 4 | ;;; Copyright © 2024 Herman Rimm <herman@rimm.ee> | ||
| 5 | ;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org> | ||
| 6 | ;;; | 2 | ;;; |
| 7 | ;;; This file is part of GNU Guix. | 3 | ;;; This file is part of GNU Guix. |
| 8 | ;;; | 4 | ;;; |
| @@ -20,97 +16,8 @@ | |||
| 20 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. | 16 | ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. |
| 21 | 17 | ||
| 22 | (define-module (gnu packages nvi) | 18 | (define-module (gnu packages nvi) |
| 23 | #:use-module (gnu packages) | 19 | #:use-module (gnu packages text-editors) |
| 24 | #:use-module (gnu packages autotools) | 20 | #:use-module (guix deprecation)) |
| 25 | #:use-module (gnu packages dbm) | ||
| 26 | #:use-module (gnu packages ncurses) | ||
| 27 | #:use-module (guix packages) | ||
| 28 | #:use-module (guix download) | ||
| 29 | #:use-module (guix build-system gnu) | ||
| 30 | #:use-module (guix gexp) | ||
| 31 | #:use-module ((guix licenses) #:prefix license:) | ||
| 32 | #:use-module (guix utils)) | ||
| 33 | 21 | ||
| 34 | (define-public nvi | 22 | (define-deprecated/public-alias nvi |
| 35 | (package | 23 | (@ (gnu packages text-editors) nvi)) |
| 36 | (name "nvi") | ||
| 37 | (version "1.81.6") | ||
| 38 | (source | ||
| 39 | (origin | ||
| 40 | (method url-fetch) | ||
| 41 | ;; The home-page does not provide the latest version. | ||
| 42 | (uri (string-append "http://harrier.slackbuilds.org/misc/nvi-" | ||
| 43 | version ".tar.bz2")) | ||
| 44 | (sha256 | ||
| 45 | (base32 "0nbbs1inyrqds0ywn3ln5slv54v5zraq7lszkg8nsavv4kivhh9l")) | ||
| 46 | (patches (search-patches "nvi-assume-preserve-path.patch" | ||
| 47 | "nvi-dbpagesize-binpower.patch" | ||
| 48 | "nvi-add-function-prototypes.patch" | ||
| 49 | "nvi-db4.patch")) | ||
| 50 | (modules '((guix build utils))) | ||
| 51 | (snippet | ||
| 52 | ;; Create a wrapper for the configure script, make it executable. | ||
| 53 | #~(let ((conf-wrap (open-output-file "configure"))) | ||
| 54 | (display "#!/bin/sh" conf-wrap) | ||
| 55 | (newline conf-wrap) | ||
| 56 | (display | ||
| 57 | "../nvi-1.81.6/dist/configure --srcdir=../nvi-1.81.6/dist $@" | ||
| 58 | conf-wrap) | ||
| 59 | (newline conf-wrap) | ||
| 60 | (close-output-port conf-wrap) | ||
| 61 | (chmod "configure" #o0755) | ||
| 62 | |||
| 63 | ;; Glibc 2.30 removed the deprecated <sys/stropts.h>, so fall back | ||
| 64 | ;; to the internal PTY allocation logic. | ||
| 65 | (substitute* "ex/ex_script.c" | ||
| 66 | (("#ifdef HAVE_SYS5_PTY") | ||
| 67 | "#if defined(HAVE_SYS5_PTY) && !defined(__GLIBC__)")))))) | ||
| 68 | (build-system gnu-build-system) | ||
| 69 | (arguments | ||
| 70 | (list | ||
| 71 | #:out-of-source? #t | ||
| 72 | #:configure-flags | ||
| 73 | #~'("--enable-widechar" | ||
| 74 | #$@(if (%current-target-system) | ||
| 75 | '("vi_cv_sprintf_count=yes") | ||
| 76 | '())) | ||
| 77 | #:make-flags | ||
| 78 | #~(list | ||
| 79 | ;; Add CFLAGS to relax gcc-14's strictness. | ||
| 80 | ;; nvi's configure chokes on passing CFLAGS and ignores | ||
| 81 | ;; CFLAGS set in the environment. | ||
| 82 | (string-append "CFLAGS=-g -O2" | ||
| 83 | " -Wno-error=incompatible-pointer-types")) | ||
| 84 | #:phases | ||
| 85 | #~(modify-phases %standard-phases | ||
| 86 | (add-before 'configure 'fix-configure | ||
| 87 | (lambda* (#:key inputs native-inputs #:allow-other-keys) | ||
| 88 | ;; Replace outdated config.sub and config.guess: | ||
| 89 | (with-directory-excursion "dist" | ||
| 90 | (for-each | ||
| 91 | (lambda (file) | ||
| 92 | (chmod file #o755) | ||
| 93 | (install-file | ||
| 94 | (format #f "~a/share/automake-~a/~a" | ||
| 95 | (assoc-ref (or native-inputs inputs) | ||
| 96 | "automake") | ||
| 97 | #$(version-major+minor | ||
| 98 | (package-version automake)) | ||
| 99 | file) | ||
| 100 | ".")) | ||
| 101 | '("config.sub" "config.guess")))))))) | ||
| 102 | (inputs (list bdb ncurses)) | ||
| 103 | (native-inputs | ||
| 104 | (list automake)) ;Up to date 'config.guess' and 'config.sub'. | ||
| 105 | (synopsis "The Berkeley Vi Editor") | ||
| 106 | (description | ||
| 107 | "Vi is the original screen based text editor for Unix systems. It | ||
| 108 | is considered the standard text editor, and is available on almost all | ||
| 109 | Unix systems. Nvi is intended as a \"bug-for-bug compatible\" clone of | ||
| 110 | the original BSD vi editor. As such, it doesn't have a lot of snazzy | ||
| 111 | features as do some of the other vi clones such as elvis and vim. | ||
| 112 | However, if all you want is vi, this is the one to get.") | ||
| 113 | (home-page | ||
| 114 | (string-append "https://sites.google.com/a/bostic.com/keithbostic/" | ||
| 115 | "the-berkeley-vi-editor-home-page")) | ||
| 116 | (license license:bsd-3))) | ||
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index d1d44232fa3..c9252839a86 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | ;;; GNU Guix --- Functional package management for GNU | 1 | ;;; GNU Guix --- Functional package management for GNU |
| 2 | ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> | 2 | ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> |
| 3 | ;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org> | 3 | ;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org> |
| 4 | ;;; Copyright © 2014 Marek Benc <merkur32@gmail.com> | ||
| 4 | ;;; Copyright © 2015-2022, 2025 Efraim Flashner <efraim@flashner.co.il> | 5 | ;;; Copyright © 2015-2022, 2025 Efraim Flashner <efraim@flashner.co.il> |
| 5 | ;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org> | 6 | ;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org> |
| 6 | ;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au> | 7 | ;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au> |
| @@ -42,6 +43,7 @@ | |||
| 42 | ;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com> | 43 | ;;; Copyright © 2025 Andrew Wong <wongandj@icloud.com> |
| 43 | ;;; Copyright © 2025 Junker <dk@junkeria.club> | 44 | ;;; Copyright © 2025 Junker <dk@junkeria.club> |
| 44 | ;;; Copyright © 2025 benjamin wil <hey@benjaminwil.info> | 45 | ;;; Copyright © 2025 benjamin wil <hey@benjaminwil.info> |
| 46 | ;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org> | ||
| 45 | ;;; Copyright © 2026 Ignatius Menzies <ignatius.menzies@gmail.com> | 47 | ;;; Copyright © 2026 Ignatius Menzies <ignatius.menzies@gmail.com> |
| 46 | ;;; | 48 | ;;; |
| 47 | ;;; This file is part of GNU Guix. | 49 | ;;; This file is part of GNU Guix. |
| @@ -92,6 +94,7 @@ | |||
| 92 | #:use-module (gnu packages crypto) | 94 | #:use-module (gnu packages crypto) |
| 93 | #:use-module (gnu packages curl) | 95 | #:use-module (gnu packages curl) |
| 94 | #:use-module (gnu packages datastructures) | 96 | #:use-module (gnu packages datastructures) |
| 97 | #:use-module (gnu packages dbm) | ||
| 95 | #:use-module (gnu packages documentation) | 98 | #:use-module (gnu packages documentation) |
| 96 | #:use-module (gnu packages enchant) | 99 | #:use-module (gnu packages enchant) |
| 97 | #:use-module (gnu packages fontutils) | 100 | #:use-module (gnu packages fontutils) |
| @@ -987,6 +990,90 @@ justifying, auto-indentation, bracket matching, interactive search-and-replace | |||
| 987 | (with regular expressions), and the editing of multiple files.") | 990 | (with regular expressions), and the editing of multiple files.") |
| 988 | (license license:gpl3+))) ; some files are under GPLv2+ | 991 | (license license:gpl3+))) ; some files are under GPLv2+ |
| 989 | 992 | ||
| 993 | (define-public nvi | ||
| 994 | (package | ||
| 995 | (name "nvi") | ||
| 996 | (version "1.81.6") | ||
| 997 | (source | ||
| 998 | (origin | ||
| 999 | (method url-fetch) | ||
| 1000 | ;; The home-page does not provide the latest version. | ||
| 1001 | (uri (string-append "http://harrier.slackbuilds.org/misc/nvi-" | ||
| 1002 | version ".tar.bz2")) | ||
| 1003 | (sha256 | ||
| 1004 | (base32 "0nbbs1inyrqds0ywn3ln5slv54v5zraq7lszkg8nsavv4kivhh9l")) | ||
| 1005 | (patches (search-patches "nvi-assume-preserve-path.patch" | ||
| 1006 | "nvi-dbpagesize-binpower.patch" | ||
| 1007 | "nvi-add-function-prototypes.patch" | ||
| 1008 | "nvi-db4.patch")) | ||
| 1009 | (modules '((guix build utils))) | ||
| 1010 | (snippet | ||
| 1011 | ;; Create a wrapper for the configure script, make it executable. | ||
| 1012 | #~(let ((conf-wrap (open-output-file "configure"))) | ||
| 1013 | (display "#!/bin/sh" conf-wrap) | ||
| 1014 | (newline conf-wrap) | ||
| 1015 | (display | ||
| 1016 | "../nvi-1.81.6/dist/configure --srcdir=../nvi-1.81.6/dist $@" | ||
| 1017 | conf-wrap) | ||
| 1018 | (newline conf-wrap) | ||
| 1019 | (close-output-port conf-wrap) | ||
| 1020 | (chmod "configure" #o0755) | ||
| 1021 | |||
| 1022 | ;; Glibc 2.30 removed the deprecated <sys/stropts.h>, so fall back | ||
| 1023 | ;; to the internal PTY allocation logic. | ||
| 1024 | (substitute* "ex/ex_script.c" | ||
| 1025 | (("#ifdef HAVE_SYS5_PTY") | ||
| 1026 | "#if defined(HAVE_SYS5_PTY) && !defined(__GLIBC__)")))))) | ||
| 1027 | (build-system gnu-build-system) | ||
| 1028 | (arguments | ||
| 1029 | (list | ||
| 1030 | #:out-of-source? #t | ||
| 1031 | #:configure-flags | ||
| 1032 | #~'("--enable-widechar" | ||
| 1033 | #$@(if (%current-target-system) | ||
| 1034 | '("vi_cv_sprintf_count=yes") | ||
| 1035 | '())) | ||
| 1036 | #:make-flags | ||
| 1037 | #~(list | ||
| 1038 | ;; Add CFLAGS to relax gcc-14's strictness. | ||
| 1039 | ;; nvi's configure chokes on passing CFLAGS and ignores | ||
| 1040 | ;; CFLAGS set in the environment. | ||
| 1041 | (string-append "CFLAGS=-g -O2" | ||
| 1042 | " -Wno-error=incompatible-pointer-types")) | ||
| 1043 | #:phases | ||
| 1044 | #~(modify-phases %standard-phases | ||
| 1045 | (add-before 'configure 'fix-configure | ||
| 1046 | (lambda* (#:key inputs native-inputs #:allow-other-keys) | ||
| 1047 | ;; Replace outdated config.sub and config.guess: | ||
| 1048 | (with-directory-excursion "dist" | ||
| 1049 | (for-each | ||
| 1050 | (lambda (file) | ||
| 1051 | (chmod file #o755) | ||
| 1052 | (install-file | ||
| 1053 | (format #f "~a/share/automake-~a/~a" | ||
| 1054 | (assoc-ref (or native-inputs inputs) | ||
| 1055 | "automake") | ||
| 1056 | #$(version-major+minor | ||
| 1057 | (package-version automake)) | ||
| 1058 | file) | ||
| 1059 | ".")) | ||
| 1060 | '("config.sub" "config.guess")))))))) | ||
| 1061 | (inputs (list bdb ncurses)) | ||
| 1062 | (native-inputs | ||
| 1063 | (list automake)) ;Up to date 'config.guess' and 'config.sub'. | ||
| 1064 | (synopsis "The Berkeley Vi Editor") | ||
| 1065 | (description | ||
| 1066 | "Vi is the original screen based text editor for Unix systems. It | ||
| 1067 | is considered the standard text editor, and is available on almost all | ||
| 1068 | Unix systems. Nvi is intended as a \"bug-for-bug compatible\" clone of | ||
| 1069 | the original BSD vi editor. As such, it doesn't have a lot of snazzy | ||
| 1070 | features as do some of the other vi clones such as elvis and vim. | ||
| 1071 | However, if all you want is vi, this is the one to get.") | ||
| 1072 | (home-page | ||
| 1073 | (string-append "https://sites.google.com/a/bostic.com/keithbostic/" | ||
| 1074 | "the-berkeley-vi-editor-home-page")) | ||
| 1075 | (license license:bsd-3))) | ||
| 1076 | |||
| 990 | (define-public qemacs | 1077 | (define-public qemacs |
| 991 | (package | 1078 | (package |
| 992 | (name "qemacs") | 1079 | (name "qemacs") |
diff --git a/gnu/system.scm b/gnu/system.scm index d3b0cd30dad..c161961be19 100644 --- a/gnu/system.scm +++ b/gnu/system.scm | |||
| @@ -62,7 +62,6 @@ | |||
| 62 | #:use-module (gnu packages less) | 62 | #:use-module (gnu packages less) |
| 63 | #:use-module (gnu packages linux) | 63 | #:use-module (gnu packages linux) |
| 64 | #:use-module (gnu packages man) | 64 | #:use-module (gnu packages man) |
| 65 | #:use-module (gnu packages nvi) | ||
| 66 | #:use-module (gnu packages package-management) | 65 | #:use-module (gnu packages package-management) |
| 67 | #:use-module (gnu packages pciutils) | 66 | #:use-module (gnu packages pciutils) |
| 68 | #:use-module (gnu packages texinfo) | 67 | #:use-module (gnu packages texinfo) |
