nixpkgs/pkgs/development/libraries/notcurses/default.nix
William Casarin 08f1b2632e notcurses: init at 2.1.0
This is a neat ncurses alternative. See the demo here:

https://www.youtube.com/watch?v=cYhZ7myXyyg

Here's something interesting to package after this:

https://github.com/dankamongmen/growlight

Message-Id: <20201218142929.9912-1-jb55@jb55.com>
2020-12-19 03:16:39 +01:00

50 lines
1.3 KiB
Nix

{ stdenv, cmake, pkgconfig, pandoc, libunistring, ncurses, ffmpeg,
fetchFromGitHub, lib,
multimediaSupport ? true
}:
let
version = "2.1.0";
in
stdenv.mkDerivation {
pname = "notcurses";
inherit version;
outputs = [ "out" "dev" ];
nativeBuildInputs = [ cmake pkgconfig pandoc ];
buildInputs = [ libunistring ncurses ]
++ lib.optional multimediaSupport ffmpeg;
cmakeFlags =
[ "-DUSE_QRCODEGEN=OFF" ]
++ lib.optional (!multimediaSupport) "-DUSE_MULTIMEDIA=none";
src = fetchFromGitHub {
owner = "dankamongmen";
repo = "notcurses";
rev = "v${version}";
sha256 = "0jvngg40c1sqf85kqy6ya0vflpxsj7j4g6cw609992rifaghxiny";
};
meta = {
description = "blingful TUIs and character graphics";
longDescription = ''
A library facilitating complex TUIs on modern terminal emulators,
supporting vivid colors, multimedia, and Unicode to the maximum degree
possible. Things can be done with Notcurses that simply can't be done
with NCURSES.
It is not a source-compatible X/Open Curses implementation, nor a
replacement for NCURSES on existing systems.
'';
homepage = "https://github.com/dankamongmen/notcurses";
license = lib.licenses.asl20;
platforms = lib.platforms.all;
maintainers = with lib.maintainers; [ jb55 ];
};
}