From 3fbbe7d6c9de4cde01f2e6aa2b7df96b067e33d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Miguel=20S=C3=A1nchez=20Garc=C3=ADa?= Date: Wed, 7 Dec 2016 17:53:22 +0100 Subject: [PATCH] gnu: Add vis. * gnu/packages/text-editors.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Co-authored-by: Marius Bakke --- gnu/local.mk | 1 + gnu/packages/text-editors.scm | 75 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 gnu/packages/text-editors.scm diff --git a/gnu/local.mk b/gnu/local.mk index 1f98513ca..e8137a538 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -359,6 +359,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/texinfo.scm \ %D%/packages/tex.scm \ %D%/packages/textutils.scm \ + %D%/packages/text-editors.scm \ %D%/packages/time.scm \ %D%/packages/tls.scm \ %D%/packages/tmux.scm \ diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm new file mode 100644 index 000000000..4b047f3d7 --- /dev/null +++ b/gnu/packages/text-editors.scm @@ -0,0 +1,75 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 José Miguel Sánchez García +;;; +;;; 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 . + +(define-module (gnu packages text-editors) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix utils) + #:use-module (guix build-system gnu) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages ncurses) + #:use-module (gnu packages terminals) + #:use-module (gnu packages lua)) + +(define-public vis + (package + (name "vis") + (version "0.2") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/martanne/" + name "/archive/v" version ".tar.gz")) + (sha256 + (base32 "0bbmkblpndc53pvr8xcfywdn8g351yxfj8c46zp5d744c3bq2nry")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags '("CFLAGS=-pie") + #:tests? #f ; No tests. + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-binary + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lpeg (assoc-ref inputs "lua-lpeg")) + (lua-version ,(version-major+minor (package-version lua))) + (LUA_PATH (string-append lpeg "/share/lua/" + lua-version "/?.lua")) + (LUA_CPATH (string-append lpeg "/lib/lua/" + lua-version "/?.so"))) + (wrap-program (string-append out "/bin/vis") + `("LUA_PATH" ":" prefix (,LUA_PATH)) + `("LUA_CPATH" ":" prefix (,LUA_CPATH))) + #t)))))) + (native-search-paths + (list (search-path-specification + (variable "VIS_PATH") + (files '("share/vis"))))) + (inputs `(("lua", lua) + ("ncurses", ncurses) + ("libtermkey", libtermkey) + ("lua-lpeg", lua-lpeg))) + (synopsis "Vim-like text editor") + (description + "Vis aims to be a modern, legacy free, simple yet efficient vim-like text +editor. It extends vim's modal editing with built-in support for multiple +cursors/selecctions and combines it with sam's structural regular expression +based command language.") + (home-page "https://github.com/martanne/vis") + (license (list license:isc ; Main distribution. + license:public-domain ; map.[ch] + license:expat)))) ; lexers and libutf.[ch] -- 2.11.0