{ lib , stdenv , fetchurl , pkg-config , guile , libffi , ncurses }: stdenv.mkDerivation rec { pname = "guile-ncurses"; version = "3.1"; src = fetchurl { url = "mirror://gnu/${pname}/${pname}-${version}.tar.gz"; hash = "sha256-7onozq/Kud0O8/wazJsQ9NIbpLJW0ynYQtYYPmP41zM="; }; nativeBuildInputs = [ pkg-config ]; buildInputs = [ guile libffi ncurses ]; configureFlags = [ "--with-gnu-filesystem-hierarchy" ]; postFixup = let guileVersion = lib.versions.majorMinor guile.version; in '' for f in $out/share/guile/site/ncurses/**.scm; do \ substituteInPlace $f \ --replace "libguile-ncurses" "$out/lib/guile/${guileVersion}/libguile-ncurses"; \ done ''; # XXX: 1 of 65 tests failed. doCheck = false; meta = with lib; { homepage = "https://www.gnu.org/software/guile-ncurses/"; description = "Scheme interface to the NCurses libraries"; longDescription = '' GNU Guile-Ncurses is a library for the Guile Scheme interpreter that provides functions for creating text user interfaces. The text user interface functionality is built on the ncurses libraries: curses, form, panel, and menu. ''; license = licenses.lgpl3Plus; maintainers = with maintainers; [ vyp ]; platforms = guile.meta.platforms; }; }