diff --git a/pkgs/applications/editors/zile/default.nix b/pkgs/applications/editors/zile/default.nix index 7d36a2fd7f5f..3d0e98602add 100644 --- a/pkgs/applications/editors/zile/default.nix +++ b/pkgs/applications/editors/zile/default.nix @@ -1,20 +1,39 @@ -{ fetchurl, lib, stdenv, glib, libgee, pkg-config, ncurses, boehmgc, perl, help2man, vala }: +{ lib +, stdenv +, fetchurl +, boehmgc +, glib +, help2man +, libgee +, ncurses +, perl +, pkg-config +, vala +}: stdenv.mkDerivation rec { - name = "zile-2.6.0.90"; + pname = "zile"; + version = "2.6.1"; src = fetchurl { - url = "mirror://gnu/zile/${name}.tar.gz"; - sha256 = "1bhdwnasmqhy0hi3fqmpzr8xkw5zlqjpmf1cj42h4cg3fnamp6r3"; + url = "mirror://gnu/zile/${pname}-${version}.tar.gz"; + hash = "sha256-v7rN33aOORc6J0Z5JP5AmZCj6XvjYyoCl5hl+7mvAnc="; }; - buildInputs = [ glib libgee ncurses boehmgc vala ]; - nativeBuildInputs = [ perl pkg-config ] - # `help2man' wants to run Zile, which won't work when the - # newly-produced binary can't be run at build-time. - ++ lib.optional - (stdenv.hostPlatform == stdenv.buildPlatform) - help2man; + buildInputs = [ + boehmgc + glib + libgee + ncurses + ]; + nativeBuildInputs = [ + perl + pkg-config + vala + ] + # `help2man' wants to run Zile, which won't work when the + # newly-produced binary can't be run at build-time. + ++ lib.optional (stdenv.hostPlatform == stdenv.buildPlatform) help2man; # Tests can't be run because most of them rely on the ability to # fiddle with the terminal. @@ -24,33 +43,38 @@ stdenv.mkDerivation rec { gl_cv_func_fstatat_zero_flag="yes"; meta = with lib; { - description = "Lightweight Emacs clone"; - - longDescription = '' - GNU Zile, which is a lightweight Emacs clone. Zile is short - for Zile Is Lossy Emacs. Zile has been written to be as - similar as possible to Emacs; every Emacs user should feel at - home. - - Zile has all of Emacs's basic editing features: it is 8-bit - clean (though it currently lacks Unicode support), and the - number of editing buffers and windows is only limited by - available memory and screen space respectively. Registers, - minibuffer completion and auto fill are available. Function - and variable names are identical with Emacs's (except those - containing the word "emacs", which instead contain the word - "zile"!). - - However, all of this is packed into a program which typically - compiles to about 130Kb. - ''; - homepage = "https://www.gnu.org/software/zile/"; + description = "Zile Implements Lua Editors"; + longDescription = '' + GNU Zile is a text editor development kit, so that you can (relatively) + quickly develop your own ideal text editor without reinventing the wheel + for many of the common algorithms and data-structures needed to do so. + It comes with an example implementation of a lightweight Emacs clone, + called Zemacs. Every Emacs user should feel at home with Zemacs. Zemacs is + aimed at small footprint systems and quick editing sessions (it starts up + and shuts down instantly). + + More editors implemented over the Zile frameworks are forthcoming as the + data-structures and interfaces improve: Zz an emacs inspired editor using + Lua as an extension language; Zee a minimalist non-modal editor; Zi a + lightweight vi clone; and more... + + Zile is a collection of algorithms and data-structures that currently + support all basic Emacs-like editing features: it is 8-bit clean (though + Unicode support is not ready yet), and the number of editing buffers and + windows is only limited by available memoryand screen space + respectively. Registers, minibuffer completion and auto fill are + available. + + Zemacs implements a subset of Emacs with identical function and variable + names, continuing the spirit of the earlier Zile editor implemented in C. + GNU Zile, which is a lightweight Emacs clone. Zile is short for Zile Is + Lossy Emacs. Zile has been written to be as similar as possible to Emacs; + every Emacs user should feel at home. + ''; license = licenses.gpl3Plus; - - maintainers = with maintainers; [ pSub ]; - + maintainers = with maintainers; [ pSub AndersonTorres ]; platforms = platforms.unix; }; }