nixpkgs mirror (for testing) github.com/NixOS/nixpkgs
nix
at devShellTools-shell 85 lines 2.9 kB view raw
1{ 2 lib, 3 stdenv, 4 fetchurl, 5 boehmgc, 6 glib, 7 help2man, 8 libgee, 9 ncurses, 10 perl, 11 pkg-config, 12 vala, 13}: 14 15stdenv.mkDerivation rec { 16 pname = "zile"; 17 version = "2.6.4"; 18 19 src = fetchurl { 20 url = "mirror://gnu/zile/${pname}-${version}.tar.gz"; 21 hash = "sha256-1dRLhctJBkPQcH4aIYbzoymYwvbquqlIFHm2XK7uV8A="; 22 }; 23 24 buildInputs = [ 25 boehmgc 26 glib 27 libgee 28 ncurses 29 ]; 30 nativeBuildInputs = [ 31 perl 32 pkg-config 33 vala 34 ] 35 # `help2man' wants to run Zile, which won't work when the 36 # newly-produced binary can't be run at build-time. 37 ++ lib.optional (stdenv.hostPlatform == stdenv.buildPlatform) help2man; 38 39 # Tests can't be run because most of them rely on the ability to 40 # fiddle with the terminal. 41 doCheck = false; 42 43 env.NIX_CFLAGS_COMPILE = "-Wno-error=incompatible-pointer-types"; 44 45 # XXX: Work around cross-compilation-unfriendly `gl_FUNC_FSTATAT' macro. 46 gl_cv_func_fstatat_zero_flag = "yes"; 47 48 meta = { 49 homepage = "https://www.gnu.org/software/zile/"; 50 changelog = "https://git.savannah.gnu.org/cgit/zile.git/plain/NEWS?h=v${version}"; 51 description = "Zile Implements Lua Editors"; 52 longDescription = '' 53 GNU Zile is a text editor development kit, so that you can (relatively) 54 quickly develop your own ideal text editor without reinventing the wheel 55 for many of the common algorithms and data-structures needed to do so. 56 57 It comes with an example implementation of a lightweight Emacs clone, 58 called Zemacs. Every Emacs user should feel at home with Zemacs. Zemacs is 59 aimed at small footprint systems and quick editing sessions (it starts up 60 and shuts down instantly). 61 62 More editors implemented over the Zile frameworks are forthcoming as the 63 data-structures and interfaces improve: Zz an emacs inspired editor using 64 Lua as an extension language; Zee a minimalist non-modal editor; Zi a 65 lightweight vi clone; and more... 66 67 Zile is a collection of algorithms and data-structures that currently 68 support all basic Emacs-like editing features: it is 8-bit clean (though 69 Unicode support is not ready yet), and the number of editing buffers and 70 windows is only limited by available memoryand screen space 71 respectively. Registers, minibuffer completion and auto fill are 72 available. 73 74 Zemacs implements a subset of Emacs with identical function and variable 75 names, continuing the spirit of the earlier Zile editor implemented in C. 76 GNU Zile, which is a lightweight Emacs clone. Zile is short for Zile Is 77 Lossy Emacs. Zile has been written to be as similar as possible to Emacs; 78 every Emacs user should feel at home. 79 ''; 80 license = lib.licenses.gpl3Plus; 81 maintainers = with lib.maintainers; [ pSub ]; 82 platforms = lib.platforms.unix; 83 mainProgram = "zile"; 84 }; 85}